[BACK]Return to xfs_pioctl.h CVS log [TXT][DIR] Up to [local] / sys / xfs

Annotation of sys/xfs/xfs_pioctl.h, Revision 1.1.1.1

1.1       nbrk        1: /*     $OpenBSD: xfs_pioctl.h,v 1.5 2003/09/08 05:46:08 beck Exp $     */
                      2: /*
                      3:  * Copyright (c) 1995 - 2000 Kungliga Tekniska Högskolan
                      4:  * (Royal Institute of Technology, Stockholm, Sweden).
                      5:  * All rights reserved.
                      6:  *
                      7:  * Redistribution and use in source and binary forms, with or without
                      8:  * modification, are permitted provided that the following conditions
                      9:  * are met:
                     10:  *
                     11:  * 1. Redistributions of source code must retain the above copyright
                     12:  *    notice, this list of conditions and the following disclaimer.
                     13:  *
                     14:  * 2. Redistributions in binary form must reproduce the above copyright
                     15:  *    notice, this list of conditions and the following disclaimer in the
                     16:  *    documentation and/or other materials provided with the distribution.
                     17:  *
                     18:  * 3. All advertising materials mentioning features or use of this software
                     19:  *    must display the following acknowledgement:
                     20:  *      This product includes software developed by the Kungliga Tekniska
                     21:  *      Högskolan and its contributors.
                     22:  *
                     23:  * 4. Neither the name of the Institute nor the names of its contributors
                     24:  *    may be used to endorse or promote products derived from this software
                     25:  *    without specific prior written permission.
                     26:  *
                     27:  * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND
                     28:  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
                     29:  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
                     30:  * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE
                     31:  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
                     32:  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
                     33:  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
                     34:  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
                     35:  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
                     36:  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
                     37:  * SUCH DAMAGE.
                     38:  */
                     39:
                     40: #ifndef        _XFS_XFS_PIOCTL_H_
                     41: #define        _XFS_XFS_PIOCTL_H_
                     42:
                     43: /*
                     44:  */
                     45:
                     46: #define AFSCALL_PIOCTL 20
                     47: #define AFSCALL_SETPAG 21
                     48: #define AFSCALL_PROBE  22
                     49:
                     50: #ifndef _VICEIOCTL
                     51: #define _VICEIOCTL(id)  ((unsigned int ) _IOW('V', id, struct ViceIoctl))
                     52: #endif /* _VICEIOCTL */
                     53:
                     54: /*
                     55:  * ioctls
                     56:  */
                     57:
                     58: #define VIOCCLOSEWAIT          _VICEIOCTL(1)
                     59: #define VIOCABORT              _VICEIOCTL(2)
                     60: #define VIOIGETCELL            _VICEIOCTL(3)
                     61:
                     62: /*
                     63:  * pioctls
                     64:  */
                     65:
                     66: #define VIOCSETAL              _VICEIOCTL(1)
                     67: #define VIOCGETAL              _VICEIOCTL(2)
                     68: #define VIOCSETTOK             _VICEIOCTL(3)
                     69: #define VIOCGETVOLSTAT         _VICEIOCTL(4)
                     70: #define VIOCSETVOLSTAT         _VICEIOCTL(5)
                     71: #define VIOCFLUSH              _VICEIOCTL(6)
                     72: #define VIOCSTAT               _VICEIOCTL(7)
                     73: #define VIOCGETTOK             _VICEIOCTL(8)
                     74: #define VIOCUNLOG              _VICEIOCTL(9)
                     75: #define VIOCCKSERV             _VICEIOCTL(10)
                     76: #define VIOCCKBACK             _VICEIOCTL(11)
                     77: #define VIOCCKCONN             _VICEIOCTL(12)
                     78: #define VIOCGETTIME            _VICEIOCTL(13)
                     79: #define VIOCWHEREIS            _VICEIOCTL(14)
                     80: #define VIOCPREFETCH           _VICEIOCTL(15)
                     81: #define VIOCNOP                        _VICEIOCTL(16)
                     82: #define VIOCENGROUP            _VICEIOCTL(17)
                     83: #define VIOCDISGROUP           _VICEIOCTL(18)
                     84: #define VIOCLISTGROUPS         _VICEIOCTL(19)
                     85: #define VIOCACCESS             _VICEIOCTL(20)
                     86: #define VIOCUNPAG              _VICEIOCTL(21)
                     87: #define VIOCGETFID             _VICEIOCTL(22)
                     88: #define VIOCWAITFOREVER                _VICEIOCTL(23)
                     89: #define VIOCSETCACHESIZE       _VICEIOCTL(24)
                     90: #define VIOCFLUSHCB            _VICEIOCTL(25)
                     91: #define VIOCNEWCELL            _VICEIOCTL(26)
                     92: #define VIOCGETCELL            _VICEIOCTL(27)
                     93: #define VIOC_AFS_DELETE_MT_PT  _VICEIOCTL(28)
                     94: #define VIOC_AFS_STAT_MT_PT    _VICEIOCTL(29)
                     95: #define VIOC_FILE_CELL_NAME    _VICEIOCTL(30)
                     96: #define VIOC_GET_WS_CELL       _VICEIOCTL(31)
                     97: #define VIOC_AFS_MARINER_HOST  _VICEIOCTL(32)
                     98: #define VIOC_GET_PRIMARY_CELL  _VICEIOCTL(33)
                     99: #define VIOC_VENUSLOG          _VICEIOCTL(34)
                    100: #define VIOC_GETCELLSTATUS     _VICEIOCTL(35)
                    101: #define VIOC_SETCELLSTATUS     _VICEIOCTL(36)
                    102: #define VIOC_FLUSHVOLUME       _VICEIOCTL(37)
                    103: #define VIOC_AFS_SYSNAME       _VICEIOCTL(38)
                    104: #define VIOC_EXPORTAFS         _VICEIOCTL(39)
                    105: #define VIOCGETCACHEPARAMS     _VICEIOCTL(40)
                    106: #define VIOCCONNECTMODE                _VICEIOCTL(41)
                    107: #define VIOCGETVCXSTATUS       _VICEIOCTL(41)
                    108: #define VIOC_SETSPREFS33       _VICEIOCTL(42)
                    109: #define VIOC_GETSPREFS         _VICEIOCTL(43)
                    110: #define VIOC_GAG               _VICEIOCTL(44)
                    111: #define VIOC_TWIDDLE           _VICEIOCTL(45)
                    112: #define VIOC_SETSPREFS         _VICEIOCTL(46)
                    113: #define VIOC_STORBEHIND                _VICEIOCTL(47)
                    114: #define VIOC_GCPAGS            _VICEIOCTL(48)
                    115: #define VIOC_GETINITPARAMS      _VICEIOCTL(49)
                    116: #define VIOC_GETCPREFS          _VICEIOCTL(50)
                    117: #define VIOC_SETCPREFS          _VICEIOCTL(51)
                    118: #define VIOC_FLUSHMOUNT         _VICEIOCTL(52)
                    119: #define VIOC_RXSTATPROC         _VICEIOCTL(53)
                    120: #define VIOC_RXSTATPEER         _VICEIOCTL(54)
                    121:
                    122: #define VIOC_GETRXKCRYPT       _VICEIOCTL(55)
                    123: #define VIOC_SETRXKCRYPT       _VICEIOCTL(56)
                    124:
                    125: /* arla specific */
                    126:
                    127: #define VIOC_FPRIOSTATUS       _VICEIOCTL(57)
                    128: #define VIOC_FHGET             _VICEIOCTL(58)
                    129: #define VIOC_FHOPEN            _VICEIOCTL(59)
                    130: #define VIOC_NNPFSDEBUG         _VICEIOCTL(60)
                    131: #define VIOC_XFSDEBUG           _VICEIOCTL(60)
                    132: #define VIOC_ARLADEBUG         _VICEIOCTL(61)
                    133: #define VIOC_AVIATOR            _VICEIOCTL(62)
                    134: #define VIOC_NNPFSDEBUG_PRINT  _VICEIOCTL(63)
                    135: #define VIOC_CALCULATE_CACHE   _VICEIOCTL(64)
                    136: #define VIOC_BREAKCALLBACK     _VICEIOCTL(65)
                    137: #define VIOC_PREFETCHTAPE       _VICEIOCTL(66)
                    138: #define VIOC_RESIDENCY_CMD      _VICEIOCTL(67)
                    139:
                    140: /*
                    141:  * GETCELLSTATUS flags
                    142:  */
                    143:
                    144: #define CELLSTATUS_PRIMARY     0x01 /* this is the `primary' cell */
                    145: #define CELLSTATUS_SETUID      0x02 /* setuid honored for this cell */
                    146: #define CELLSTATUS_OBSOLETE_VL 0x04 /* uses obsolete VL servers */
                    147:
                    148: /*
                    149:  * VIOCCONNECTMODE arguments
                    150:  */
                    151:
                    152: #define CONNMODE_PROBE         0
                    153: #define CONNMODE_CONN          1
                    154: #define CONNMODE_FETCH         2
                    155: #define CONNMODE_DISCONN       3
                    156: #define CONNMODE_PARCONNECTED  4
                    157:
                    158: /*
                    159:  * The struct for VIOC_FPRIOSTATUS
                    160:  */
                    161:
                    162: #define FPRIO_MAX              100
                    163: #define FPRIO_MIN              0
                    164: #define FPRIO_DEFAULT          FPRIO_MAX
                    165:
                    166: #define FPRIO_GET              0
                    167: #define FPRIO_SET              1
                    168: #define FPRIO_GETMAX           2
                    169: #define FPRIO_SETMAX           3
                    170:
                    171: struct vioc_fprio {
                    172:        int16_t cmd;
                    173:        int16_t prio;
                    174:        int32_t Cell;
                    175:        int32_t Volume;
                    176:        int32_t Vnode;
                    177:        int32_t Unique;
                    178: };
                    179:
                    180: /*
                    181:  * Flags for VIOCCKSERV
                    182:  */
                    183:
                    184: #define CKSERV_DONTPING     1
                    185: #define CKSERV_FSONLY       2
                    186:
                    187: #define CKSERV_MAXSERVERS   16 /* limitation of VIOCCKSERV number of
                    188:                                  returned servers */
                    189:
                    190: struct ViceIoctl {
                    191:        caddr_t in, out;
                    192:        short   in_size;
                    193:        short   out_size;
                    194: };
                    195:
                    196: struct ClearToken {
                    197:        int32_t AuthHandle;
                    198:        char    HandShakeKey[8];
                    199:        int32_t ViceId;
                    200:        int32_t BeginTimestamp;
                    201:        int32_t EndTimestamp;
                    202: };
                    203:
                    204: #endif

CVSweb