The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/compat/netbsd32/netbsd32_ioctl.h

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 /*      $NetBSD: netbsd32_ioctl.h,v 1.24 2008/06/23 23:14:42 njoly Exp $        */
    2 
    3 /*
    4  * Copyright (c) 1998, 2001 Matthew R. Green
    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  * 1. Redistributions of source code must retain the above copyright
   11  *    notice, this list of conditions and the following disclaimer.
   12  * 2. Redistributions in binary form must reproduce the above copyright
   13  *    notice, this list of conditions and the following disclaimer in the
   14  *    documentation and/or other materials provided with the distribution.
   15  *
   16  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
   17  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
   18  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
   19  * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
   20  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
   21  * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
   22  * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
   23  * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
   24  * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   25  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   26  * SUCH DAMAGE.
   27  */
   28 
   29 /* we define some handy macros here... */
   30 #define IOCTL_STRUCT_CONV_TO(cmd, type) \
   31                 size = IOCPARM_LEN(cmd); \
   32                 if (size > sizeof(stkbuf)) \
   33                         data = memp = kmem_alloc(size, KM_SLEEP); \
   34                 else \
   35                         data = (void *)stkbuf; \
   36                 __CONCAT(netbsd32_to_, type)((struct __CONCAT(netbsd32_, type) *) \
   37                         data32, (struct type *)data, cmd); \
   38                 error = (*fp->f_ops->fo_ioctl)(fp, cmd, data); \
   39                 __CONCAT(netbsd32_from_, type)((struct type *)data, \
   40                         (struct __CONCAT(netbsd32_, type) *)data32, cmd); \
   41                 break
   42 
   43 /* from <sys/audioio.h> */
   44 #if 0
   45 #define AUDIO_WSEEK     _IOR('A', 25, u_long)
   46 #endif
   47 
   48 /* from <sys/dkio.h> */
   49 typedef netbsd32_pointer_t netbsd32_disklabel_tp_t;
   50 typedef netbsd32_pointer_t netbsd32_partition_tp_t;
   51 struct netbsd32_partinfo {
   52         netbsd32_disklabel_tp_t disklab;
   53         netbsd32_partition_tp_t part;
   54 };
   55 #if 1
   56 #define DIOCGPART32     _IOW('d', 104, struct netbsd32_partinfo)        /* get partition */
   57 #endif
   58 
   59 #if 0   /* not implemented by anything */
   60 struct netbsd32_format_op {
   61         netbsd32_charp df_buf;
   62         int      df_count;              /* value-result */
   63         daddr_t  df_startblk;
   64         int      df_reg[8];             /* result */
   65 };
   66 #define DIOCRFORMAT32   _IOWR('d', 105, struct netbsd32_format_op)
   67 #define DIOCWFORMAT32   _IOWR('d', 106, struct netbsd32_format_op)
   68 #endif
   69 
   70 /* can wait! */
   71 #if 0
   72 dev/ccdvar.h:219:#define CCDIOCSET      _IOWR('F', 16, struct ccd_ioctl)   /* enable ccd */
   73 dev/ccdvar.h:220:#define CCDIOCCLR      _IOW('F', 17, struct ccd_ioctl)    /* disable ccd */
   74 
   75 dev/md.h:45:#define MD_GETCONF  _IOR('r', 0, struct md_conf)    /* get unit config */
   76 dev/md.h:46:#define MD_SETCONF  _IOW('r', 1, struct md_conf)    /* set unit config */
   77 
   78 dev/wscons/wsconsio.h:133:#define WSKBDIO_GETMAP                _IOWR('W', 13, struct wskbd_map_data)
   79 dev/wscons/wsconsio.h:134:#define WSKBDIO_SETMAP                _IOW('W', 14, struct wskbd_map_data)
   80 
   81 dev/wscons/wsconsio.h:188:#define WSDISPLAYIO_GETCMAP   _IOW('W', 66, struct wsdisplay_cmap)
   82 dev/wscons/wsconsio.h:189:#define WSDISPLAYIO_PUTCMAP   _IOW('W', 67, struct wsdisplay_cmap)
   83 
   84 dev/wscons/wsconsio.h:227:#define       WSDISPLAYIO_GCURSOR     _IOWR('W', 73, struct wsdisplay_cursor)
   85 dev/wscons/wsconsio.h:228:#define       WSDISPLAYIO_SCURSOR     _IOW('W', 74, struct wsdisplay_cursor)
   86 
   87 dev/wscons/wsconsio.h:241:#define WSDISPLAYIO_SFONT     _IOW('W', 77, struct wsdisplay_font)
   88 
   89 net/bpf.h:127:#define   BIOCSETF        _IOW('B',103, struct bpf_program)
   90 net/bpf.h:138:#define BIOCSTCPF _IOW('B',114, struct bpf_program)
   91 net/bpf.h:139:#define BIOCSUDPF _IOW('B',115, struct bpf_program)
   92 net/if_ppp.h:110:#define PPPIOCSPASS    _IOW('t', 71, struct bpf_program) /* set pass filter */
   93 net/if_ppp.h:111:#define PPPIOCSACTIVE  _IOW('t', 70, struct bpf_program) /* set active filt */
   94 
   95 net/if_atm.h:88:#define SIOCATMENA      _IOWR('a', 123, struct atm_pseudoioctl) /* enable */
   96 net/if_atm.h:89:#define SIOCATMDIS      _IOWR('a', 124, struct atm_pseudoioctl) /* disable */
   97 
   98 net/if_ppp.h:105:#define PPPIOCSCOMPRESS        _IOW('t', 77, struct ppp_option_data)
   99 
  100 netccitt/x25.h:157:#define      SIOCSIFCONF_X25 _IOW('i', 12, struct ifreq_x25) /* set ifnet config */
  101 netccitt/x25.h:158:#define      SIOCGIFCONF_X25 _IOWR('i',13, struct ifreq_x25) /* get ifnet config */
  102 
  103 netinet/ip_fil.h:46:#define     SIOCGETFS       _IOR('r', 64, struct friostat)
  104 netinet/ip_fil.h:56:#define     SIOCFRZST       _IOWR('r', 74, struct friostat)
  105 
  106 netinet/ip_fil.h:42:#define     SIOCADAFR       _IOW('r', 60, struct frentry)
  107 netinet/ip_fil.h:43:#define     SIOCRMAFR       _IOW('r', 61, struct frentry)
  108 netinet/ip_fil.h:49:#define     SIOCADIFR       _IOW('r', 67, struct frentry)
  109 netinet/ip_fil.h:50:#define     SIOCRMIFR       _IOW('r', 68, struct frentry)
  110 netinet/ip_fil.h:52:#define     SIOCINAFR       _IOW('r', 70, struct frentry)
  111 netinet/ip_fil.h:53:#define     SIOCINIFR       _IOW('r', 71, struct frentry)
  112 netinet/ip_fil.h:57:#define     SIOCZRLST       _IOWR('r', 75, struct frentry)
  113 
  114 netinet/ip_fil.h:78:#define     SIOCAUTHW       _IOWR(r, 76, struct fr_info)
  115 netinet/ip_fil.h:79:#define     SIOCAUTHR       _IOWR(r, 77, struct fr_info)
  116 
  117 netinet/ip_fil.h:60:#define     SIOCATHST       _IOWR('r', 78, struct fr_authstat)
  118 
  119 netinet/ip_nat.h:22:#define     SIOCADNAT       _IOW('r', 80, struct ipnat)
  120 netinet/ip_nat.h:23:#define     SIOCRMNAT       _IOW('r', 81, struct ipnat)
  121 
  122 netinet/ip_nat.h:24:#define     SIOCGNATS       _IOR('r', 82, struct natstat)
  123 
  124 netinet/ip_nat.h:25:#define     SIOCGNATL       _IOWR('r', 83, struct natlookup)
  125 
  126 netinet/ip_nat.h:26:#define SIOCGFRST   _IOR('r', 84, struct ipfrstat)
  127 
  128 netinet/ip_nat.h:27:#define SIOCGIPST   _IOR('r', 85, struct ips_stat)
  129 
  130 sys/lkm.h:286:#define   LMRESERV        _IOWR('K', 0, struct lmc_resrv)
  131 
  132 sys/lkm.h:287:#define   LMLOADBUF       _IOW('K', 1, struct lmc_loadbuf)
  133 
  134 sys/lkm.h:291:#define   LMLOAD          _IOW('K', 9, struct lmc_load)
  135 
  136 sys/lkm.h:292:#define   LMUNLOAD        _IOWR('K', 10, struct lmc_unload)
  137 
  138 sys/lkm.h:293:#define   LMSTAT          _IOWR('K', 11, struct lmc_stat)
  139 
  140 sys/rnd.h:186:#define RNDGETPOOL      _IOR('R',  103, u_char *)  /* get whole pool */
  141 
  142 sys/scanio.h:86:#define SCIOCGET        _IOR('S', 1, struct scan_io) /* retrieve parameters */
  143 sys/scanio.h:87:#define SCIOCSET        _IOW('S', 2, struct scan_io) /* set parameters */
  144 
  145 sys/scsiio.h:43:#define SCIOCCOMMAND    _IOWR('Q', 1, scsireq_t)
  146 #endif
  147 
  148 /* from <net/if.h> */
  149 
  150 typedef netbsd32_pointer_t netbsd32_ifreq_tp_t;
  151 /*
  152  * note that ifr_data is the only one that needs to be changed
  153  */
  154 struct  netbsd32_ifreq {
  155         char    ifr_name[IFNAMSIZ];             /* if name, e.g. "en0" */
  156         union {
  157                 struct  sockaddr ifru_addr;
  158                 struct  sockaddr ifru_dstaddr;
  159                 struct  sockaddr ifru_broadaddr;
  160                 short   ifru_flags;
  161                 int     ifru_metric;
  162                 int     ifru_mtu;
  163                 netbsd32_caddr_t ifru_data;
  164         } ifr_ifru;
  165 #define ifr_addr        ifr_ifru.ifru_addr      /* address */
  166 #define ifr_dstaddr     ifr_ifru.ifru_dstaddr   /* other end of p-to-p link */
  167 #define ifr_broadaddr   ifr_ifru.ifru_broadaddr /* broadcast address */
  168 #define ifr_flags       ifr_ifru.ifru_flags     /* flags */
  169 #define ifr_metric      ifr_ifru.ifru_metric    /* metric */
  170 #define ifr_mtu         ifr_ifru.ifru_mtu       /* mtu */
  171 #define ifr_media       ifr_ifru.ifru_metric    /* media options (overload) */
  172 #define ifr_data        ifr_ifru.ifru_data      /* for use by interface */
  173 };
  174 #if 1
  175 /* from <dev/pci/if_devar.h> */
  176 #define SIOCGADDRROM32          _IOW('i', 240, struct netbsd32_ifreq)   /* get 128 bytes of ROM */
  177 #define SIOCGCHIPID32           _IOWR('i', 241, struct netbsd32_ifreq)  /* get chipid */
  178 /* from <sys/sockio.h> */
  179 #define SIOCSIFADDR32    _IOW('i', 12, struct netbsd32_ifreq)   /* set ifnet address */
  180 #define OSIOCGIFADDR32  _IOWR('i', 13, struct netbsd32_ifreq)   /* get ifnet address */
  181 #define SIOCGIFADDR32   _IOWR('i', 33, struct netbsd32_ifreq)   /* get ifnet address */
  182 #define SIOCSIFDSTADDR32         _IOW('i', 14, struct netbsd32_ifreq)   /* set p-p address */
  183 #define OSIOCGIFDSTADDR32       _IOWR('i', 15, struct netbsd32_ifreq)   /* get p-p address */
  184 #define SIOCGIFDSTADDR32        _IOWR('i', 34, struct netbsd32_ifreq)   /* get p-p address */
  185 #define SIOCSIFFLAGS32   _IOW('i', 16, struct netbsd32_ifreq)   /* set ifnet flags */
  186 #define SIOCGIFFLAGS32  _IOWR('i', 17, struct netbsd32_ifreq)   /* get ifnet flags */
  187 #define OSIOCGIFBRDADDR32       _IOWR('i', 18, struct netbsd32_ifreq)   /* get broadcast addr */
  188 #define SIOCGIFBRDADDR32        _IOWR('i', 35, struct netbsd32_ifreq)   /* get broadcast addr */
  189 #define SIOCSIFBRDADDR32         _IOW('i', 19, struct netbsd32_ifreq)   /* set broadcast addr */
  190 #define OSIOCGIFNETMASK32       _IOWR('i', 21, struct netbsd32_ifreq)   /* get net addr mask */
  191 #define SIOCGIFNETMASK32        _IOWR('i', 37, struct netbsd32_ifreq)   /* get net addr mask */
  192 #define SIOCSIFNETMASK32         _IOW('i', 22, struct netbsd32_ifreq)   /* set net addr mask */
  193 #define SIOCGIFMETRIC32 _IOWR('i', 23, struct netbsd32_ifreq)   /* get IF metric */
  194 #define SIOCSIFMETRIC32  _IOW('i', 24, struct netbsd32_ifreq)   /* set IF metric */
  195 #define SIOCDIFADDR32    _IOW('i', 25, struct netbsd32_ifreq)   /* delete IF addr */
  196 #define SIOCADDMULTI32   _IOW('i', 49, struct netbsd32_ifreq)   /* add m'cast addr */
  197 #define SIOCDELMULTI32   _IOW('i', 50, struct netbsd32_ifreq)   /* del m'cast addr */
  198 #define SIOCSIFMEDIA32  _IOWR('i', 53, struct netbsd32_ifreq)   /* set net media */
  199 #define SIOCSIFMTU32     _IOW('i', 127, struct netbsd32_ifreq)  /* set ifnet mtu */
  200 #define SIOCGIFMTU32    _IOWR('i', 126, struct netbsd32_ifreq)  /* get ifnet mtu */
  201 /* was 125 SIOCSIFASYNCMAP32 */
  202 /* was 124 SIOCGIFASYNCMAP32 */
  203 /* from <net/bpf.h> */
  204 #define BIOCGETIF32     _IOR('B',107, struct netbsd32_ifreq)
  205 #define BIOCSETIF32     _IOW('B',108, struct netbsd32_ifreq)
  206 /* from <netatalk/phase2.h> */
  207 #define SIOCPHASE1_32   _IOW('i', 100, struct netbsd32_ifreq)   /* AppleTalk phase 1 */
  208 #define SIOCPHASE2_32   _IOW('i', 101, struct netbsd32_ifreq)   /* AppleTalk phase 2 */
  209 #endif
  210 
  211 /* from <net/if.h> */
  212 struct  netbsd32_ifconf {
  213         int     ifc_len;                /* size of associated buffer */
  214         union {
  215                 netbsd32_caddr_t ifcu_buf;
  216                 netbsd32_ifreq_tp_t ifcu_req;
  217         } ifc_ifcu;
  218 #define ifc_buf ifc_ifcu.ifcu_buf       /* buffer address */
  219 #define ifc_req ifc_ifcu.ifcu_req       /* array of structures returned */
  220 };
  221 #if 1
  222 /* from <sys/sockio.h> */
  223 #define OOSIOCGIFCONF32 _IOWR('i', 20, struct netbsd32_ifconf)  /* get ifnet list */
  224 #define OSIOCGIFCONF32  _IOWR('i', 36, struct netbsd32_ifconf)  /* get ifnet list */
  225 #define SIOCGIFCONF32   _IOWR('i', 38, struct netbsd32_ifconf)  /* get ifnet list */
  226 #endif
  227 
  228 /* from <net/if.h> */
  229 struct netbsd32_ifmediareq {
  230         char    ifm_name[IFNAMSIZ];             /* if name, e.g. "en0" */
  231         int     ifm_current;                    /* current media options */
  232         int     ifm_mask;                       /* don't care mask */
  233         int     ifm_status;                     /* media status */
  234         int     ifm_active;                     /* active options */
  235         int     ifm_count;                      /* # entries in ifm_ulist
  236                                                    array */
  237         netbsd32_intp   ifm_ulist;              /* media words */
  238 };
  239 #if 1
  240 /* from <sys/sockio.h> */
  241 #define SIOCGIFMEDIA32  _IOWR('i', 54, struct netbsd32_ifmediareq) /* get net media */
  242 #endif
  243 
  244 /* from <net/if.h> */
  245 struct  netbsd32_ifdrv {
  246         char            ifd_name[IFNAMSIZ];     /* if name, e.g. "en0" */
  247         netbsd32_u_long ifd_cmd;
  248         netbsd32_size_t ifd_len;
  249         netbsd32_voidp  ifd_data;
  250 };
  251 #if 1
  252 /* from <sys/sockio.h> */
  253 #define SIOCSDRVSPEC32  _IOW('i', 123, struct netbsd32_ifdrv)   /* set driver-specific */
  254 #endif
  255 
  256 /* from <netinet/ip_mroute.h> */
  257 struct netbsd32_sioc_vif_req {
  258         vifi_t  vifi;                   /* vif number */
  259         netbsd32_u_long icount;         /* input packet count on vif */
  260         netbsd32_u_long ocount;         /* output packet count on vif */
  261         netbsd32_u_long ibytes;         /* input byte count on vif */
  262         netbsd32_u_long obytes;         /* output byte count on vif */
  263 };
  264 #if 1
  265 /* from <sys/sockio.h> */
  266 #define SIOCGETVIFCNT32 _IOWR('u', 51, struct netbsd32_sioc_vif_req)/* vif pkt cnt */
  267 #endif
  268 
  269 struct netbsd32_sioc_sg_req {
  270         struct  in_addr src;
  271         struct  in_addr grp;
  272         u_long  pktcnt;
  273         u_long  bytecnt;
  274         u_long  wrong_if;
  275 };
  276 #if 1
  277 /* from <sys/sockio.h> */
  278 #define SIOCGETSGCNT32  _IOWR('u', 52, struct netbsd32_sioc_sg_req) /* sg pkt cnt */
  279 #endif

Cache object: d272069335abd3d60b579a0a48188066


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.