!C99Shell v. 1.0 pre-release build #13!

Software: Apache/2.0.54 (Unix) mod_perl/1.99_09 Perl/v5.8.0 mod_ssl/2.0.54 OpenSSL/0.9.7l DAV/2 FrontPage/5.0.2.2635 PHP/4.4.0 mod_gzip/2.0.26.1a 

uname -a: Linux snow.he.net 4.4.276-v2-mono-1 #1 SMP Wed Jul 21 11:21:17 PDT 2021 i686 

uid=99(nobody) gid=98(nobody) groups=98(nobody) 

Safe-mode: OFF (not secure)

/usr/src/linux-2.4.18-xfs-1.1/include/linux/   drwxr-xr-x
Free 318.33 GB of 458.09 GB (69.49%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Feedback    Self remove    Logout    


Viewing file:     dmapi_kern.h (14.13 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
/*
 * Copyright (c) 2000 Silicon Graphics, Inc.  All Rights Reserved.
 * 
 * This program is free software; you can redistribute it and/or modify it
 * under the terms of version 2 of the GNU General Public License as
 * published by the Free Software Foundation.
 * 
 * This program is distributed in the hope that it would be useful, but
 * WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 * 
 * Further, this software is distributed without any warranty that it is
 * free of the rightful claim of any third person regarding infringement
 * or the like.  Any license provided herein, whether implied or
 * otherwise, applies only to this software file.  Patent licenses, if
 * any, provided herein do not apply to combinations of this program with
 * other software, or any other product whatsoever.
 * 
 * You should have received a copy of the GNU General Public License along
 * with this program; if not, write the Free Software Foundation, Inc., 59
 * Temple Place - Suite 330, Boston MA 02111-1307, USA.
 * 
 * Contact information: Silicon Graphics, Inc., 1600 Amphitheatre Pkwy,
 * Mountain View, CA  94043, or:
 * 
 * http://www.sgi.com 
 * 
 * For further information regarding this notice, see: 
 * 
 * http://oss.sgi.com/projects/GenInfo/SGIGPLNoticeExplan/
 */

#ifndef __DMAPI_KERN_H__
#define __DMAPI_KERN_H__


struct sys_dmapi_args {
    long arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11;
};
typedef struct sys_dmapi_args sys_dmapi_args_t;


#ifdef __KERNEL__

struct xfs_handle_t;

/* The first group of definitions and prototypes define the filesystem's
   interface into the DMAPI code.
*/


/* Definitions used for the flags field on dm_send_data_event(),
   dm_send_unmount_event(), and dm_send_namesp_event() calls.
*/

#define    DM_FLAGS_NDELAY        0x001    /* return EAGAIN after dm_pending() */
#define    DM_FLAGS_UNWANTED    0x002    /* event not in fsys dm_eventset_t */

/* Possible code levels reported by dm_code_level(). */

#define    DM_CLVL_INIT    0    /* DMAPI prior to X/Open compliance */
#define    DM_CLVL_XOPEN    1    /* X/Open compliant DMAPI */


/* Prototypes used outside of the DMI module/directory. */

int        dm_send_data_event(
            dm_eventtype_t    event,
            struct bhv_desc    *bdp,
            dm_right_t    vp_right,
            off_t        off,
            size_t        len,
            int        flags);

int        dm_send_destroy_event(
            struct bhv_desc    *bdp,
            dm_right_t    vp_right);

int        dm_send_mount_event(
            struct vfs    *vfsp,
            dm_right_t    vfsp_right,
            struct bhv_desc *bdp,
            dm_right_t    vp_right,
            struct bhv_desc *rootbdp,
            dm_right_t    rootvp_right,
            char        *name1,
            char        *name2);

int        dm_send_namesp_event(
            dm_eventtype_t    event,
            struct bhv_desc    *bdp1,
            dm_right_t    vp1_right,
            struct bhv_desc    *bdp2,
            dm_right_t    vp2_right,
            char        *name1,
            char        *name2,
            mode_t        mode,
            int        retcode,
            int        flags);

void        dm_send_unmount_event(
            struct vfs    *vfsp,
            struct vnode    *vp,
            dm_right_t    vfsp_right,
            mode_t        mode,
            int        retcode,
            int        flags);

int        dm_code_level(void);

int        dm_vp_to_handle (
            struct vnode    *vp,
            xfs_handle_t    *handlep);

/* The following prototypes and definitions are used by DMAPI as its
   interface into the filesystem code.  Communication between DMAPI and the
   filesystem are established as follows:
   1. DMAPI uses the VFS_DMAPI_FSYS_VECTOR to ask for the addresses
      of all the functions within the filesystem that it may need to call.
   2. The filesystem returns an array of function name/address pairs which
      DMAPI builds into a function vector.
   The VFS_DMAPI_FSYS_VECTOR call is only made one time for a particular
   filesystem type.  From then on, DMAPI uses its function vector to call the
   filesystem functions directly.  Functions in the array which DMAPI doesn't
   recognize are ignored.  A dummy function which returns ENOSYS is used for
   any function that DMAPI needs but which was not provided by the filesystem.
   If XFS doesn't recognize the VFS_DMAPI_FSYS_VECTOR, DMAPI assumes that it
   doesn't have the X/Open support code; in this case DMAPI uses the XFS-code
   originally bundled within DMAPI.

   The goal of this interface is allow incremental changes to be made to
   both the filesystem and to DMAPI while minimizing inter-patch dependencies,
   and to eventually allow DMAPI to support multiple filesystem types at the
   same time should that become necessary.
*/

typedef enum {
    DM_FSYS_CLEAR_INHERIT        =  0,
    DM_FSYS_CREATE_BY_HANDLE    =  1,
    DM_FSYS_DOWNGRADE_RIGHT        =  2,
    DM_FSYS_GET_ALLOCINFO_RVP    =  3,
    DM_FSYS_GET_BULKALL_RVP        =  4,
    DM_FSYS_GET_BULKATTR_RVP    =  5,
    DM_FSYS_GET_CONFIG        =  6,
    DM_FSYS_GET_CONFIG_EVENTS    =  7,
    DM_FSYS_GET_DESTROY_DMATTR    =  8,
    DM_FSYS_GET_DIOINFO        =  9,
    DM_FSYS_GET_DIRATTRS_RVP    = 10,
    DM_FSYS_GET_DMATTR        = 11,
    DM_FSYS_GET_EVENTLIST        = 12,
    DM_FSYS_GET_FILEATTR        = 13,
    DM_FSYS_GET_REGION        = 14,
    DM_FSYS_GETALL_DMATTR        = 15,
    DM_FSYS_GETALL_INHERIT        = 16,
    DM_FSYS_INIT_ATTRLOC        = 17,
    DM_FSYS_MKDIR_BY_HANDLE        = 18,
    DM_FSYS_PROBE_HOLE        = 19,
    DM_FSYS_PUNCH_HOLE        = 20,
    DM_FSYS_READ_INVIS_RVP        = 21,
    DM_FSYS_RELEASE_RIGHT        = 22,
    DM_FSYS_REMOVE_DMATTR        = 23,
    DM_FSYS_REQUEST_RIGHT        = 24,
    DM_FSYS_SET_DMATTR        = 25,
    DM_FSYS_SET_EVENTLIST        = 26,
    DM_FSYS_SET_FILEATTR        = 27,
    DM_FSYS_SET_INHERIT        = 28,
    DM_FSYS_SET_REGION        = 29,
    DM_FSYS_SYMLINK_BY_HANDLE    = 30,
    DM_FSYS_SYNC_BY_HANDLE        = 31,
    DM_FSYS_UPGRADE_RIGHT        = 32,
    DM_FSYS_WRITE_INVIS_RVP        = 33,
    DM_FSYS_MAX            = 34
} dm_fsys_switch_t;


#define    DM_FSYS_OBJ    0x1        /* object refers to a fsys handle */


/*
 *  Prototypes for filesystem-specific functions.
 */

typedef    int    (*dm_fsys_clear_inherit_t)(
            bhv_desc_t    *bdp,
            dm_right_t    right,
            dm_attrname_t    *attrnamep);

typedef    int    (*dm_fsys_create_by_handle_t)(
            bhv_desc_t    *bdp,
            dm_right_t    right,
            void        *hanp,
            size_t        hlen,
            char        *cname);

typedef    int    (*dm_fsys_downgrade_right_t)(
            bhv_desc_t    *bdp,
            dm_right_t    right,
            u_int        type);        /* DM_FSYS_OBJ or zero */

typedef    int    (*dm_fsys_get_allocinfo_rvp_t)(
            bhv_desc_t    *bdp,
            dm_right_t    right,
            dm_off_t    *offp,
            u_int        nelem,
            dm_extent_t    *extentp,
            u_int        *nelemp,
            int        *rvalp);

typedef    int     (*dm_fsys_get_bulkall_rvp_t)(
            bhv_desc_t    *bdp,        /* root vnode */
            dm_right_t    right,
            u_int        mask,
            dm_attrname_t    *attrnamep,
            dm_attrloc_t    *locp,
            size_t        buflen,
            void        *bufp,
            size_t        *rlenp,
            int        *rvalp);

typedef    int     (*dm_fsys_get_bulkattr_rvp_t)(
            bhv_desc_t    *bdp,        /* root vnode */
            dm_right_t    right,
            u_int        mask,
            dm_attrloc_t    *locp,
            size_t        buflen,
            void        *bufp,
            size_t        *rlenp,
            int        *rvalp);

typedef    int    (*dm_fsys_get_config_t)(
            bhv_desc_t    *bdp,
            dm_right_t    right,
            dm_config_t    flagname,
            dm_size_t    *retvalp);

typedef    int    (*dm_fsys_get_config_events_t)(
            bhv_desc_t    *bdp,
            dm_right_t    right,
            u_int        nelem,
            dm_eventset_t    *eventsetp,
            u_int        *nelemp);

typedef    int    (*dm_fsys_get_destroy_dmattr_t)(
            bhv_desc_t    *bdp,
            dm_right_t    right,
            dm_attrname_t    *attrnamep,
            char        **valuepp,
            int        *vlenp);

typedef    int    (*dm_fsys_get_dioinfo_t)(
            bhv_desc_t    *bdp,
            dm_right_t    right,
            dm_dioinfo_t    *diop);

typedef    int    (*dm_fsys_get_dirattrs_rvp_t)(
            bhv_desc_t    *bdp,
            dm_right_t    right,
            u_int        mask,
            dm_attrloc_t    *locp,
            size_t        buflen,
            void        *bufp,
            size_t        *rlenp,
            int        *rvalp);

typedef    int    (*dm_fsys_get_dmattr_t)(
            bhv_desc_t    *bdp,
            dm_right_t    right,
            dm_attrname_t    *attrnamep,
            size_t        buflen,
            void        *bufp,
            size_t        *rlenp);

typedef    int    (*dm_fsys_get_eventlist_t)(
            bhv_desc_t    *bdp,
            dm_right_t    right,
            u_int        type,
            u_int        nelem,
            dm_eventset_t    *eventsetp,    /* in kernel space! */
            u_int        *nelemp);        /* in kernel space! */

typedef    int    (*dm_fsys_get_fileattr_t)(
            bhv_desc_t    *bdp,
            dm_right_t    right,
            u_int        mask,
            dm_stat_t    *statp);

typedef    int    (*dm_fsys_get_region_t)(
            bhv_desc_t    *bdp,
            dm_right_t    right,
            u_int        nelem,
            dm_region_t    *regbufp,
            u_int        *nelemp);

typedef    int    (*dm_fsys_getall_dmattr_t)(
            bhv_desc_t    *bdp,
            dm_right_t    right,
            size_t        buflen,
            void        *bufp,
            size_t        *rlenp);

typedef    int    (*dm_fsys_getall_inherit_t)(
            bhv_desc_t    *bdp,
            dm_right_t    right,
            u_int        nelem,
            dm_inherit_t    *inheritbufp,
            u_int        *nelemp);

typedef    int    (*dm_fsys_init_attrloc_t)(
            bhv_desc_t    *bdp,    /* sometimes root vnode */
            dm_right_t    right,
            dm_attrloc_t    *locp);

typedef    int    (*dm_fsys_mkdir_by_handle_t)(
            bhv_desc_t    *bdp,
            dm_right_t    right,
            void        *hanp,
            size_t        hlen,
            char        *cname);

typedef    int    (*dm_fsys_probe_hole_t)(
            bhv_desc_t    *bdp,
            dm_right_t    right,
            dm_off_t    off,
            dm_size_t    len,
            dm_off_t    *roffp,
            dm_size_t    *rlenp);

typedef    int    (*dm_fsys_punch_hole_t)(
            bhv_desc_t    *bdp,
            dm_right_t    right,
            dm_off_t    off,
            dm_size_t    len);

typedef    int    (*dm_fsys_read_invis_rvp_t)(
            bhv_desc_t    *bdp,
            dm_right_t    right,
            dm_off_t    off,
            dm_size_t    len,
            void        *bufp,
            int        *rvp);

typedef    int    (*dm_fsys_release_right_t)(
            bhv_desc_t    *bdp,
            dm_right_t    right,
            u_int        type);

typedef    int    (*dm_fsys_remove_dmattr_t)(
            bhv_desc_t    *bdp,
            dm_right_t    right,
            int        setdtime,
            dm_attrname_t    *attrnamep);

typedef    int    (*dm_fsys_request_right_t)(
            bhv_desc_t    *bdp,
            dm_right_t    right,
            u_int        type,    /* DM_FSYS_OBJ or zero */
            u_int        flags,
            dm_right_t    newright);

typedef    int    (*dm_fsys_set_dmattr_t)(
            bhv_desc_t    *bdp,
            dm_right_t    right,
            dm_attrname_t    *attrnamep,
            int        setdtime,
            size_t        buflen,
            void        *bufp);

typedef    int    (*dm_fsys_set_eventlist_t)(
            bhv_desc_t    *bdp,
            dm_right_t    right,
            u_int        type,
            dm_eventset_t    *eventsetp,    /* in kernel space! */
            u_int        maxevent);

typedef    int    (*dm_fsys_set_fileattr_t)(
            bhv_desc_t    *bdp,
            dm_right_t    right,
            u_int        mask,
            dm_fileattr_t    *attrp);

typedef    int    (*dm_fsys_set_inherit_t)(
            bhv_desc_t    *bdp,
            dm_right_t    right,
            dm_attrname_t    *attrnamep,
            mode_t        mode);

typedef    int    (*dm_fsys_set_region_t)(
            bhv_desc_t    *bdp,
            dm_right_t    right,
            u_int        nelem,
            dm_region_t    *regbufp,
            dm_boolean_t    *exactflagp);

typedef    int    (*dm_fsys_symlink_by_handle_t)(
            bhv_desc_t    *bdp,
            dm_right_t    right,
            void        *hanp,
            size_t        hlen,
            char        *cname,
            char        *path);

typedef    int    (*dm_fsys_sync_by_handle_t)(
            bhv_desc_t    *bdp,
            dm_right_t    right);

typedef    int    (*dm_fsys_upgrade_right_t)(
            bhv_desc_t    *bdp,
            dm_right_t    right,
            u_int        type);        /* DM_FSYS_OBJ or zero */

typedef    int    (*dm_fsys_write_invis_rvp_t)(
            bhv_desc_t    *bdp,
            dm_right_t    right,
            int        flags,
            dm_off_t    off,
            dm_size_t    len,
            void        *bufp,
            int        *rvp);

/* Structure definitions used by the VFS_DMAPI_FSYS_VECTOR call. */

typedef    struct {
    dm_fsys_switch_t  func_no;    /* function number */
    union {
        dm_fsys_clear_inherit_t clear_inherit;
        dm_fsys_create_by_handle_t create_by_handle;
        dm_fsys_downgrade_right_t downgrade_right;
        dm_fsys_get_allocinfo_rvp_t get_allocinfo_rvp;
        dm_fsys_get_bulkall_rvp_t get_bulkall_rvp;
        dm_fsys_get_bulkattr_rvp_t get_bulkattr_rvp;
        dm_fsys_get_config_t get_config;
        dm_fsys_get_config_events_t get_config_events;
        dm_fsys_get_destroy_dmattr_t get_destroy_dmattr;
        dm_fsys_get_dioinfo_t get_dioinfo;
        dm_fsys_get_dirattrs_rvp_t get_dirattrs_rvp;
        dm_fsys_get_dmattr_t get_dmattr;
        dm_fsys_get_eventlist_t get_eventlist;
        dm_fsys_get_fileattr_t get_fileattr;
        dm_fsys_get_region_t get_region;
        dm_fsys_getall_dmattr_t getall_dmattr;
        dm_fsys_getall_inherit_t getall_inherit;
        dm_fsys_init_attrloc_t init_attrloc;
        dm_fsys_mkdir_by_handle_t mkdir_by_handle;
        dm_fsys_probe_hole_t probe_hole;
        dm_fsys_punch_hole_t punch_hole;
        dm_fsys_read_invis_rvp_t read_invis_rvp;
        dm_fsys_release_right_t release_right;
        dm_fsys_remove_dmattr_t remove_dmattr;
        dm_fsys_request_right_t request_right;
        dm_fsys_set_dmattr_t set_dmattr;
        dm_fsys_set_eventlist_t set_eventlist;
        dm_fsys_set_fileattr_t set_fileattr;
        dm_fsys_set_inherit_t set_inherit;
        dm_fsys_set_region_t set_region;
        dm_fsys_symlink_by_handle_t symlink_by_handle;
        dm_fsys_sync_by_handle_t sync_by_handle;
        dm_fsys_upgrade_right_t upgrade_right;
        dm_fsys_write_invis_rvp_t write_invis_rvp;
    } u_fc;
} fsys_function_vector_t;

struct dm_fcntl_vector {
    int    code_level;
    int    count;        /* Number of functions in the vector */
    fsys_function_vector_t *vecp;
};
typedef struct dm_fcntl_vector dm_fcntl_vector_t;

struct dm_fcntl_mapevent {
    size_t    length;            /* length of transfer */
    dm_eventtype_t    max_event;    /* Maximum (WRITE or READ)  event */
    int    error;            /* returned error code */
};
typedef struct dm_fcntl_mapevent dm_fcntl_mapevent_t;

#endif    /* __KERNEL__ */


/* The following definitions are needed both by the kernel and by the
   library routines.
*/

#define    DM_MAX_HANDLE_SIZE    56    /* maximum size for a file handle */


/*
 *  Opcodes for dmapi ioctl.
 */

#define    DM_CLEAR_INHERIT    1
#define    DM_CREATE_BY_HANDLE    2
#define    DM_CREATE_SESSION    3
#define    DM_CREATE_USEREVENT    4
#define    DM_DESTROY_SESSION    5
#define    DM_DOWNGRADE_RIGHT    6
#define    DM_FD_TO_HANDLE        7
#define    DM_FIND_EVENTMSG    8
#define    DM_GET_ALLOCINFO    9
#define    DM_GET_BULKALL        10
#define    DM_GET_BULKATTR        11
#define    DM_GET_CONFIG        12
#define    DM_GET_CONFIG_EVENTS    13
#define    DM_GET_DIOINFO        14
#define    DM_GET_DIRATTRS        15
#define    DM_GET_DMATTR        16
#define    DM_GET_EVENTLIST    17
#define    DM_GET_EVENTS        18
#define    DM_GET_FILEATTR        19
#define    DM_GET_MOUNTINFO    20
#define    DM_GET_REGION        21
#define    DM_GETALL_DISP        22
#define    DM_GETALL_DMATTR    23
#define    DM_GETALL_INHERIT    24
#define    DM_GETALL_SESSIONS    25
#define    DM_GETALL_TOKENS    26
#define    DM_INIT_ATTRLOC        27
#define    DM_MKDIR_BY_HANDLE    28
#define    DM_MOVE_EVENT        29
#define    DM_OBJ_REF_HOLD        30
#define    DM_OBJ_REF_QUERY    31
#define    DM_OBJ_REF_RELE        32
#define    DM_PATH_TO_FSHANDLE    33
#define    DM_PATH_TO_HANDLE    34
#define    DM_PENDING        35
#define    DM_PROBE_HOLE        36
#define    DM_PUNCH_HOLE        37
#define    DM_QUERY_RIGHT        38
#define    DM_QUERY_SESSION    39
#define    DM_READ_INVIS        40
#define    DM_RELEASE_RIGHT    41
#define    DM_REMOVE_DMATTR    42
#define    DM_REQUEST_RIGHT    43
#define    DM_RESPOND_EVENT    44
#define    DM_SEND_MSG        45
#define    DM_SET_DISP        46
#define    DM_SET_DMATTR        47
#define    DM_SET_EVENTLIST    48
#define    DM_SET_FILEATTR        49
#define    DM_SET_INHERIT        50
#define    DM_SET_REGION        51
#define    DM_SET_RETURN_ON_DESTROY 52
#define    DM_SYMLINK_BY_HANDLE    53
#define    DM_SYNC_BY_HANDLE    54
#define    DM_UPGRADE_RIGHT    55
#define    DM_WRITE_INVIS        56


#endif /* __DMAPI_KERN_H__ */

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ Read-Only ]

:: Make Dir ::
 
[ Read-Only ]
:: Make File ::
 
[ Read-Only ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 1.0 pre-release build #13 powered by Captain Crunch Security Team | http://ccteam.ru | Generation time: 0.005 ]--