| 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 */ |
| 63 | enum 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 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 */ |
| 560 | struct 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 | }; |
| 568 | enum 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 */ |
| 576 | struct 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 */ |
| 581 | struct 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 */ |
| 586 | struct 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 | |