root/xfs/xfs_pioctl.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


    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

/* [<][>][^][v][top][bottom][index][help] */