1/* $NetBSD: rumpdefs.h,v 1.38 2018/08/21 11:47:37 christos Exp $ */ 2 3/* 4 * AUTOMATICALLY GENERATED. DO NOT EDIT. 5 */ 6 7#ifndef _RUMP_RUMPDEFS_H_ 8#define _RUMP_RUMPDEFS_H_ 9 10#include <rump/rump_namei.h> 11 12/* NetBSD: fcntl.h,v 1.50 2018/02/20 18:20:05 kamil Exp */ 13#define RUMP_O_RDONLY 0x00000000 /* open for reading only */ 14#define RUMP_O_WRONLY 0x00000001 /* open for writing only */ 15#define RUMP_O_RDWR 0x00000002 /* open for reading and writing */ 16#define RUMP_O_ACCMODE 0x00000003 /* mask for above modes */ 17#define RUMP_O_NONBLOCK 0x00000004 /* no delay */ 18#define RUMP_O_APPEND 0x00000008 /* set append mode */ 19#define RUMP_O_SHLOCK 0x00000010 /* open with shared file lock */ 20#define RUMP_O_EXLOCK 0x00000020 /* open with exclusive file lock */ 21#define RUMP_O_ASYNC 0x00000040 /* signal pgrp when data ready */ 22#define RUMP_O_SYNC 0x00000080 /* synchronous writes */ 23#define RUMP_O_NOFOLLOW 0x00000100 /* don't follow symlinks on the last */ 24#define RUMP_O_CREAT 0x00000200 /* create if nonexistent */ 25#define RUMP_O_TRUNC 0x00000400 /* truncate to zero length */ 26#define RUMP_O_EXCL 0x00000800 /* error if already exists */ 27#define RUMP_O_NOCTTY 0x00008000 /* don't assign controlling terminal */ 28#define RUMP_O_DSYNC 0x00010000 /* write: I/O data completion */ 29#define RUMP_O_RSYNC 0x00020000 /* read: I/O completion as for write */ 30#define RUMP_O_DIRECT 0x00080000 /* direct I/O hint */ 31#define RUMP_O_DIRECTORY 0x00200000 /* fail if not a directory */ 32#define RUMP_O_CLOEXEC 0x00400000 /* set close on exec */ 33#define RUMP_O_SEARCH 0x00800000 /* skip search permission checks */ 34#define RUMP_O_NOSIGPIPE 0x01000000 /* don't deliver sigpipe */ 35#define RUMP_O_REGULAR 0x02000000 /* fail if not a regular file */ 36#define RUMP_F_WAIT 0x010 /* Wait until lock is granted */ 37#define RUMP_F_FLOCK 0x020 /* Use flock(2) semantics for lock */ 38#define RUMP_F_POSIX 0x040 /* Use POSIX semantics for lock */ 39#define RUMP_F_PARAM_MASK 0xfff 40#define RUMP_F_PARAM_LEN(x) (((x) >> 16) & RUMP_F_PARAM_MASK) 41#define RUMP_F_FSCTL (int)0x80000000 /* This fcntl goes to the fs */ 42#define RUMP_F_FSVOID (int)0x40000000 /* no parameters */ 43#define RUMP_F_FSOUT (int)0x20000000 /* copy out parameter */ 44#define RUMP_F_FSIN (int)0x10000000 /* copy in parameter */ 45#define RUMP_F_FSINOUT (RUMP_F_FSIN | RUMP_F_FSOUT) 46#define RUMP_F_FSDIRMASK (int)0x70000000 /* mask for IN/OUT/VOID */ 47#define RUMP_F_FSPRIV (int)0x00008000 /* command is fs-specific */ 48#define RUMP__FCN(inout, num, len) \ 49 (RUMP_F_FSCTL | inout | ((len & RUMP_F_PARAM_MASK) << 16) | (num)) 50#define RUMP__FCNO(c) RUMP__FCN(RUMP_F_FSVOID, (c), 0) 51#define RUMP__FCNR(c, t) RUMP__FCN(RUMP_F_FSIN, (c), (int)sizeof(t)) 52#define RUMP__FCNW(c, t) RUMP__FCN(RUMP_F_FSOUT, (c), (int)sizeof(t)) 53#define RUMP__FCNRW(c, t) RUMP__FCN(RUMP_F_FSINOUT, (c), (int)sizeof(t)) 54#define RUMP__FCN_FSPRIV(inout, fs, num, len) \ 55 (RUMP_F_FSCTL | RUMP_F_FSPRIV | inout | ((len & RUMP_F_PARAM_MASK) << 16) | \ 56 (fs) << 8 | (num)) 57#define RUMP__FCNO_FSPRIV(f, c) RUMP__FCN_FSPRIV(RUMP_F_FSVOID, (f), (c), 0) 58#define RUMP__FCNR_FSPRIV(f, c, t) RUMP__FCN_FSPRIV(RUMP_F_FSIN, (f), (c), (int)sizeof(t)) 59#define RUMP__FCNW_FSPRIV(f, c, t) RUMP__FCN_FSPRIV(RUMP_F_FSOUT, (f), (c), (int)sizeof(t)) 60#define RUMP__FCNRW_FSPRIV(f, c, t) RUMP__FCN_FSPRIV(RUMP_F_FSINOUT, (f), (c), (int)sizeof(t)) 61 62/* NetBSD: vnode.h,v 1.280 2018/04/19 21:19:07 christos Exp */ 63enum rump_vtype { RUMP_VNON, RUMP_VREG, RUMP_VDIR, RUMP_VBLK, RUMP_VCHR, RUMP_VLNK, RUMP_VSOCK, RUMP_VFIFO, RUMP_VBAD }; 64#define RUMP_LK_SHARED 0x00000001 65#define RUMP_LK_EXCLUSIVE 0x00000002 66#define RUMP_LK_NOWAIT 0x00000010 67#define RUMP_LK_RETRY 0x00020000 68 69/* NetBSD: errno.h,v 1.40 2013/01/02 18:51:53 dsl Exp */ 70#define RUMP_EPERM 1 /* Operation not permitted */ 71#define RUMP_ENOENT 2 /* No such file or directory */ 72#define RUMP_ESRCH 3 /* No such process */ 73#define RUMP_EINTR 4 /* Interrupted system call */ 74#define RUMP_EIO 5 /* Input/output error */ 75#define RUMP_ENXIO 6 /* Device not configured */ 76#define RUMP_E2BIG 7 /* Argument list too long */ 77#define RUMP_ENOEXEC 8 /* Exec format error */ 78#define RUMP_EBADF 9 /* Bad file descriptor */ 79#define RUMP_ECHILD 10 /* No child processes */ 80#define RUMP_EDEADLK 11 /* Resource deadlock avoided */ 81#define RUMP_ENOMEM 12 /* Cannot allocate memory */ 82#define RUMP_EACCES 13 /* Permission denied */ 83#define RUMP_EFAULT 14 /* Bad address */ 84#define RUMP_ENOTBLK 15 /* Block device required */ 85#define RUMP_EBUSY 16 /* Device busy */ 86#define RUMP_EEXIST 17 /* File exists */ 87#define RUMP_EXDEV 18 /* Cross-device link */ 88#define RUMP_ENODEV 19 /* Operation not supported by device */ 89#define RUMP_ENOTDIR 20 /* Not a directory */ 90#define RUMP_EISDIR 21 /* Is a directory */ 91#define RUMP_EINVAL 22 /* Invalid argument */ 92#define RUMP_ENFILE 23 /* Too many open files in system */ 93#define RUMP_EMFILE 24 /* Too many open files */ 94#define RUMP_ENOTTY 25 /* Inappropriate ioctl for device */ 95#define RUMP_ETXTBSY 26 /* Text file busy */ 96#define RUMP_EFBIG 27 /* File too large */ 97#define RUMP_ENOSPC 28 /* No space left on device */ 98#define RUMP_ESPIPE 29 /* Illegal seek */ 99#define RUMP_EROFS 30 /* Read-only file system */ 100#define RUMP_EMLINK 31 /* Too many links */ 101#define RUMP_EPIPE 32 /* Broken pipe */ 102#define RUMP_EDOM 33 /* Numerical argument out of domain */ 103#define RUMP_ERANGE 34 /* Result too large or too small */ 104#define RUMP_EAGAIN 35 /* Resource temporarily unavailable */ 105#define RUMP_EWOULDBLOCK RUMP_EAGAIN /* Operation would block */ 106#define RUMP_EINPROGRESS 36 /* Operation now in progress */ 107#define RUMP_EALREADY 37 /* Operation already in progress */ 108#define RUMP_ENOTSOCK 38 /* Socket operation on non-socket */ 109#define RUMP_EDESTADDRREQ 39 /* Destination address required */ 110#define RUMP_EMSGSIZE 40 /* Message too long */ 111#define RUMP_EPROTOTYPE 41 /* Protocol wrong type for socket */ 112#define RUMP_ENOPROTOOPT 42 /* Protocol option not available */ 113#define RUMP_EPROTONOSUPPORT 43 /* Protocol not supported */ 114#define RUMP_ESOCKTNOSUPPORT 44 /* Socket type not supported */ 115#define RUMP_EOPNOTSUPP 45 /* Operation not supported */ 116#define RUMP_EPFNOSUPPORT 46 /* Protocol family not supported */ 117#define RUMP_EAFNOSUPPORT 47 /* Address family not supported by protocol family */ 118#define RUMP_EADDRINUSE 48 /* Address already in use */ 119#define RUMP_EADDRNOTAVAIL 49 /* Can't assign requested address */ 120#define RUMP_ENETDOWN 50 /* Network is down */ 121#define RUMP_ENETUNREACH 51 /* Network is unreachable */ 122#define RUMP_ENETRESET 52 /* Network dropped connection on reset */ 123#define RUMP_ECONNABORTED 53 /* Software caused connection abort */ 124#define RUMP_ECONNRESET 54 /* Connection reset by peer */ 125#define RUMP_ENOBUFS 55 /* No buffer space available */ 126#define RUMP_EISCONN 56 /* Socket is already connected */ 127#define RUMP_ENOTCONN 57 /* Socket is not connected */ 128#define RUMP_ESHUTDOWN 58 /* Can't send after socket shutdown */ 129#define RUMP_ETOOMANYREFS 59 /* Too many references: can't splice */ 130#define RUMP_ETIMEDOUT 60 /* Operation timed out */ 131#define RUMP_ECONNREFUSED 61 /* Connection refused */ 132#define RUMP_ELOOP 62 /* Too many levels of symbolic links */ 133#define RUMP_ENAMETOOLONG 63 /* File name too long */ 134#define RUMP_EHOSTDOWN 64 /* Host is down */ 135#define RUMP_EHOSTUNREACH 65 /* No route to host */ 136#define RUMP_ENOTEMPTY 66 /* Directory not empty */ 137#define RUMP_EPROCLIM 67 /* Too many processes */ 138#define RUMP_EUSERS 68 /* Too many users */ 139#define RUMP_EDQUOT 69 /* Disc quota exceeded */ 140#define RUMP_ESTALE 70 /* Stale NFS file handle */ 141#define RUMP_EREMOTE 71 /* Too many levels of remote in path */ 142#define RUMP_EBADRPC 72 /* RPC struct is bad */ 143#define RUMP_ERPCMISMATCH 73 /* RPC version wrong */ 144#define RUMP_EPROGUNAVAIL 74 /* RPC prog. not avail */ 145#define RUMP_EPROGMISMATCH 75 /* Program version wrong */ 146#define RUMP_EPROCUNAVAIL 76 /* Bad procedure for program */ 147#define RUMP_ENOLCK 77 /* No locks available */ 148#define RUMP_ENOSYS 78 /* Function not implemented */ 149#define RUMP_EFTYPE 79 /* Inappropriate file type or format */ 150#define RUMP_EAUTH 80 /* Authentication error */ 151#define RUMP_ENEEDAUTH 81 /* Need authenticator */ 152#define RUMP_EIDRM 82 /* Identifier removed */ 153#define RUMP_ENOMSG 83 /* No message of desired type */ 154#define RUMP_EOVERFLOW 84 /* Value too large to be stored in data type */ 155#define RUMP_EILSEQ 85 /* Illegal byte sequence */ 156#define RUMP_ENOTSUP 86 /* Not supported */ 157#define RUMP_ECANCELED 87 /* Operation canceled */ 158#define RUMP_EBADMSG 88 /* Bad or Corrupt message */ 159#define RUMP_ENODATA 89 /* No message available */ 160#define RUMP_ENOSR 90 /* No STREAM resources */ 161#define RUMP_ENOSTR 91 /* Not a STREAM */ 162#define RUMP_ETIME 92 /* STREAM ioctl timeout */ 163#define RUMP_ENOATTR 93 /* Attribute not found */ 164#define RUMP_EMULTIHOP 94 /* Multihop attempted */ 165#define RUMP_ENOLINK 95 /* Link has been severed */ 166#define RUMP_EPROTO 96 /* Protocol error */ 167#define RUMP_ELAST 96 /* Must equal largest errno */ 168#define RUMP_EJUSTRETURN -2 /* don't modify regs, just return */ 169#define RUMP_ERESTART -3 /* restart syscall */ 170#define RUMP_EPASSTHROUGH -4 /* ioctl not handled by this layer */ 171#define RUMP_EDUPFD -5 /* Dup given fd */ 172#define RUMP_EMOVEFD -6 /* Move given fd */ 173 174/* NetBSD: reboot.h,v 1.25 2007/12/25 18:33:48 perry Exp */ 175#define RUMP_RB_AUTOBOOT 0 176#define RUMP_RB_ASKNAME 0x00000001 177#define RUMP_RB_SINGLE 0x00000002 178#define RUMP_RB_NOSYNC 0x00000004 179#define RUMP_RB_HALT 0x00000008 180#define RUMP_RB_INITNAME 0x00000010 181#define __RUMP_RB_UNUSED1 0x00000020 182#define RUMP_RB_KDB 0x00000040 183#define RUMP_RB_RDONLY 0x00000080 184#define RUMP_RB_DUMP 0x00000100 185#define RUMP_RB_MINIROOT 0x00000200 186#define RUMP_RB_STRING 0x00000400 187#define RUMP_RB_POWERDOWN (RUMP_RB_HALT|0x800) 188#define RUMP_RB_USERCONF 0x00001000 189#define RUMP_RB_MD1 0x10000000 190#define RUMP_RB_MD2 0x20000000 191#define RUMP_RB_MD3 0x40000000 192#define RUMP_RB_MD4 0x80000000 193#define RUMP_AB_NORMAL 0x00000000 194#define RUMP_AB_QUIET 0x00010000 195#define RUMP_AB_VERBOSE 0x00020000 196#define RUMP_AB_SILENT 0x00040000 197#define RUMP_AB_DEBUG 0x00080000 198 199/* NetBSD: socket.h,v 1.126 2018/07/31 13:20:34 rjs Exp */ 200#define RUMP_SOCK_STREAM 1 201#define RUMP_SOCK_DGRAM 2 202#define RUMP_SOCK_RAW 3 203#define RUMP_SOCK_RDM 4 204#define RUMP_SOCK_SEQPACKET 5 205#define RUMP_SOCK_CONN_DGRAM 6 206#define RUMP_SOCK_DCCP RUMP_SOCK_CONN_DGRAM 207#define RUMP_SOCK_CLOEXEC 0x10000000 208#define RUMP_SOCK_NONBLOCK 0x20000000 209#define RUMP_SOCK_NOSIGPIPE 0x40000000 210#define RUMP_SOCK_FLAGS_MASK 0xf0000000 211#define RUMP_AF_UNSPEC 0 212#define RUMP_AF_LOCAL 1 213#define RUMP_AF_UNIX RUMP_AF_LOCAL 214#define RUMP_AF_INET 2 215#define RUMP_AF_IMPLINK 3 216#define RUMP_AF_PUP 4 217#define RUMP_AF_CHAOS 5 218#define RUMP_AF_NS 6 219#define RUMP_AF_ISO 7 220#define RUMP_AF_OSI RUMP_AF_ISO 221#define RUMP_AF_ECMA 8 222#define RUMP_AF_DATAKIT 9 223#define RUMP_AF_CCITT 10 224#define RUMP_AF_SNA 11 225#define RUMP_AF_DECnet 12 226#define RUMP_AF_DLI 13 227#define RUMP_AF_LAT 14 228#define RUMP_AF_HYLINK 15 229#define RUMP_AF_APPLETALK 16 230#define RUMP_AF_OROUTE 17 231#define RUMP_AF_LINK 18 232#define RUMP_AF_COIP 20 233#define RUMP_AF_CNT 21 234#define RUMP_AF_IPX 23 235#define RUMP_AF_INET6 24 236#define RUMP_AF_ISDN 26 237#define RUMP_AF_E164 RUMP_AF_ISDN 238#define RUMP_AF_NATM 27 239#define RUMP_AF_ARP 28 240#define RUMP_AF_BLUETOOTH 31 241#define RUMP_AF_IEEE80211 32 242#define RUMP_AF_MPLS 33 243#define RUMP_AF_ROUTE 34 244#define RUMP_AF_CAN 35 245#define RUMP_AF_ETHER 36 246#define RUMP_AF_MAX 37 247#define RUMP_PF_UNSPEC RUMP_AF_UNSPEC 248#define RUMP_PF_LOCAL RUMP_AF_LOCAL 249#define RUMP_PF_UNIX RUMP_PF_LOCAL 250#define RUMP_PF_INET RUMP_AF_INET 251#define RUMP_PF_IMPLINK RUMP_AF_IMPLINK 252#define RUMP_PF_PUP RUMP_AF_PUP 253#define RUMP_PF_CHAOS RUMP_AF_CHAOS 254#define RUMP_PF_NS RUMP_AF_NS 255#define RUMP_PF_ISO RUMP_AF_ISO 256#define RUMP_PF_OSI RUMP_AF_ISO 257#define RUMP_PF_ECMA RUMP_AF_ECMA 258#define RUMP_PF_DATAKIT RUMP_AF_DATAKIT 259#define RUMP_PF_CCITT RUMP_AF_CCITT 260#define RUMP_PF_SNA RUMP_AF_SNA 261#define RUMP_PF_DECnet RUMP_AF_DECnet 262#define RUMP_PF_DLI RUMP_AF_DLI 263#define RUMP_PF_LAT RUMP_AF_LAT 264#define RUMP_PF_HYLINK RUMP_AF_HYLINK 265#define RUMP_PF_APPLETALK RUMP_AF_APPLETALK 266#define RUMP_PF_OROUTE RUMP_AF_OROUTE 267#define RUMP_PF_LINK RUMP_AF_LINK 268#define RUMP_PF_XTP pseudo_RUMP_AF_XTP 269#define RUMP_PF_COIP RUMP_AF_COIP 270#define RUMP_PF_CNT RUMP_AF_CNT 271#define RUMP_PF_INET6 RUMP_AF_INET6 272#define RUMP_PF_IPX RUMP_AF_IPX 273#define RUMP_PF_RTIP pseudo_RUMP_AF_RTIP 274#define RUMP_PF_PIP pseudo_RUMP_AF_PIP 275#define RUMP_PF_ISDN RUMP_AF_ISDN 276#define RUMP_PF_E164 RUMP_AF_E164 277#define RUMP_PF_NATM RUMP_AF_NATM 278#define RUMP_PF_ARP RUMP_AF_ARP 279#define RUMP_PF_KEY pseudo_RUMP_AF_KEY 280#define RUMP_PF_BLUETOOTH RUMP_AF_BLUETOOTH 281#define RUMP_PF_MPLS RUMP_AF_MPLS 282#define RUMP_PF_ROUTE RUMP_AF_ROUTE 283#define RUMP_PF_CAN RUMP_AF_CAN 284#define RUMP_PF_ETHER RUMP_AF_ETHER 285#define RUMP_PF_MAX RUMP_AF_MAX 286#define RUMP_SO_DEBUG 0x0001 287#define RUMP_SO_ACCEPTCONN 0x0002 288#define RUMP_SO_REUSEADDR 0x0004 289#define RUMP_SO_KEEPALIVE 0x0008 290#define RUMP_SO_DONTROUTE 0x0010 291#define RUMP_SO_BROADCAST 0x0020 292#define RUMP_SO_USELOOPBACK 0x0040 293#define RUMP_SO_LINGER 0x0080 294#define RUMP_SO_OOBINLINE 0x0100 295#define RUMP_SO_REUSEPORT 0x0200 296#define RUMP_SO_NOSIGPIPE 0x0800 297#define RUMP_SO_ACCEPTFILTER 0x1000 298#define RUMP_SO_TIMESTAMP 0x2000 299#define RUMP_SO_SNDBUF 0x1001 300#define RUMP_SO_RCVBUF 0x1002 301#define RUMP_SO_SNDLOWAT 0x1003 302#define RUMP_SO_RCVLOWAT 0x1004 303#define RUMP_SO_ERROR 0x1007 304#define RUMP_SO_TYPE 0x1008 305#define RUMP_SO_OVERFLOWED 0x1009 306#define RUMP_SO_NOHEADER 0x100a 307#define RUMP_SO_SNDTIMEO 0x100b 308#define RUMP_SO_RCVTIMEO 0x100c 309#define RUMP_SOL_SOCKET 0xffff 310#define RUMP_MSG_OOB 0x0001 311#define RUMP_MSG_PEEK 0x0002 312#define RUMP_MSG_DONTROUTE 0x0004 313#define RUMP_MSG_EOR 0x0008 314#define RUMP_MSG_TRUNC 0x0010 315#define RUMP_MSG_CTRUNC 0x0020 316#define RUMP_MSG_WAITALL 0x0040 317#define RUMP_MSG_DONTWAIT 0x0080 318#define RUMP_MSG_BCAST 0x0100 319#define RUMP_MSG_MCAST 0x0200 320#define RUMP_MSG_NOSIGNAL 0x0400 321#define RUMP_MSG_CRUMP_MSG_CLOEXEC 0x0800 322#define RUMP_MSG_NBIO 0x1000 323#define RUMP_MSG_WAITFORONE 0x2000 324#define RUMP_MSG_NOTIFICATION 0x4000 325#define RUMP_MSG_USERFLAGS 0x0ffffff 326#define RUMP_MSG_NAMEMBUF 0x1000000 327#define RUMP_MSG_CONTROLMBUF 0x2000000 328#define RUMP_MSG_IOVUSRSPACE 0x4000000 329#define RUMP_MSG_LENUSRSPACE 0x8000000 330 331/* NetBSD: in.h,v 1.106 2018/07/11 05:25:45 maxv Exp */ 332#define RUMP_IP_OPTIONS 1 333#define RUMP_IP_HDRINCL 2 334#define RUMP_IP_TOS 3 335#define RUMP_IP_TTL 4 336#define RUMP_IP_RECVOPTS 5 337#define RUMP_IP_RECVRETOPTS 6 338#define RUMP_IP_RECVDSTADDR 7 339#define RUMP_IP_RETOPTS 8 340#define RUMP_IP_MULTICAST_IF 9 341#define RUMP_IP_MULTICAST_TTL 10 342#define RUMP_IP_MULTICAST_LOOP 11 343#define RUMP_IP_ADD_MEMBERSHIP 12 344#define RUMP_IP_DROP_MEMBERSHIP 13 345#define RUMP_IP_PORTALGO 18 346#define RUMP_IP_PORTRANGE 19 347#define RUMP_IP_RECVIF 20 348#define RUMP_IP_ERRORMTU 21 349#define RUMP_IP_IPSEC_POLICY 22 350#define RUMP_IP_RECVTTL 23 351#define RUMP_IP_MINTTL 24 352#define RUMP_IP_PKTINFO 25 353#define RUMP_IP_RECVPKTINFO 26 354#define RUMP_IP_SENDSRCADDR RUMP_IP_RECVDSTADDR 355#define RUMP_IP_DEFAULT_MULTICAST_TTL 1 356#define RUMP_IP_DEFAULT_MULTICAST_LOOP 1 357#define RUMP_IP_MAX_MEMBERSHIPS 20 358#define RUMP_IP_PORTRANGE_DEFAULT 0 359#define RUMP_IP_PORTRANGE_HIGH 1 360#define RUMP_IP_PORTRANGE_LOW 2 361#define RUMP_IPPROTO_IP 0 362#define RUMP_IPPROTO_HOPOPTS 0 363#define RUMP_IPPROTO_ICMP 1 364#define RUMP_IPPROTO_IGMP 2 365#define RUMP_IPPROTO_GGP 3 366#define RUMP_IPPROTO_IPV4 4 367#define RUMP_IPPROTO_IPIP 4 368#define RUMP_IPPROTO_TCP 6 369#define RUMP_IPPROTO_EGP 8 370#define RUMP_IPPROTO_PUP 12 371#define RUMP_IPPROTO_UDP 17 372#define RUMP_IPPROTO_IDP 22 373#define RUMP_IPPROTO_TP 29 374#define RUMP_IPPROTO_DCCP 33 375#define RUMP_IPPROTO_IPV6 41 376#define RUMP_IPPROTO_ROUTING 43 377#define RUMP_IPPROTO_FRAGMENT 44 378#define RUMP_IPPROTO_RSVP 46 379#define RUMP_IPPROTO_GRE 47 380#define RUMP_IPPROTO_ESP 50 381#define RUMP_IPPROTO_AH 51 382#define RUMP_IPPROTO_MOBILE 55 383#define RUMP_IPPROTO_IPV6_ICMP 58 384#define RUMP_IPPROTO_ICMPV6 58 385#define RUMP_IPPROTO_NONE 59 386#define RUMP_IPPROTO_DSTOPTS 60 387#define RUMP_IPPROTO_EON 80 388#define RUMP_IPPROTO_ETHERIP 97 389#define RUMP_IPPROTO_ENCAP 98 390#define RUMP_IPPROTO_PIM 103 391#define RUMP_IPPROTO_IPCOMP 108 392#define RUMP_IPPROTO_VRRP 112 393#define RUMP_IPPROTO_CARP 112 394#define RUMP_IPPROTO_L2TP 115 395#define RUMP_IPPROTO_SCTP 132 396#define RUMP_IPPROTO_PFSYNC 240 397#define RUMP_IPPROTO_RAW 255 398#define RUMP_IPPROTO_MAX 256 399#define RUMP_IPPROTO_DONE 257 400#define RUMP_IPPROTO_MAXID (RUMP_IPPROTO_AH + 1) 401 402/* NetBSD: tcp.h,v 1.33 2017/01/10 20:32:27 christos Exp */ 403#define RUMP_TCP_MSS 536 404#define RUMP_TCP_MINMSS 216 405#define RUMP_TCP_MAXWIN 65535 406#define RUMP_TCP_MAX_WINSHIFT 14 407#define RUMP_TCP_MAXBURST 4 408#define RUMP_TCP_NODELAY 1 409#define RUMP_TCP_MAXSEG 2 410#define RUMP_TCP_KEEPIDLE 3 411#define RUMP_TCP_NOPUSH 4 412#define RUMP_TCP_KEEPINTVL 5 413#define RUMP_TCP_KEEPCNT 6 414#define RUMP_TCP_KEEPINIT 7 415#define RUMP_TCP_NOOPT 8 416#define RUMP_TCP_INFO 9 417#define RUMP_TCP_MD5SIG 0x10 418#define RUMP_TCP_CONGCTL 0x20 419 420/* NetBSD: mount.h,v 1.230 2018/01/09 03:31:13 christos Exp */ 421#define RUMP_MOUNT_FFS "ffs" 422#define RUMP_MOUNT_UFS RUMP_MOUNT_FFS 423#define RUMP_MOUNT_NFS "nfs" 424#define RUMP_MOUNT_MFS "mfs" 425#define RUMP_MOUNT_MSDOS "msdos" 426#define RUMP_MOUNT_LFS "lfs" 427#define RUMP_MOUNT_FDESC "fdesc" 428#define RUMP_MOUNT_NULL "null" 429#define RUMP_MOUNT_OVERLAY "overlay" 430#define RUMP_MOUNT_UMAP "umap" 431#define RUMP_MOUNT_KERNFS "kernfs" 432#define RUMP_MOUNT_PROCFS "procfs" 433#define RUMP_MOUNT_AFS "afs" 434#define RUMP_MOUNT_CD9660 "cd9660" 435#define RUMP_MOUNT_UNION "union" 436#define RUMP_MOUNT_ADOSFS "adosfs" 437#define RUMP_MOUNT_EXT2FS "ext2fs" 438#define RUMP_MOUNT_CFS "coda" 439#define RUMP_MOUNT_CODA RUMP_MOUNT_CFS 440#define RUMP_MOUNT_FILECORE "filecore" 441#define RUMP_MOUNT_NTFS "ntfs" 442#define RUMP_MOUNT_SMBFS "smbfs" 443#define RUMP_MOUNT_PTYFS "ptyfs" 444#define RUMP_MOUNT_TMPFS "tmpfs" 445#define RUMP_MOUNT_UDF "udf" 446#define RUMP_MOUNT_SYSVBFS "sysvbfs" 447#define RUMP_MOUNT_PUFFS "puffs" 448#define RUMP_MOUNT_HFS "hfs" 449#define RUMP_MOUNT_EFS "efs" 450#define RUMP_MOUNT_ZFS "zfs" 451#define RUMP_MOUNT_NILFS "nilfs" 452#define RUMP_MOUNT_RUMPFS "rumpfs" 453#define RUMP_MOUNT_V7FS "v7fs" 454#define RUMP_MOUNT_AUTOFS "autofs" 455 456/* NetBSD: fstypes.h,v 1.36 2018/01/09 03:31:13 christos Exp */ 457#define RUMP_MNT_RDONLY 0x00000001 458#define RUMP_MNT_SYNCHRONOUS 0x00000002 459#define RUMP_MNT_NOEXEC 0x00000004 460#define RUMP_MNT_NOSUID 0x00000008 461#define RUMP_MNT_NODEV 0x00000010 462#define RUMP_MNT_UNION 0x00000020 463#define RUMP_MNT_ASYNC 0x00000040 464#define RUMP_MNT_NOCOREDUMP 0x00008000 465#define RUMP_MNT_RELATIME 0x00020000 466#define RUMP_MNT_IGNORE 0x00100000 467#define RUMP_MNT_DISCARD 0x00800000 468#define RUMP_MNT_EXTATTR 0x01000000 469#define RUMP_MNT_LOG 0x02000000 470#define RUMP_MNT_NOATIME 0x04000000 471#define RUMP_MNT_AUTOMOUNTED 0x10000000 472#define RUMP_MNT_SYMPERM 0x20000000 473#define RUMP_MNT_NODEVMTIME 0x40000000 474#define RUMP_MNT_SOFTDEP 0x80000000 475#define RUMP_MNT_EXRDONLY 0x00000080 476#define RUMP_MNT_EXPORTED 0x00000100 477#define RUMP_MNT_DEFEXPORTED 0x00000200 478#define RUMP_MNT_EXPORTANON 0x00000400 479#define RUMP_MNT_EXKERB 0x00000800 480#define RUMP_MNT_EXNORESPORT 0x08000000 481#define RUMP_MNT_EXPUBLIC 0x10000000 482#define RUMP_MNT_LOCAL 0x00001000 483#define RUMP_MNT_QUOTA 0x00002000 484#define RUMP_MNT_ROOTFS 0x00004000 485#define RUMP_MNT_UPDATE 0x00010000 486#define RUMP_MNT_RELOAD 0x00040000 487#define RUMP_MNT_FORCE 0x00080000 488#define RUMP_MNT_GETARGS 0x00400000 489#define RUMP_MNT_OP_FLAGS (RUMP_MNT_UPDATE|RUMP_MNT_RELOAD|RUMP_MNT_FORCE|RUMP_MNT_GETARGS) 490#define RUMP_MNT_WAIT 1 491#define RUMP_MNT_NOWAIT 2 492#define RUMP_MNT_LAZY 3 493 494/* NetBSD: ioccom.h,v 1.12 2014/12/10 00:16:05 christos Exp */ 495#define RUMP_IOCPARM_MASK 0x1fff 496#define RUMP_IOCPARM_SHIFT 16 497#define RUMP_IOCGROUP_SHIFT 8 498#define RUMP_IOCPARM_LEN(x) (((x) >> RUMP_IOCPARM_SHIFT) & RUMP_IOCPARM_MASK) 499#define RUMP_IOCBASECMD(x) ((x) & ~(RUMP_IOCPARM_MASK << RUMP_IOCPARM_SHIFT)) 500#define RUMP_IOCGROUP(x) (((x) >> RUMP_IOCGROUP_SHIFT) & 0xff) 501#define RUMP_IOCPARM_MAX NBPG 502#define RUMP_IOC_VOID (unsigned long)0x20000000 503#define RUMP_IOC_OUT (unsigned long)0x40000000 504#define RUMP_IOC_IN (unsigned long)0x80000000 505#define RUMP_IOC_INOUT (RUMP_IOC_IN|RUMP_IOC_OUT) 506#define RUMP_IOC_DIRMASK (unsigned long)0xe0000000 507#define _RUMP_IOC(inout, group, num, len) \ 508 ((inout) | (((len) & RUMP_IOCPARM_MASK) << RUMP_IOCPARM_SHIFT) | \ 509 ((group) << RUMP_IOCGROUP_SHIFT) | (num)) 510#define _RUMP_IO(g,n) _RUMP_IOC(RUMP_IOC_VOID, (g), (n), 0) 511#define _RUMP_IOR(g,n,t) _RUMP_IOC(RUMP_IOC_OUT, (g), (n), sizeof(t)) 512#define _RUMP_IOW(g,n,t) _RUMP_IOC(RUMP_IOC_IN, (g), (n), sizeof(t)) 513#define _RUMP_IOWR(g,n,t) _RUMP_IOC(RUMP_IOC_INOUT, (g), (n), sizeof(t)) 514 515/* NetBSD: ktrace.h,v 1.66 2018/04/19 21:19:07 christos Exp */ 516#define RUMP_KTROP_SET 0 517#define RUMP_KTROP_CLEAR 1 518#define RUMP_KTROP_CLEARFILE 2 519#define RUMP_KTROP_MASK 0x3 520#define RUMP_KTR_SHIMLEN offsetof(struct ktr_header, ktr_pid) 521#define RUMP_KTR_SYSCALL 1 522#define RUMP_KTR_SYSRET 2 523#define RUMP_KTR_NAMEI 3 524#define RUMP_KTR_GENIO 4 525#define RUMP_KTR_PSIG 5 526#define RUMP_KTR_CSW 6 527#define RUMP_KTR_EMUL 7 528#define RUMP_KTR_USER 8 529#define RUMP_KTR_USER_MAXIDLEN 20 530#define RUMP_KTR_USER_MAXLEN 2048 531#define RUMP_KTR_EXEC_ARG 10 532#define RUMP_KTR_EXEC_ENV 11 533#define RUMP_KTR_SAUPCALL 13 534#define RUMP_KTR_MIB 14 535#define RUMP_KTR_EXEC_FD 15 536#define RUMP_KTRFAC_MASK 0x00ffffff 537#define RUMP_KTRFAC_SYSCALL (1<<RUMP_KTR_SYSCALL) 538#define RUMP_KTRFAC_SYSRET (1<<RUMP_KTR_SYSRET) 539#define RUMP_KTRFAC_NAMEI (1<<RUMP_KTR_NAMEI) 540#define RUMP_KTRFAC_GENIO (1<<RUMP_KTR_GENIO) 541#define RUMP_KTRFAC_PSIG (1<<RUMP_KTR_PSIG) 542#define RUMP_KTRFAC_CSW (1<<RUMP_KTR_CSW) 543#define RUMP_KTRFAC_EMUL (1<<RUMP_KTR_EMUL) 544#define RUMP_KTRFAC_USER (1<<RUMP_KTR_USER) 545#define RUMP_KTRFAC_EXEC_ARG (1<<RUMP_KTR_EXEC_ARG) 546#define RUMP_KTRFAC_EXEC_ENV (1<<RUMP_KTR_EXEC_ENV) 547#define RUMP_KTRFAC_MIB (1<<RUMP_KTR_MIB) 548#define RUMP_KTRFAC_EXEC_FD (1<<RUMP_KTR_EXEC_FD) 549#define RUMP_KTRFAC_PERSISTENT 0x80000000 550#define RUMP_KTRFAC_INHERIT 0x40000000 551#define RUMP_KTRFAC_TRC_EMUL 0x10000000 552#define RUMP_KTRFAC_VER_MASK 0x0f000000 553#define RUMP_KTRFAC_VER_SHIFT 24 554#define RUMP_KTRFAC_VERSION(tf) (((tf) & RUMP_KTRFAC_VER_MASK) >> RUMP_KTRFAC_VER_SHIFT) 555#define RUMP_KTRFACv0 (0 << RUMP_KTRFAC_VER_SHIFT) 556#define RUMP_KTRFACv1 (1 << RUMP_KTRFAC_VER_SHIFT) 557#define RUMP_KTRFACv2 (2 << RUMP_KTRFAC_VER_SHIFT) 558 559/* NetBSD: module.h,v 1.42 2018/05/28 21:04:40 chs Exp */ 560struct rump_modctl_load { 561 const char *ml_filename; 562 563 int ml_flags; 564 565 const char *ml_props; 566 size_t ml_propslen; 567}; 568enum rump_modctl { 569 RUMP_MODCTL_LOAD, /* modctl_load_t *ml */ 570 RUMP_MODCTL_UNLOAD, /* char *name */ 571 RUMP_MODCTL_STAT, /* struct iovec *buffer */ 572 RUMP_MODCTL_EXISTS /* enum: 0: load, 1: autoload */ 573}; 574 575/* NetBSD: ufsmount.h,v 1.43 2015/03/27 17:27:56 riastradh Exp */ 576struct rump_ufs_args { 577 char *fspec; /* block special device to mount */ 578}; 579 580/* NetBSD: sysvbfs_args.h,v 1.1 2008/09/04 12:07:30 pooka Exp */ 581struct rump_sysvbfs_args { 582 char *fspec; /* blocks special holding the fs to mount */ 583}; 584 585/* NetBSD: dirent.h,v 1.30 2016/01/22 23:31:30 dholland Exp */ 586struct rump_dirent { 587 uint64_t d_fileno; /* file number of entry */ 588 uint16_t d_reclen; /* length of this record */ 589 uint16_t d_namlen; /* length of string in d_name */ 590 uint8_t d_type; /* file type, see below */ 591 char d_name[511 + 1]; /* name must be no longer than this */ 592}; 593 594#endif /* _RUMP_RUMPDEFS_H_ */ 595