mirror of
https://github.com/jart/cosmopolitan.git
synced 2025-01-31 11:37:35 +00:00
10fd8bdb70
This change resurrects ae5d06dc53
2373 lines
195 KiB
Bash
Executable file
2373 lines
195 KiB
Bash
Executable file
/*bin/echo ' -*- mode:sh; indent-tabs-mode:nil; tab-width:8; coding:utf-8 -*-│
|
||
│vi: set net ft=sh ts=2 sts=2 sw=2 fenc=utf-8 :vi│
|
||
╞══════════════════════════════════════════════════════════════════════════════╡
|
||
│ Copyright 2020 Justine Alexandra Roberts Tunney │
|
||
│ │
|
||
│ Permission to use, copy, modify, and/or distribute this software for │
|
||
│ any purpose with or without fee is hereby granted, provided that the │
|
||
│ above copyright notice and this permission notice appear in all copies. │
|
||
│ │
|
||
│ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL │
|
||
│ WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED │
|
||
│ WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE │
|
||
│ AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL │
|
||
│ DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR │
|
||
│ PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER │
|
||
│ TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR │
|
||
│ PERFORMANCE OF THIS SOFTWARE. │
|
||
╚────────────────────────────────────────────────────────────────'>/dev/null #*/
|
||
dir=libc/sysv/consts
|
||
. libc/sysv/gen.sh
|
||
|
||
# The Fifth Bell System, Community Edition
|
||
# » catalogue of carnage
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon errno ENOSYS 38 78 78 78 78 1 # system call unavailable; bsd consensus; kNtErrorInvalidFunction
|
||
syscon errno EPERM 1 1 1 1 1 12 # operation not permitted; unix consensus; kNtErrorInvalidAccess (should be kNtErrorNotOwner but is that mutex only??); raised by accept(2), acct(2), add_key(2), adjtimex(2), arch_prctl(2), bdflush(2), bpf(2), capget(2), chmod(2), chown(2), chroot(2), clock_getres(2), clone(2), copy_file_range(2), create_module(2), delete_module(2), epoll_ctl(2), execve(2), fallocate(2), fanotify_init(2), fcntl(2), futex(2), get_robust_list(2), getdomainname(2), getgroups(2), gethostname(2), getpriority(2), getrlimit(2), getsid(2), gettimeofday(2), idle(2), init_module(2), io_submit(2), ioctl_console(2), ioctl_ficlonerange(2), ioctl_fideduperange(2), ioctl_ns(2), ioctl_tty(2), ioperm(2), iopl(2), ioprio_set(2), kcmp(2), kexec_load(2), keyctl(2), kill(2), link(2), lookup_dcookie(2), madvise(2), mbind(2), membarrier(2), migrate_pages(2), mkdir(2), mknod(2), mlock(2), mmap(2), mount(2), move_pages(2), msgctl(2), nice(2), open(2), open_by_handle_at(2), pciconfig_read(2), perf_event_open(2), pidfd_getfd(2), pidfd_send_signal(2), pivot_root(2), prctl(2), process_vm_readv(2), ptrace(2), quotactl(2), reboot(2), rename(2), request_key(2), rmdir(2), rt_sigqueueinfo(2), sched_setaffinity(2), sched_setattr(2), sched_setparam(2), sched_setscheduler(2), semctl(2), seteuid(2), setfsgid(2), setfsuid(2), setgid(2), setns(2), setpgid(2), setresuid(2), setreuid(2), setsid(2), setuid(2), setup(2), setxattr(2), shmctl(2), shmget(2), sigaltstack(2), spu_create(2), stime(2), swapon(2), symlink(2), syslog(2), timer_create(2), timerfd_create(2), tkill(2), truncate(2), umount(2), unlink(2), unshare(2), utime(2), utimensat(2), vhangup(2), vm86(2), write(2), unix(7), ip(7)
|
||
syscon errno ENOENT 2 2 2 2 2 2 # no such file or directory; unix consensus; kNtErrorFileNotFound; raised by access(2), acct(2), alloc_hugepages(2), bind(2), bpf(2), chdir(2), chmod(2), chown(2), chroot(2), clock_getres(2), delete_module(2), epoll_ctl(2), execve(2), execveat(2), fanotify_mark(2), getdents(2), inotify_add_watch(2), ioctl_fat(2), kcmp(2), keyctl(2), link(2), mkdir(2), mknod(2), mount(2), msgget(2), open(2), open_by_handle_at(2), perf_event_open(2), query_module(2), quotactl(2), readdir(2), readlink(2), rename(2), rmdir(2), semget(2), shmget(2), spu_create(2), stat(2), statfs(2), statx(2), swapon(2), symlink(2), truncate(2), umount(2), unlink(2), utime(2), utimensat(2), unix(7), ip(7)
|
||
syscon errno ESRCH 3 3 3 3 3 566 # no such process; kNtErrorThreadNotInProcess (cf. kNtErrorInvalidHandle); raised by capget(2), get_robust_list(2), getpriority(2), getrlimit(2), getsid(2), ioprio_set(2), kcmp(2), kill(2), migrate_pages(2), move_pages(2), perf_event_open(2), pidfd_getfd(2), pidfd_open(2), pidfd_send_signal(2), process_vm_readv(2), ptrace(2), quotactl(2), rt_sigqueueinfo(2), sched_rr_get_interval(2), sched_setaffinity(2), sched_setattr(2), sched_setparam(2), sched_setscheduler(2), set_thread_area(2), setpgid(2), tkill(2), utimensat(2), unix(7)
|
||
syscon errno EINTR 4 4 4 4 4 10004 # the greatest of all errnos; crucial for building real time reliable software; unix consensus; WSAEINTR; raised by accept(2), clock_nanosleep(2), close(2), connect(2), dup(2), epoll_wait(2), fallocate(2), fcntl(2), flock(2), futex(2), getrandom(2), io_getevents(2), msgop(2), nanosleep(2), open(2), pause(2), perf_event_open(2), poll(2), ptrace(2), read(2), recv(2), request_key(2), select(2), semop(2), send(2), sigsuspend(2), sigwaitinfo(2), spu_run(2), statfs(2), truncate(2), wait(2), write(2)
|
||
syscon errno EIO 5 5 5 5 5 1117 # unix consensus; kNtErrorIoDevice; raised by access(2) acct(2) chdir(2) chmod(2) chown(2) chroot(2) close(2) copy_file_range(2) execve(2) fallocate(2) fsync(2) ioperm(2) link(2) madvise(2) mbind(2) pciconfig_read(2) ptrace(2) read(2) readlink(2) sendfile(2) statfs(2) symlink(2) sync_file_range(2) truncate(2) unlink(2) write(2)
|
||
syscon errno ENXIO 6 6 6 6 6 1112 # no such device or address; unix consensus; kNtErrorNoMediaInDrive; raised by lseek(2), mount(2), open(2), prctl(2)
|
||
syscon errno E2BIG 7 7 7 7 7 1639 # argument list too long; unix consensus; kNtErrorInvalidCommandLine; raised by bpf(2), execve(2), getxattr(2), listxattr(2), move_pages(2), msgop(2), openat2(2), perf_event_open(2), sched_setattr(2), semop(2)
|
||
syscon errno ENOEXEC 8 8 8 8 8 193 # exec format error; unix consensus; kNtErrorBadExeFormat; raised by execve(2), init_module(2), kexec_load(2), uselib(2)
|
||
syscon errno EBADF 9 9 9 9 9 6 # bad file descriptor; cf. EBADFD; unix consensus; kNtErrorInvalidHandle; raised by accept(2), access(2), bind(2), bpf(2), chdir(2), chmod(2), chown(2), close(2), connect(2), copy_file_range(2), dup(2), epoll_ctl(2), epoll_wait(2), execveat(2), fallocate(2), fanotify_mark(2), fcntl(2), flock(2), fsync(2), futimesat(2), getdents(2), getpeername(2), getsockname(2), getsockopt(2), init_module(2), inotify_add_watch(2), inotify_rm_watch(2), io_submit(2), ioctl(2), ioctl_console(2), ioctl_ficlonerange(2), ioctl_fideduperange(2), ioctl_getfsmap(2), kcmp(2), kexec_load(2), link(2), listen(2), llseek(2), lseek(2), madvise(2), mkdir(2), mknod(2), mmap(2), open(2), open_by_handle_at(2), perf_event_open(2), pidfd_getfd(2), pidfd_send_signal(2), posix_fadvise(2), prctl(2), read(2), readahead(2), readdir(2), readlink(2), recv(2), rename(2), select(2), send(2), sendfile(2), setns(2), shutdown(2), signalfd(2), splice(2), spu_run(2), stat(2), statfs(2), statx(2), symlink(2), sync(2), sync_file_range(2), timerfd_create(2), truncate(2), unlink(2), utimensat(2), vmsplice(2), write(2), unix(7)
|
||
syscon errno ECHILD 10 10 10 10 10 128 # no child process; unix consensus; kNtErrorWaitNoChildren; raised by wait(2), waitpid(2), waitid(2), wait3(2), wait4(2)
|
||
syscon errno EAGAIN 11 35 35 35 35 10035 # resource temporarily unavailable (e.g. SO_RCVTIMEO expired, too many processes, too much memory locked, read or write with O_NONBLOCK needs polling, etc.); bsd consensus; WSAEWOULDBLOCK; raised by accept(2), clone(2), connect(2), eventfd(2), fcntl(2), fork(2), futex(2), getrandom(2), io_cancel(2), io_setup(2), io_submit(2), ioctl_userfaultfd(2), keyctl(2), madvise(2), mincore(2), mlock(2), mmap(2), mremap(2), msgop(2), openat2(2), poll(2), read(2), rt_sigqueueinfo(2), select(2), semop(2), send(2), sendfile(2), setresuid(2), setreuid(2), setuid(2), signalfd(2), sigwaitinfo(2), splice(2), tee(2), timer_create(2), timerfd_create(2), tkill(2), umount(2), vmsplice(2), write(2), ip(7)
|
||
syscon errno ENOMEM 12 12 12 12 12 14 # we require more vespene gas; unix consensus; kNtErrorOutofmemory; raised by access(2), acct(2), add_key(2), bind(2), bpf(2), chdir(2), chmod(2), chown(2), chroot(2), clone(2), copy_file_range(2), create_module(2), epoll_create(2), epoll_ctl(2), eventfd(2), execve(2), fanotify_init(2), fanotify_mark(2), fork(2), getgroups(2), getrlimit(2), init_module(2), inotify_add_watch(2), inotify_init(2), io_setup(2), ioctl_fideduperange(2), ioctl_getfsmap(2), ioperm(2), kexec_load(2), keyctl(2), link(2), lookup_dcookie(2), madvise(2), mbind(2), memfd_create(2), mincore(2), mkdir(2), mknod(2), mlock(2), mmap(2), mount(2), mprotect(2), mremap(2), msgget(2), msgop(2), msync(2), open(2), pidfd_open(2), poll(2), process_vm_readv(2), readlink(2), recv(2), rename(2), request_key(2), rmdir(2), s390_guarded_storage(2), s390_pci_mmio_write(2), s390_runtime_instr(2), s390_sthyi(2), select(2), semget(2), semop(2), send(2), sendfile(2), set_mempolicy(2), setns(2), shmctl(2), shmget(2), shmop(2), sigaltstack(2), signalfd(2), splice(2), spu_create(2), spu_run(2), stat(2), statfs(2), statx(2), subpage_prot(2), swapon(2), symlink(2), sync_file_range(2), tee(2), timer_create(2), timerfd_create(2), umount(2), unlink(2), unshare(2), userfaultfd(2), vmsplice(2), unix(7), ip(7)
|
||
syscon errno EACCES 13 13 13 13 13 5 # permission denied; unix consensus; kNtErrorAccessDenied; raised by access(2), acct(2), add_key(2), bind(2), bpf(2), chdir(2), chmod(2), chown(2), chroot(2), clock_getres(2), connect(2), execve(2), fcntl(2), futex(2), getpriority(2), inotify_add_watch(2), keyctl(2), link(2), madvise(2), mkdir(2), mknod(2), mmap(2), mount(2), move_pages(2), mprotect(2), msgctl(2), msgget(2), msgop(2), open(2), perf_event_open(2), prctl(2), ptrace(2), quotactl(2), readlink(2), rename(2), request_key(2), rmdir(2), semctl(2), semget(2), semop(2), send(2), setpgid(2), shmctl(2), shmget(2), shmop(2), socket(2), spu_create(2), stat(2), statfs(2), statx(2), symlink(2), truncate(2), unlink(2), uselib(2), utime(2), utimensat(2), ip(7)
|
||
syscon errno EFAULT 14 14 14 14 14 487 # pointer passed to system call that would otherwise segfault; unix consensus; kNtErrorInvalidAddress; raised by accept(2), access(2), acct(2), add_key(2), adjtimex(2), arch_prctl(2), bdflush(2), bind(2), bpf(2), cacheflush(2), capget(2), chdir(2), chmod(2), chown(2), chroot(2), clock_getres(2), clock_nanosleep(2), connect(2), create_module(2), delete_module(2), epoll_wait(2), execve(2), fcntl(2), futex(2), get_mempolicy(2), get_robust_list(2), getcpu(2), getdents(2), getdomainname(2), getgroups(2), gethostname(2), getitimer(2), getpeername(2), getrandom(2), getresuid(2), getrlimit(2), getrusage(2), getsockname(2), getsockopt(2), gettimeofday(2), getunwind(2), init_module(2), inotify_add_watch(2), io_cancel(2), io_destroy(2), io_getevents(2), io_setup(2), io_submit(2), ioctl(2), ioctl_getfsmap(2), ioctl_userfaultfd(2), kcmp(2), keyctl(2), link(2), llseek(2), lookup_dcookie(2), mbind(2), memfd_create(2), migrate_pages(2), mincore(2), mkdir(2), mknod(2), mmap2(2), modify_ldt(2), mount(2), move_pages(2), mremap(2), msgctl(2), msgop(2), msync(2), nanosleep(2), open(2), open_by_handle_at(2), perf_event_open(2), pipe(2), poll(2), prctl(2), process_vm_readv(2), ptrace(2), query_module(2), quotactl(2), read(2), readdir(2), readlink(2), reboot(2), recv(2), rename(2), request_key(2), rmdir(2), s390_guarded_storage(2), s390_pci_mmio_write(2), s390_sthyi(2), sched_rr_get_interval(2), sched_setaffinity(2), semctl(2), semop(2), send(2), sendfile(2), set_mempolicy(2), set_thread_area(2), shmctl(2), sigaction(2), sigaltstack(2), sigpending(2), sigprocmask(2), sigsuspend(2), socketpair(2), spu_create(2), spu_run(2), stat(2), statfs(2), statx(2), stime(2), subpage_prot(2), symlink(2), sysctl(2), sysfs(2), sysinfo(2), time(2), timer_settime(2), timerfd_create(2), times(2), truncate(2), umount(2), uname(2), unlink(2), ustat(2), utimensat(2), vm86(2), write(2), unix(7)
|
||
syscon errno ENOTBLK 15 15 15 15 15 26 # block device required; unix consensus; kNtErrorNotDosDisk; raised by mount(2), quotactl(2), umount(2)
|
||
syscon errno EBUSY 16 16 16 16 16 170 # device or resource busy; unix consensus; kNtErrorBusy; raised by bdflush(2), delete_module(2), dup(2), fcntl(2), init_module(2), ioctl_tty(2), ioctl_userfaultfd(2), kexec_load(2), mount(2), msync(2), pivot_root(2), prctl(2), ptrace(2), quotactl(2), rename(2), rmdir(2), sched_setattr(2), swapon(2), umount(2)
|
||
syscon errno EEXIST 17 17 17 17 17 183 # file exists; unix consensus; kNtErrorAlreadyExists (should be kNtErrorFileExists too); raised by bpf(2), create_module(2), epoll_ctl(2), init_module(2), inotify_add_watch(2), keyctl(2), link(2), mkdir(2), mknod(2), mmap(2), msgget(2), open(2), rename(2), rmdir(2), semget(2), setxattr(2), shmget(2), spu_create(2), symlink(2)
|
||
syscon errno EXDEV 18 18 18 18 18 17 # improper link; unix consensus; kNtErrorNotSameDevice; raised by copy_file_range(2), fanotify_mark(2), ioctl_ficlonerange(2), ioctl_fideduperange(2), link(2), openat2(2), rename(2)
|
||
syscon errno ENODEV 19 19 19 19 19 1200 # no such device; unix consensus; kNtErrorBadDevice; raised by arch_prctl(2), eventfd(2), fallocate(2), fanotify_mark(2), mmap(2), mount(2), move_pages(2), open(2), pciconfig_read(2), perf_event_open(2), pidfd_open(2), prctl(2), s390_pci_mmio_write(2), signalfd(2), spu_create(2), timerfd_create(2)
|
||
syscon errno ENOTDIR 20 20 20 20 20 3 # not a directory; unix consensus; kNtErrorPathNotFound; raised by access(2), acct(2), bind(2), chdir(2), chmod(2), chown(2), chroot(2), execve(2), execveat(2), fanotify_mark(2), fcntl(2), futimesat(2), getdents(2), inotify_add_watch(2), ioctl_fat(2), keyctl(2), link(2), mkdir(2), mknod(2), mount(2), open(2), open_by_handle_at(2), pivot_root(2), readdir(2), readlink(2), rename(2), rmdir(2), spu_create(2), stat(2), statfs(2), statx(2), symlink(2), sysctl(2), truncate(2), unlink(2), utimensat(2)
|
||
syscon errno EISDIR 21 21 21 21 21 267 # is a a directory; unix consensus; kNtErrorDirectory; raised by acct(2), copy_file_range(2), execve(2), ioctl_ficlonerange(2), ioctl_fideduperange(2), open(2), read(2), rename(2), truncate(2), unlink(2)
|
||
syscon errno EINVAL 22 22 22 22 22 87 # invalid argument; unix consensus; kNtErrorInvalidParameter; raised by accept(2), access(2), add_key(2), adjtimex(2), arch_prctl(2), bdflush(2), bind(2), bpf(2), cacheflush(2), capget(2), chmod(2), chown(2), clock_getres(2), clock_nanosleep(2), clone(2), copy_file_range(2), create_module(2), dup(2), epoll_create(2), epoll_ctl(2), epoll_wait(2), eventfd(2), execve(2), execveat(2), fallocate(2), fanotify_init(2), fanotify_mark(2), fcntl(2), flock(2), futex(2), get_mempolicy(2), get_robust_list(2), getdents(2), getdomainname(2), getgroups(2), gethostname(2), getitimer(2), getpeername(2), getpriority(2), getrandom(2), getrlimit(2), getrusage(2), getsockname(2), getsockopt(2), gettimeofday(2), init_module(2), inotify_add_watch(2), inotify_init(2), inotify_rm_watch(2), io_cancel(2), io_destroy(2), io_getevents(2), io_setup(2), io_submit(2), ioctl(2), ioctl_console(2), ioctl_ficlonerange(2), ioctl_fideduperange(2), ioctl_getfsmap(2), ioctl_ns(2), ioctl_tty(2), ioctl_userfaultfd(2), ioperm(2), iopl(2), ioprio_set(2), kcmp(2), kexec_load(2), keyctl(2), kill(2), link(2), llseek(2), lookup_dcookie(2), lseek(2), madvise(2), mbind(2), membarrier(2), memfd_create(2), migrate_pages(2), mincore(2), mkdir(2), mknod(2), mlock(2), mmap(2), mmap2(2), modify_ldt(2), mount(2), move_pages(2), mprotect(2), mremap(2), msgctl(2), msgop(2), msync(2), nanosleep(2), open(2), open_by_handle_at(2), openat2(2), pciconfig_read(2), perf_event_open(2), personality(2), pidfd_getfd(2), pidfd_open(2), pidfd_send_signal(2), pipe(2), pivot_root(2), pkey_alloc(2), poll(2), posix_fadvise(2), prctl(2), process_vm_readv(2), ptrace(2), query_module(2), quotactl(2), read(2), readahead(2), readdir(2), readlink(2), readv(2), reboot(2), recv(2), recvmmsg(2), remap_file_pages(2), rename(2), request_key(2), rmdir(2), rt_sigqueueinfo(2), s390_guarded_storage(2), s390_pci_mmio_write(2), s390_runtime_instr(2), s390_sthyi(2), sched_get_priority_max(2), sched_rr_get_interval(2), sched_setaffinity(2), sched_setattr(2), sched_setparam(2), sched_setscheduler(2), seccomp(2), select(2), semctl(2), semget(2), semop(2), send(2), sendfile(2), set_mempolicy(2), set_thread_area(2), seteuid(2), setfsgid(2), setfsuid(2), setgid(2), setns(2), setpgid(2), setresuid(2), setreuid(2), setuid(2), shmctl(2), shmget(2), shmop(2), shutdown(2), sigaction(2), sigaltstack(2), signal(2), signalfd(2), sigprocmask(2), sigsuspend(2), sigwaitinfo(2), socket(2), splice(2), spu_create(2), spu_run(2), stat(2), statx(2), subpage_prot(2), swapon(2), sync_file_range(2), sysfs(2), syslog(2), tee(2), timer_create(2), timer_delete(2), timer_getoverrun(2), timer_settime(2), timerfd_create(2), tkill(2), truncate(2), umount(2), unlink(2), unshare(2), userfaultfd(2), ustat(2), utimensat(2), vmsplice(2), wait(2), write(2), unix(7), ip(7)
|
||
syscon errno ENFILE 23 23 23 23 23 331 # too many open files in system; unix consensus; kNtErrorTooManyDescriptors; raised by accept(2), acct(2), epoll_create(2), eventfd(2), execve(2), futex(2), inotify_init(2), memfd_create(2), mmap(2), open(2), pidfd_getfd(2), pidfd_open(2), pipe(2), shmget(2), signalfd(2), socket(2), socketpair(2), spu_create(2), swapon(2), timerfd_create(2), uselib(2), userfaultfd(2)
|
||
syscon errno EMFILE 24 24 24 24 24 4 # too many open files; unix consensus; kNtErrorTooManyOpenFiles; raised by accept(2), dup(2), epoll_create(2), eventfd(2), execve(2), fanotify_init(2), fcntl(2), inotify_init(2), memfd_create(2), mount(2), open(2), perf_event_open(2), pidfd_getfd(2), pidfd_open(2), pipe(2), signalfd(2), socket(2), socketpair(2), spu_create(2), timerfd_create(2)
|
||
syscon errno ENOTTY 25 25 25 25 25 1118 # inappropriate i/o control operation; unix consensus; kNtErrorSerialNoDevice; raised by ioctl(2), ioctl_console(2), ioctl_fat(2), ioctl_ns(2), ioctl_tty(2)
|
||
syscon errno ETXTBSY 26 26 26 26 26 148 # won't open executable that's executing in write mode; try UnlockExecutable(); unix consensus; kNtErrorPathBusy; raised by access(2), copy_file_range(2), execve(2), fallocate(2), ioctl_ficlonerange(2), ioctl_fideduperange(2), mmap(2), open(2), truncate(2)
|
||
syscon errno EFBIG 27 27 27 27 27 223 # file too large; unix consensus; kNtErrorFileTooLarge; raised by copy_file_range(2), fallocate(2), init_module(2), open(2), semop(2), truncate(2), write(2)
|
||
syscon errno ENOSPC 28 28 28 28 28 39 # no space left on device; unix consensus; kNtErrorDiskFull; raised by copy_file_range(2), epoll_ctl(2), fallocate(2), fanotify_mark(2), fsync(2), inotify_add_watch(2), link(2), mkdir(2), mknod(2), msgget(2), open(2), perf_event_open(2), pkey_alloc(2), query_module(2), rename(2), semget(2), setxattr(2), shmget(2), spu_create(2), symlink(2), sync_file_range(2), write(2)
|
||
syscon errno EDQUOT 122 69 69 69 69 1816 # disk quota exceeded; bsd consensus; kNtErrorNotEnoughQuota; raised by add_key(2), keyctl(2), link(2), mkdir(2), mknod(2), open(2), rename(2), request_key(2), setxattr(2), symlink(2), write(2)
|
||
syscon errno ESPIPE 29 29 29 29 29 25 # invalid seek; unix consensus; kNtErrorSeek; raised by fallocate(2), lseek(2), posix_fadvise(2), sendfile(2), splice(2), sync_file_range(2)
|
||
syscon errno EROFS 30 30 30 30 30 6009 # read-only filesystem; unix consensus; kNtErrorFileReadOnly; raised by access(2), acct(2), bind(2), chmod(2), chown(2), link(2), mkdir(2), mknod(2), mount(2), open(2), rename(2), rmdir(2), symlink(2), truncate(2), unlink(2), utime(2), utimensat(2)
|
||
syscon errno EMLINK 31 31 31 31 31 1142 # too many links; unix consensus; kNtErrorTooManyLinks; raised by link(2), mkdir(2), rename(2)
|
||
syscon errno EPIPE 32 32 32 32 32 109 # broken pipe; unix consensus; kNtErrorBrokenPipe; raised by send(2), write(2), tcp(7), unix(7), ip(7)
|
||
syscon errno EDOM 33 33 33 33 33 33 # mathematics argument out of domain of function; bsd consensus; fudged on NT; returned by cos(3), fmod(3), log1p(3), sin(3), tan(3), tgamma(3)
|
||
syscon errno ERANGE 34 34 34 34 34 34 # result too large; bsd consensus; fudged on NT; raised by getxattr(2), listxattr(2), lookup_dcookie(2), prctl(2), quotactl(2), semctl(2), semop(2), setxattr(2)
|
||
syscon errno EDEADLK 35 11 11 11 11 1131 # resource deadlock avoided; bsd consensus; kNtErrorPossibleDeadlock; raised by fcntl(2), keyctl(2)
|
||
syscon errno ENAMETOOLONG 36 63 63 63 63 10063 # filename too long; bsd consensus; WSAENAMETOOLONG; raised by access(2), acct(2), bind(2), chdir(2), chmod(2), chown(2), chroot(2), execve(2), gethostname(2), inotify_add_watch(2), link(2), lookup_dcookie(2), mkdir(2), mknod(2), mount(2), open(2), readlink(2), rename(2), rmdir(2), spu_create(2), stat(2), statfs(2), statx(2), symlink(2), truncate(2), umount(2), unlink(2), utimensat(2)
|
||
syscon errno ENOLCK 37 77 77 77 77 0 # no locks available; bsd consensus; raised by fcntl(2), flock(2)
|
||
syscon errno ENOTEMPTY 39 66 66 66 66 145 # directory not empty; bsd consensus; kNtErrorDirNotEmpty (TODO: What is WSAENOTEMPTY? 10066); raised by rmdir(2)
|
||
syscon errno ELOOP 40 62 62 62 62 1921 # too many levels of symbolic links; bsd consensus; kNtErrorCantResolveFilename; raised by access(2), acct(2), bind(2), chdir(2), chmod(2), chown(2), chroot(2), epoll_ctl(2), execve(2), execveat(2), keyctl(2), link(2), mkdir(2), mknod(2), mount(2), open(2), open_by_handle_at(2), openat2(2), readlink(2), rename(2), rmdir(2), spu_create(2), stat(2), statfs(2), statx(2), symlink(2), truncate(2), unlink(2), utimensat(2)
|
||
syscon errno ENOMSG 42 91 83 90 83 0 # raised by msgop(2)
|
||
syscon errno EIDRM 43 90 82 89 82 0 # identifier removed; raised by msgctl(2), msgget(2), msgop(2), semctl(2), semop(2), shmctl(2), shmget(2), shmop(2)
|
||
syscon errno ETIME 62 101 60 60 92 0 # timer expired; timer expired; raised by connect(2), futex(2), keyctl(2), mq_receive(2), mq_send(2), rtime(2), sem_wait(2)
|
||
syscon errno EPROTO 71 100 92 95 96 0 # raised by accept(2), connect(2), socket(2), socketpair(2)
|
||
syscon errno EOVERFLOW 75 84 84 87 84 0 # raised by aio_read(2), copy_file_range(2), ctime(2), fanotify_init(2), lseek(2), mmap(2), open(2), open_by_handle_at(2), sem_post(2), sendfile(2), shmctl(2), stat(2), statfs(2), statvfs(2), time(2), timegm(2)
|
||
syscon errno EILSEQ 84 92 86 84 85 0 # returned by fgetwc(3), fputwc(3), getwchar(3), putwchar(3), scanf(3), ungetwc(3)
|
||
syscon errno EUSERS 87 68 68 68 68 10068 # too many users; bsd consensus; WSAEUSERS; raised by acct(2)
|
||
syscon errno ENOTSOCK 88 38 38 38 38 10038 # not a socket; bsd consensus; WSAENOTSOCK; raised by accept(2), bind(2), connect(2), getpeername(2), getsockname(2), getsockopt(2), listen(2), recv(2), send(2), shutdown(2)
|
||
syscon errno EDESTADDRREQ 89 39 39 39 39 10039 # destination address required; bsd consensus; WSAEDESTADDRREQ; raised by send(2), write(2)
|
||
syscon errno EMSGSIZE 90 40 40 40 40 10040 # message too long; bsd consensus; WSAEMSGSIZE; raised by keyctl(2), send(2), ip(7)
|
||
syscon errno EPROTOTYPE 91 41 41 41 41 10041 # protocol wrong type for socket; bsd consensus; WSAEPROTOTYPE; raised by connect(2), unix(7)
|
||
syscon errno ENOPROTOOPT 92 42 42 42 42 10042 # protocol not available; bsd consensus; WSAENOPROTOOPT; raised by getsockopt(2), accept(2), ip(7)
|
||
syscon errno EPROTONOSUPPORT 93 43 43 43 43 10043 # protocol not supported; bsd consensus; WSAEPROTONOSUPPORT; raised by socket(2), socketpair(2), unix(7)
|
||
syscon errno ESOCKTNOSUPPORT 94 44 44 44 44 10044 # socket type not supported; bsd consensus; WSAESOCKTNOSUPPORT; raised by unix(7), ip(7)
|
||
syscon errno ENOTSUP 95 45 45 91 86 10045 # operation not supported; raised by chmod(2), clock_getres(2), clock_nanosleep(2), getxattr(2), listxattr(2), removexattr(2), setxattr(2), timer_create(2)
|
||
syscon errno EOPNOTSUPP 95 102 45 45 45 10045 # socket operation not supported; raised by accept(2), fallocate(2), fanotify_mark(2), ioctl_ficlonerange(2), ioctl_fideduperange(2), ioctl_getfsmap(2), keyctl(2), listen(2), mmap(2), open_by_handle_at(2), pciconfig_read(2), perf_event_open(2), prctl(2), readv(2), s390_guarded_storage(2), s390_runtime_instr(2), s390_sthyi(2), send(2), socketpair(2), unix(7), ip(7)
|
||
syscon errno EPFNOSUPPORT 96 46 46 46 46 10046 # protocol family not supported; bsd consensus; WSAEPFNOSUPPORT
|
||
syscon errno EAFNOSUPPORT 97 47 47 47 47 10047 # address family not supported; bsd consensus; WSAEAFNOSUPPORT; raised by connect(2), socket(2), socketpair(2), tcp(7)
|
||
syscon errno EADDRINUSE 98 48 48 48 48 10048 # address already in use; bsd consensus; WSAEADDRINUSE; raised by bind(2), connect(2), listen(2), unix(7), ip(7)
|
||
syscon errno EADDRNOTAVAIL 99 49 49 49 49 10049 # address not available; bsd consensus; WSAEADDRNOTAVAIL; raised by bind(2), connect(2), kexec_load(2), ip(7)
|
||
syscon errno ENETDOWN 100 50 50 50 50 10050 # network is down; bsd consensus; WSAENETDOWN; raised by accept(2)
|
||
syscon errno ENETUNREACH 101 51 51 51 51 10051 # host is unreachable; bsd consensus; WSAENETUNREACH; raised by accept(2), connect(2)
|
||
syscon errno ENETRESET 102 52 52 52 52 10052 # connection reset by network; bsd consensus; WSAENETRESET
|
||
syscon errno ECONNABORTED 103 53 53 53 53 10053 # connection reset before accept; bsd consensus; WSAECONNABORTED; raised by accept(2)
|
||
syscon errno ECONNRESET 104 54 54 54 54 10054 # connection reset by client; bsd consensus; WSAECONNRESET; raised by send(2), unix(7)
|
||
syscon errno ENOBUFS 105 55 55 55 55 10055 # no buffer space available; bsd consensus; WSAENOBUFS; raised by getpeername(2), getsockname(2), send(2), ip(7)
|
||
syscon errno EISCONN 106 56 56 56 56 10056 # socket is connected; bsd consensus; WSAEISCONN; raised by connect(2), send(2), unix(7), ip(7)
|
||
syscon errno ENOTCONN 107 57 57 57 57 10057 # socket is not connected; bsd consensus; WSAENOTCONN; raised by getpeername(2), recv(2), send(2), shutdown(2), ip(7)
|
||
syscon errno ESHUTDOWN 108 58 58 58 58 10058 # cannot send after transport endpoint shutdown; note that shutdown write is an EPIPE; bsd consensus; WSAESHUTDOWN
|
||
syscon errno ETOOMANYREFS 109 59 59 59 59 10059 # too many references: cannot splice; bsd consensus; WSAETOOMANYREFS; raised by sendmsg(2), unix(7)
|
||
syscon errno ETIMEDOUT 110 60 60 60 60 10060 # connection timed out; bsd consensus; WSAETIMEDOUT; raised by connect(2), futex(2), keyctl(2), tcp(7)
|
||
syscon errno ECONNREFUSED 111 61 61 61 61 10061 # bsd consensus; WSAECONNREFUSED; raised by connect(2), listen(2), recv(2), unix(7), udp(7)system-imposed limit on the number of threads was encountered.
|
||
syscon errno EHOSTDOWN 112 64 64 64 64 10064 # bsd consensus; WSAEHOSTDOWN; raised by accept(2)
|
||
syscon errno EHOSTUNREACH 113 65 65 65 65 10065 # bsd consensus; WSAEHOSTUNREACH; raised by accept(2), ip(7)
|
||
syscon errno EALREADY 114 37 37 37 37 10037 # connection already in progress; bsd consensus; WSAEALREADY; raised by connect(2), send(2), ip(7)
|
||
syscon errno EINPROGRESS 115 36 36 36 36 10036 # bsd consensus; WSAEINPROGRESS; raised by connect(2) w/ O_NONBLOCK
|
||
syscon errno ESTALE 116 70 70 70 70 10070 # bsd consensus; WSAESTALE; raised by open_by_handle_at(2)
|
||
syscon errno EREMOTE 66 71 71 71 71 10071 # bsd consensus
|
||
syscon errno EBADRPC 0 72 72 72 72 0 # bsd consensus
|
||
syscon errno ERPCMISMATCH 0 73 73 73 73 0 # bsd consensus
|
||
syscon errno EPROGUNAVAIL 0 74 74 74 74 0 # bsd consensus
|
||
syscon errno EPROGMISMATCH 0 75 75 75 75 0 # bsd consensus
|
||
syscon errno EPROCUNAVAIL 0 76 76 76 76 0 # bsd consensus
|
||
syscon errno EFTYPE 0 79 79 79 79 0 # bsd consensus
|
||
syscon errno EAUTH 0 80 80 80 80 0 # bsd consensus
|
||
syscon errno ENEEDAUTH 0 81 81 81 81 0 # bsd consensus
|
||
syscon errno EPROCLIM 0 67 67 67 67 10067 # bsd consensus
|
||
syscon errno ENOATTR 0 93 87 83 93 0 #
|
||
syscon errno EPWROFF 0 82 0 0 0 0 #
|
||
syscon errno EDEVERR 0 83 0 0 0 0 #
|
||
syscon errno EBADEXEC 0 85 0 0 0 0 #
|
||
syscon errno EBADARCH 0 86 0 0 0 0 #
|
||
syscon errno ESHLIBVERS 0 87 0 0 0 0 # shiver me timbers
|
||
syscon errno EBADMACHO 0 88 0 0 0 0 #
|
||
syscon errno ENOPOLICY 0 103 0 0 0 0 #
|
||
syscon errno EBADMSG 74 94 89 92 88 0 # raised by ioctl_getfsmap(2)
|
||
syscon errno ECANCELED 125 89 85 88 87 0 # raised by timerfd_create(2)
|
||
syscon errno EOWNERDEAD 130 105 96 94 97 0 # raised by pthread_cond_timedwait(3), pthread_mutex_consistent(3), pthread_mutex_getprioceiling(3), pthread_mutex_lock(3), pthread_mutex_timedlock(3), pthread_mutexattr_getrobust(3), pthread_mutexattr_setrobust(3)
|
||
syscon errno ENOTRECOVERABLE 131 104 95 93 98 0 # raised by pthread_cond_timedwait(3), pthread_mutex_consistent(3), pthread_mutex_getprioceiling(3), pthread_mutex_lock(3), pthread_mutex_timedlock(3), pthread_mutexattr_getrobust(3), pthread_mutexattr_setrobust(3)
|
||
syscon errno ENONET 64 0 0 0 0 0 # unilateral; raised by accept(2)
|
||
syscon errno ERESTART 85 -1 -1 -1 -3 0 # should only be seen in ptrace()
|
||
syscon errno ENODATA 61 96 0 0 89 232 # no message is available in xsi stream or named pipe is being closed; no data available; barely in posix; returned by ioctl; very close in spirit to EPIPE?
|
||
syscon errno ENOSR 63 98 0 90 90 0 # out of streams resources; something like EAGAIN; it's in POSIX; maybe some commercial UNIX returns it with openat, putmsg, putpmsg, posix_openpt, ioctl, open
|
||
syscon errno ENOSTR 60 99 0 0 91 0 # not a stream; returned by getmsg, putmsg, putpmsg, getpmsg
|
||
syscon errno EMULTIHOP 72 95 90 0 94 0 # barely in posix
|
||
syscon errno ENOLINK 67 97 91 0 95 0 # barely in posix
|
||
syscon errno ENOMEDIUM 123 0 0 85 0 0 # not posix; not documented
|
||
syscon errno EMEDIUMTYPE 124 0 0 86 0 0 # not posix; not documented
|
||
syscon errno EBADFD 77 9 0 0 0 0 # file descriptor in bad state
|
||
syscon compat EWOULDBLOCK 11 35 35 35 35 10035 # same as EAGAIN on every platform we've seen
|
||
|
||
# signals
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon sig SIGHUP 1 1 1 1 1 1 # terminal hangup or daemon reload; resumable; auto-broadcasted to process group; unix consensus & faked on nt
|
||
syscon sig SIGINT 2 2 2 2 2 2 # terminal ctrl-c keystroke; resumable; auto-broadcasted to process group; unix consensus & faked on nt; X3.159-1988
|
||
syscon sig SIGQUIT 3 3 3 3 3 3 # terminal ctrl-\ keystroke; resumable; unix consensus & faked on nt
|
||
syscon sig SIGILL 4 4 4 4 4 4 # illegal instruction; unresumable (unless you longjmp() or edit ucontex->rip+=ild(ucontex->rip)); unix consensus & faked on nt; X3.159-1988
|
||
syscon sig SIGTRAP 5 5 5 5 5 5 # int3 instruction; resumable; unix consensus & faked on nt
|
||
syscon sig SIGABRT 6 6 6 6 6 6 # process aborted; resumable; unix consensus & faked on nt; X3.159-1988
|
||
syscon sig SIGBUS 7 10 10 10 10 7 # valid memory access that went beyond underlying end of file; bsd consensus
|
||
syscon sig SIGFPE 8 8 8 8 8 8 # illegal math; unresumable (unless you longjmp() or edit ucontex->rip+=ild(ucontex->rip)); unix consensus & faked on nt; X3.159-1988
|
||
syscon sig SIGKILL 9 9 9 9 9 9 # terminate with extreme prejudice; unreceivable; unix consensus & faked on nt
|
||
syscon sig SIGUSR1 10 30 30 30 30 10 # do whatever you want; bsd consensus
|
||
syscon sig SIGSEGV 11 11 11 11 11 11 # invalid memory access; unresumable (unless you longjmp() or edit ucontex->rip+=ild(ucontex->rip)); unix consensus & faked on nt; X3.159-1988
|
||
syscon sig SIGUSR2 12 31 31 31 31 12 # do whatever you want; bsd consensus
|
||
syscon sig SIGPIPE 13 13 13 13 13 13 # write to closed file descriptor; unix consensus & faked on nt
|
||
syscon sig SIGALRM 14 14 14 14 14 14 # sent by setitimer(2) or timer_settime(2); unix consensus & faked on nt
|
||
syscon sig SIGTERM 15 15 15 15 15 15 # terminate; resumable; unix consensus & faked on nt; X3.159-1988
|
||
syscon sig SIGSTKFLT 16 0 0 0 0 0 # wut
|
||
syscon sig SIGCHLD 17 20 20 20 20 17 # child process exited or terminated and is now a zombie (unless this is SIG_IGN or SA_NOCLDWAIT) or child process stopped due to terminal i/o or profiling/debugging (unless you used SA_NOCLDSTOP); bsd consensus
|
||
syscon sig SIGCONT 18 19 19 19 19 18 # child process resumed from profiling/debugging; bsd consensus
|
||
syscon sig SIGSTOP 19 17 17 17 17 19 # child process stopped due to profiling/debugging; bsd consensus
|
||
syscon sig SIGTSTP 20 18 18 18 18 20 # terminal ctrl-z keystroke; bsd consensus
|
||
syscon sig SIGTTIN 21 21 21 21 21 21 # terminal input for background process; resumable; unix consensus & faked on nt
|
||
syscon sig SIGTTOU 22 22 22 22 22 22 # terminal output for background process; resumable; unix consensus & faked on nt
|
||
syscon sig SIGURG 23 16 16 16 16 23 # bsd consensus
|
||
syscon sig SIGXCPU 24 24 24 24 24 24 # cpu time limit exceeded; unix consensus & faked on nt
|
||
syscon sig SIGXFSZ 25 25 25 25 25 25 # file size limit exceeded; unix consensus & faked on nt
|
||
syscon sig SIGVTALRM 26 26 26 26 26 26 # virtual alarm clock; wut; unix consensus & faked on nt
|
||
syscon sig SIGPROF 27 27 27 27 27 27 # profiling timer expired; unix consensus & faked on nt
|
||
syscon sig SIGWINCH 28 28 28 28 28 28 # terminal resized; unix consensus & faked on nt
|
||
syscon sig SIGIO 29 23 23 23 23 29 # bsd consensus
|
||
syscon sig SIGSYS 31 12 12 12 12 31 # wut; bsd consensus
|
||
syscon sig SIGINFO 0 29 29 29 29 0 # bsd consensus
|
||
syscon sig SIGRTMAX 64 0 126 0 63 0
|
||
syscon sig SIGRTMIN 32 0 65 0 33 0
|
||
syscon sig SIGEMT 0 7 7 7 7 0 # not implemented in most community editions of system five; consider doing this using SIGUSR1 or SIGUSR2 instead
|
||
syscon sig SIGPWR 30 30 30 30 32 30 # not implemented in most community editions of system five; consider doing this using SIGUSR1 or SIGUSR2 instead
|
||
syscon compat SIGPOLL 29 23 23 23 23 29 # same as SIGIO
|
||
syscon compat SIGIOT 6 6 6 6 6 6 # PDP-11 feature; same as SIGABRT
|
||
|
||
# open() flags
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD Windoze Commentary
|
||
syscon open O_RDONLY 0 0 0 0 0 0 # consensus
|
||
syscon open O_WRONLY 1 1 1 1 1 1 # consensus
|
||
syscon open O_RDWR 2 2 2 2 2 2 # consensus
|
||
syscon open O_ACCMODE 3 3 3 3 3 3 # O_RDONLY|O_WRONLY|O_RDWR
|
||
syscon open O_APPEND 0x00000400 8 8 8 8 0x00000400 # bsd consensus & kNtFileAppendData; won't pose issues w/ mknod(S_IFIFO) [SYNC libc/calls/open-nt.c]
|
||
syscon open O_CREAT 0x00000040 0x00000200 0x00000200 0x00000200 0x00000200 0x00000040 # bsd consensus & NT faked as Linux [SYNC libc/calls/open-nt.c]
|
||
syscon open O_EXCL 0x00000080 0x00000800 0x00000800 0x00000800 0x00000800 0x00000080 # bsd consensus & NT faked as Linux [SYNC libc/calls/open-nt.c]
|
||
syscon open O_TRUNC 0x00000200 0x00000400 0x00000400 0x00000400 0x00000400 0x00000200 # bsd consensus & NT faked as Linux [SYNC libc/calls/open-nt.c]
|
||
syscon open O_DIRECTORY 0x00010000 0x00100000 0x00020000 0x00020000 0x00200000 0x00010000 # useful hint on UNIX, but required on NT (see kNtFileFlagBackupSemantics) [SYNC libc/calls/open-nt.c]
|
||
syscon open O_NOFOLLOW 0x00020000 0x00000100 0x00000100 0x00000100 0x00000100 0x00020000 # bsd consensus; kNtFileFlagOpenReparsePoint
|
||
syscon open O_DIRECT 0x00004000 0 0x00010000 0 0x00080000 0x00004000 # kNtFileFlagNoBuffering [SYNC libc/calls/open-nt.c]
|
||
syscon open O_NDELAY 0x00000800 0x00000004 0x00000004 0x00000004 0x00000004 0x00000800 # kNtFileFlagWriteThrough [SYNC libc/calls/open-nt.c]
|
||
syscon open O_RANDOM 0 0 0 0 0 0x80000000 # kNtFileFlagRandomAccess [SYNC libc/calls/open-nt.c]
|
||
syscon open O_SEQUENTIAL 0 0 0 0 0 0x40000000 # kNtFileFlagSequentialScan [SYNC libc/calls/open-nt.c]
|
||
syscon open O_COMPRESSED 0 0 0 0 0 0x20000000 # kNtFileAttributeCompressed [SYNC libc/calls/open-nt.c]
|
||
syscon open O_INDEXED 0 0 0 0 0 0x10000000 # !kNtFileAttributeNotContentIndexed [SYNC libc/calls/open-nt.c]
|
||
syscon open O_CLOEXEC 0x00080000 0x01000000 0x00100000 0x00010000 0x00400000 0x00080000 # NT faked as Linux [SYNC libc/calls/open-nt.c]
|
||
syscon open O_TMPFILE 0x00410000 0 0 0 0 0x00410000 # Linux 3.11+ (c. 2013) __O_TMPFILE | O_DIRECTORY; kNtFileAttributeTemporary|kNtFileFlagDeleteOnClose [SYNC libc/calls/open-nt.c]
|
||
syscon open O_SPARSE 0 0 0 0 0 0 # wut
|
||
syscon open O_NONBLOCK 0x00000800 0x00000004 0x00000004 0x00000004 0x00000004 0x00000800 # bsd consensus
|
||
syscon open O_ASYNC 0x00002000 0x00000040 0x00000040 0x00000040 0x00000040 0 # bsd consensus
|
||
syscon open O_NOFOLLOW_ANY 0 0x20000000 0 0 0 0 #
|
||
syscon open O_SYNC 0x00101000 0x00000080 0x00000080 0x00000080 0x00000080 0 # bsd consensus
|
||
syscon open O_NOCTTY 0x00000100 0x00020000 0x00008000 0x00008000 0x00008000 0 # used for remote viewing (default behavior on freebsd)
|
||
syscon open O_NOATIME 0x00040000 0 0 0 0 0 # optimize away access time update
|
||
syscon open O_EXEC 0 0 0x00040000 0 0x04000000 0 # it's specified by posix what does it mean
|
||
syscon open O_SEARCH 0 0 0x00040000 0 0x00800000 0 # it's specified by posix what does it mean
|
||
syscon open O_DSYNC 0x00001000 0x00400000 0 0x00000080 0x00010000 0 #
|
||
syscon open O_RSYNC 0x00101000 0 0 0x00000080 0x00020000 0 #
|
||
syscon open O_PATH 0x00200000 0 0 0 0 0 # Linux 2.6.39+
|
||
syscon open O_VERIFY 0 0 0x00200000 0 0 0 #
|
||
syscon open O_SHLOCK 0 0x00000010 0x00000010 0x00000010 0x00000010 0 #
|
||
syscon open O_EXLOCK 0 0x00000020 0x00000020 0x00000020 0x00000020 0 #
|
||
syscon open O_TTY_INIT 0 0 0x00080000 0 0 0 #
|
||
syscon compat O_LARGEFILE 0 0 0 0 0 0 #
|
||
|
||
# mmap() flags
|
||
# the revolutionary praxis of malloc()
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon mmap MAP_FILE 0 0 0 0 0 0 # consensus
|
||
syscon mmap MAP_SHARED 1 1 1 1 1 1 # forced consensus & faked nt
|
||
syscon mmap MAP_SHARED_VALIDATE 3 1 1 1 1 1 # weird linux thing
|
||
syscon mmap MAP_PRIVATE 2 2 2 2 2 2 # forced consensus & faked nt
|
||
syscon mmap MAP_STACK 6 6 6 6 6 6 # our definition
|
||
syscon mmap MAP_TYPE 15 15 15 15 15 15 # mask for type of mapping
|
||
syscon mmap MAP_FIXED 0x00000010 0x00000010 0x00000010 0x00000010 0x00000010 0x00000010 # unix consensus; openbsd appears to forbid; faked nt
|
||
syscon mmap MAP_FIXED_NOREPLACE 0x08000000 0x00004010 0x08000000 0x08000000 0x08000000 0x08000000 # handled and defined by cosmo runtime; 0x100000 on linux 4.7+; MAP_FIXED|MAP_EXCL on FreeBSD
|
||
syscon mmap MAP_ANONYMOUS 0x00000020 0x00001000 0x00001000 0x00001000 0x00001000 0x00000020 # bsd consensus; faked nt
|
||
syscon mmap MAP_GROWSDOWN 0x00000100 0 0 0 0 0 # use MAP_STACK; abstracted by MAP_STACK; may be passed to __sys_mmap() for low-level Linux fiddling
|
||
syscon mmap MAP_LOCKED 0x00002000 0 0 0 0 0
|
||
syscon mmap MAP_NORESERVE 0x00004000 0x00000040 0 0 0x00000040 0 # Linux calls it "reserve"; NT calls it "commit"? which is default?
|
||
syscon mmap MAP_POPULATE 0x00008000 0 0x00040000 0 0 0 # MAP_PREFAULT_READ on FreeBSD; can avoid madvise(MADV_WILLNEED) on private file mapping
|
||
syscon mmap MAP_NONBLOCK 0x00010000 0 0 0 0 0
|
||
syscon mmap MAP_HUGETLB 0x00040000 0 0 0 0 0x80000000 # kNtSecLargePages
|
||
syscon mmap MAP_SYNC 0x00080000 0 0 0 0 0 # perform synchronous page faults for mapping (Linux 4.15+)
|
||
syscon mmap MAP_INHERIT -1 -1 -1 -1 0x00000080 -1 # make it inherit across execve()
|
||
syscon mmap MAP_HASSEMAPHORE 0 0x00000200 0x00000200 0 0x00000200 0 # does it matter on x86?
|
||
syscon mmap MAP_NOSYNC 0 0 0x00000800 0 0 0 # flush to physical media only when necessary rather than gratuitously; be sure to use write() rather than ftruncate() with this!
|
||
syscon mmap MAP_CONCEAL 0 0 0x00020000 0x00008000 0x00008000 0 # omit from core dumps; MAP_NOCORE on FreeBSD
|
||
syscon mmap MAP_HUGE_MASK 63 0 0 0 0 0
|
||
syscon mmap MAP_HUGE_SHIFT 26 0 0 0 0 0
|
||
syscon compat MAP_NOCORE 0 0 0x00020000 0x00008000 0x00008000 0 # use MAP_CONCEAL
|
||
syscon compat MAP_ANON 0x00000020 0x00001000 0x00001000 0x00001000 0x00001000 0x00000020 # bsd consensus; faked nt
|
||
syscon compat MAP_EXECUTABLE 0x00001000 0 0 0 0 0 # ignored
|
||
syscon compat MAP_DENYWRITE 0x00000800 0 0 0 0 0
|
||
syscon compat MAP_32BIT 0x00000040 0 0x00080000 0 0 0 # iffy
|
||
|
||
# madvise() flags
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon madv MADV_NORMAL 0 0 0 0 0 0 # consensus
|
||
syscon compat POSIX_FADV_NORMAL 0 0 0 0 0 0 # consensus
|
||
syscon compat POSIX_MADV_NORMAL 0 0 0 0 0 0 # consensus
|
||
syscon madv MADV_DONTNEED 4 4 4 4 4 127 # TODO(jart): weird nt decommit thing?
|
||
syscon compat POSIX_MADV_DONTNEED 4 4 4 4 4 127 # unix consensus
|
||
syscon compat POSIX_FADV_DONTNEED 4 127 4 4 4 127 # unix consensus
|
||
syscon madv MADV_RANDOM 1 1 1 1 1 1 # unix consensus
|
||
syscon compat POSIX_MADV_RANDOM 1 1 1 1 1 1 # unix consensus
|
||
syscon compat POSIX_FADV_RANDOM 1 127 1 1 1 1 # unix consensus
|
||
syscon madv MADV_SEQUENTIAL 2 2 2 2 2 2 # unix consensus
|
||
syscon compat POSIX_MADV_SEQUENTIAL 2 2 2 2 2 2 # unix consensus
|
||
syscon compat POSIX_FADV_SEQUENTIAL 2 127 2 2 2 2 # TODO(jart): double check xnu
|
||
syscon madv MADV_WILLNEED 3 3 3 3 3 3 # unix consensus (faked on NT)
|
||
syscon compat POSIX_MADV_WILLNEED 3 3 3 3 3 3 # unix consensus
|
||
syscon compat POSIX_FADV_WILLNEED 3 127 3 3 3 3 # TODO(jart): double check xnu
|
||
syscon madv MADV_MERGEABLE 12 127 127 127 127 127 # turns on (private anon range) page scanning and merging service (linux only)
|
||
syscon madv MADV_UNMERGEABLE 13 127 127 127 127 127 # turns off mergeable (linux only)
|
||
syscon madv MADV_FREE 8 5 5 6 6 8 # Linux 4.5+ (c. 2016) / NT Faked → VMOfferPriorityNormal (Win8+)
|
||
syscon madv MADV_HUGEPAGE 14 127 127 127 127 127 # TODO(jart): why would we need it?
|
||
syscon madv MADV_NOHUGEPAGE 15 127 127 127 127 127 # TODO(jart): why would we need it?
|
||
syscon madv MADV_DODUMP 17 127 127 127 127 127 # TODO(jart): what is it?
|
||
syscon madv MADV_DOFORK 11 127 127 127 127 127 # TODO(jart): what is it?
|
||
syscon madv MADV_DONTDUMP 16 127 127 127 127 127 # see MAP_CONCEAL in OpenBSD; TODO(jart): what is it?
|
||
syscon madv MADV_DONTFORK 10 127 127 127 127 127 # TODO(jart): what is it?
|
||
syscon madv MADV_HWPOISON 100 127 127 127 127 127 # TODO(jart): what is it?
|
||
syscon madv MADV_REMOVE 9 127 127 127 127 127 # TODO(jart): what is it?
|
||
syscon fadv POSIX_FADV_NOREUSE 5 127 5 127 5 127 # wut
|
||
|
||
# mmap(), mprotect(), etc.
|
||
# digital restrictions management for the people
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon mprot PROT_NONE 0 0 0 0 0 0 # mmap, mprotect, unix consensus (nt needs special business logic here)
|
||
syscon mprot PROT_READ 1 1 1 1 1 1 # mmap, mprotect, unix consensus
|
||
syscon mprot PROT_WRITE 2 2 2 2 2 2 # mmap, mprotect, unix consensus
|
||
syscon mprot PROT_EXEC 4 4 4 4 4 4 # mmap, mprotect, unix consensus
|
||
syscon mprot PROT_GROWSDOWN 0x01000000 0 0 0 0 0 # intended for mprotect; see MAP_GROWSDOWN for mmap() (todo: what was 0x01000000 on nt)
|
||
syscon mprot PROT_GROWSUP 0x02000000 0 0 0 0 0 # intended for mprotect; see MAP_GROWSDOWN for mmap()
|
||
|
||
# mremap() flags
|
||
# the revolutionary praxis of realloc()
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon mremap MREMAP_MAYMOVE 1 1 1 1 1 1 # faked non-linux (b/c linux only)
|
||
syscon mremap MREMAP_FIXED 2 2 2 2 2 2 # faked non-linux (b/c linux only)
|
||
|
||
# sigprocmask() flags
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon misc SIG_BLOCK 0 1 1 1 1 0 # bsd consensus; faked nt
|
||
syscon misc SIG_UNBLOCK 1 2 2 2 2 1 # bsd consensus; faked nt
|
||
syscon misc SIG_SETMASK 2 3 3 3 3 2 # bsd consensus; faked nt
|
||
syscon misc SIG_ATOMIC_MIN -2147483648 -2147483648 -9223372036854775808 -2147483648 -2147483648 0
|
||
|
||
# splice() flags
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon splice SPLICE_F_MOVE 1 0 0 0 0 0 # can be safely ignored by polyfill; it's a hint
|
||
syscon splice SPLICE_F_NONBLOCK 2 0 0 0 0 0 # can be safely ignored by polyfill, since linux says it doesn't apply to underlying FDs
|
||
syscon splice SPLICE_F_MORE 4 0 0 0 0 0 # can be safely ignored by polyfill; it's a hint
|
||
syscon splice SPLICE_F_GIFT 8 0 0 0 0 0 # can probably be ignored by polyfill
|
||
|
||
# access() flags
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon access F_OK 0 0 0 0 0 0 # consensus
|
||
syscon access X_OK 1 1 1 1 1 0xa0000000 # unix consensus and kNtGenericExecute | kNtGenericRead
|
||
syscon access W_OK 2 2 2 2 2 0x40000000 # unix consensus and kNtGenericWrite
|
||
syscon access R_OK 4 4 4 4 4 0x80000000 # unix consensus and kNtGenericRead
|
||
|
||
# flock() flags
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon lock LOCK_SH 1 1 1 1 1 0 # shared [unix consensus]
|
||
syscon lock LOCK_EX 2 2 2 2 2 2 # exclusive [consensus!] a.k.a. kNtLockfileExclusiveLock
|
||
syscon lock LOCK_NB 4 4 4 4 4 1 # non-blocking [unix consensus] a.k.a. kNtLockfileFailImmediately
|
||
syscon lock LOCK_UN 8 8 8 8 8 8 # unlock [unix consensus & faked NT]
|
||
|
||
# waitpid() / wait4() options
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon waitpid WNOHANG 1 1 1 1 1 1 # helps you reap zombies; unix consensus; fake nt
|
||
syscon waitpid WUNTRACED 2 2 2 2 2 0 # unix consensus
|
||
syscon waitpid WCONTINUED 8 0x10 4 8 16 0 #
|
||
|
||
# waitid() options
|
||
# no dice on openbsd >:\
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon waitid WEXITED 4 4 0x10 0 32 0
|
||
syscon waitid WSTOPPED 2 8 2 0 2 0
|
||
syscon waitid WNOWAIT 0x01000000 0x20 8 0 0x10000 0
|
||
|
||
# fcntl()
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon fcntl2 F_DUPFD 0 0 0 0 0 0 # consensus
|
||
syscon fcntl2 F_GETFD 1 1 1 1 1 1 # unix consensus & faked nt
|
||
syscon fcntl2 F_SETFD 2 2 2 2 2 2 # unix consensus & faked nt
|
||
syscon fcntl2 F_GETFL 3 3 3 3 3 3 # unix consensus & faked nt
|
||
syscon fcntl2 F_SETFL 4 4 4 4 4 4 # unix consensus & faked nt
|
||
syscon fcntl2 F_SETOWN 8 6 6 6 6 0 # bsd consensus
|
||
syscon fcntl2 F_GETOWN 9 5 5 5 5 0 # bsd consensus
|
||
syscon fcntl2 F_FULLFSYNC 0 51 0 0 0 0 #
|
||
syscon fcntl2 F_NOCACHE 0 48 0 0 0 0 #
|
||
syscon fcntl3 FD_CLOEXEC 1 1 1 1 1 1 # unix consensus & faked nt
|
||
syscon fcntl F_DUPFD_CLOEXEC 0x0406 67 17 10 12 0x0406 # Linux 2.6.24+; faked nt
|
||
syscon fcntl F_MAXFD 0 0 0 0 11 0 #
|
||
syscon fcntl FREAD 0 1 1 1 1 0 #
|
||
syscon fcntl FWRITE 0 2 2 2 2 0 #
|
||
|
||
# fcntl3 O_NONBLOCK
|
||
# fcntl3 O_APPEND
|
||
# fcntl3 O_ASYNC
|
||
# fcntl3 O_DIRECT
|
||
# fcntl3 O_NOATIME
|
||
|
||
# fcntl() POSIX Advisory Locks
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon fcntl F_SETLK 6 8 12 8 8 6 # polyfilled nt
|
||
syscon compat F_SETLK64 6 8 12 8 8 6 # polyfilled nt
|
||
syscon fcntl F_SETLKW 7 9 13 9 9 7
|
||
syscon compat F_SETLKW64 7 9 13 9 9 7
|
||
syscon fcntl F_GETLK 5 7 11 7 7 5 # polyfilled nt
|
||
syscon compat F_GETLK64 5 7 11 7 7 5 # polyfilled nt
|
||
syscon fcntl F_RDLCK 0 1 1 1 1 0 # polyfilled nt; bsd consensus
|
||
syscon fcntl F_WRLCK 1 3 3 3 3 1 # polyfilled nt; bsd consensus
|
||
syscon fcntl F_UNLCK 2 2 2 2 2 2 # polyfilled nt; unix consensus
|
||
|
||
syscon fcntl F_ULOCK 0 0 0 0 0 0 # TODO: specified by posix but not kernels?
|
||
syscon fcntl F_LOCK 1 1 1 1 1 0 # unix consensus
|
||
syscon fcntl F_TLOCK 2 2 2 2 2 0 # unix consensus
|
||
syscon fcntl F_TEST 3 3 3 3 3 0 # unix consensus
|
||
syscon fcntl F_SETSIG 10 0 0 0 0 0
|
||
syscon fcntl F_GETSIG 11 0 0 0 0 0
|
||
syscon fcntl F_SETOWN_EX 15 0 0 0 0 0
|
||
syscon fcntl F_GETOWN_EX 0x10 0 0 0 0 0
|
||
syscon fcntl F_OFD_GETLK 36 0 0 0 0 0
|
||
syscon fcntl F_OFD_SETLK 37 0 0 0 0 0
|
||
syscon fcntl F_OFD_SETLKW 38 0 0 0 0 0
|
||
syscon fcntl F_SETLEASE 0x0400 0 0 0 0 0
|
||
syscon fcntl F_GETLEASE 0x0401 0 0 0 0 0
|
||
syscon fcntl F_NOTIFY 0x0402 0 0 0 0 0
|
||
syscon fcntl F_SETPIPE_SZ 0x0407 0 0 0 0 0
|
||
syscon fcntl F_GETPIPE_SZ 0x0408 0 0 0 0 0
|
||
|
||
syscon ioctl FIONBIO 0x5421 0x8004667e 0x8004667e 0x8004667e 0x8004667e 0x8004667e # BSD-The New Technology consensus; FIONBIO is traditional O_NONBLOCK; see F_SETFL for re-imagined api
|
||
syscon ioctl FIOASYNC 0x5452 0x8004667d 0x8004667d 0x8004667d 0x8004667d 0x8004667d # BSD-The New Technology consensus
|
||
syscon ioctl FIONREAD 0x541b 0x4004667f 0x4004667f 0x4004667f 0x4004667f 0x4004667f # BSD-The New Technology consensus; bytes waiting in FD's input buffer
|
||
syscon ioctl FIOCLEX 0x5451 0x20006601 0x20006601 0x20006601 0x20006601 0x5451 # sets "close on exec" on file descriptor the fast way; faked nt
|
||
syscon ioctl FIONCLEX 0x5450 0x20006602 0x20006602 0x20006602 0x20006602 0x5450 # clears "close on exec" on file descriptor the fast way; faked nt
|
||
#syscon ioctl FIONWRITE 0x0 0x0 0x40046677 0x0 0x0 -1 # [FreeBSD Generalization] bytes queued in FD's output buffer (same as TIOCOUTQ for TTY FDs; see also SO_SNDBUF)
|
||
#syscon ioctl FIONSPACE 0x0 0x0 0x40046676 0x0 0x0 -1 # [FreeBSD Generalization] capacity of FD's output buffer, e.g. equivalent to TIOCGSERIAL w/ UART
|
||
syscon ioctl TIOCINQ 0x541b 0x4004667f 0x4004667f 0x4004667f 0x4004667f 0x4004667f # [Linuxism] same as FIONREAD
|
||
#syscon ioctl TIOCOUTQ 0x5411 0x40047473 0x40047473 0x40047473 0x40047473 -1 # bytes queued in TTY's output buffer
|
||
|
||
# openat(), fstatat(), linkat(), etc. magnums
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon at AT_FDCWD -100 -2 -100 -100 -100 -100 # faked nt
|
||
syscon at AT_SYMLINK_NOFOLLOW 0x0100 0x20 0x0200 2 0x200 0x0100 # faked nt
|
||
syscon at AT_SYMLINK_FOLLOW 0x0400 0x40 0x0400 4 0x400 0 # see linkat(2)
|
||
syscon at AT_REMOVEDIR 0x0200 0x80 0x0800 8 0x800 0x0200 # faked nt
|
||
syscon at AT_EACCESS 0x0200 0x10 0x0100 1 0x100 0 # performs check using effective uid/gid; unnecessary nt
|
||
syscon at AT_EMPTY_PATH 0x1000 0 0 0 0 0 # linux 2.6.39+; see unlink, O_TMPFILE, etc.
|
||
|
||
# utimensat() special values
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon utime UTIME_NOW 0x3fffffff 0x3fffffff -1 -2 0x3fffffff -2 # timespec::tv_sec may be this; polyfilled xnu/nt
|
||
syscon utime UTIME_OMIT 0x3ffffffe 0x3ffffffe -2 -1 0x3ffffffe -1 # timespec::tv_nsec may be this; polyfilled xnu/nt
|
||
|
||
# getauxval() keys
|
||
#
|
||
# Unsupported values are encoded as 0.
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon auxv AT_EXECFD 2 0 2 0 2 0 # file descriptor of program
|
||
syscon auxv AT_PHDR 3 0 3 0 3 0 # address of program headers of executable
|
||
syscon auxv AT_PHENT 4 0 4 0 4 0
|
||
syscon auxv AT_PHNUM 5 0 5 0 5 0
|
||
syscon auxv AT_PAGESZ 6 0 6 0 6 0
|
||
syscon auxv AT_BASE 7 0 7 0 7 0 # address of program interpreter
|
||
syscon auxv AT_FLAGS 8 0 8 0 8 0
|
||
syscon auxv AT_ENTRY 9 0 9 0 9 0 # entry address of executable
|
||
syscon auxv AT_NOTELF 10 0 10 0 0 0
|
||
syscon auxv AT_OSRELDATE 0 0 18 0 0 0
|
||
syscon auxv AT_UID 11 0 0 0 2001 0
|
||
syscon auxv AT_EUID 12 0 0 0 2000 0
|
||
syscon auxv AT_GID 13 0 0 0 2003 0
|
||
syscon auxv AT_EGID 14 0 0 0 2002 0
|
||
syscon auxv AT_PLATFORM 15 0 0 0 0 0 # address of string with hardware platform for rpath interpretation
|
||
syscon auxv AT_HWCAP 16 0 0 0 0 0
|
||
syscon auxv AT_CLKTCK 17 0 0 0 0 0
|
||
syscon auxv AT_DCACHEBSIZE 19 0 0 0 0 0
|
||
syscon auxv AT_ICACHEBSIZE 20 0 0 0 0 0
|
||
syscon auxv AT_UCACHEBSIZE 21 0 0 0 0 0
|
||
syscon auxv AT_SECURE 23 0 0 0 0 0
|
||
syscon auxv AT_BASE_PLATFORM 24 0 0 0 0 0
|
||
syscon auxv AT_RANDOM 25 0 16 0 0 0 # address of sixteen bytes of random data; AT_CANARY on FreeBSD whose AT_CANARYLEN should be 64
|
||
syscon auxv AT_HWCAP2 26 0 0 0 0 0
|
||
syscon auxv AT_EXECFN 31 31 15 999 2014 31 # address of string containing first argument passed to execve() used when running program; AT_EXECPATH on FreeBSD
|
||
syscon auxv AT_SYSINFO_EHDR 33 0 0 0 0 0
|
||
syscon auxv AT_STACKBASE 0 0 0 0 13 0
|
||
syscon auxv AT_EXECPATH 31 31 15 999 2014 31 # FreeBSD name for AT_EXECFN
|
||
syscon auxv AT_MINSIGSTKSZ 51 0 0 0 0 0 # FreeBSD name for AT_EXECFN
|
||
syscon auxv AT_CANARY 0 0 16 0 0 0
|
||
syscon auxv AT_CANARYLEN 0 0 17 0 0 0
|
||
syscon auxv AT_NCPUS 0 0 19 0 0 0
|
||
syscon auxv AT_PAGESIZES 0 0 20 0 0 0
|
||
syscon auxv AT_PAGESIZESLEN 0 0 21 0 0 0
|
||
syscon auxv AT_TIMEKEEP 0 0 22 0 0 0
|
||
syscon auxv AT_STACKPROT 0 0 23 0 0 0
|
||
syscon auxv AT_EHDRFLAGS 0 0 24 0 0 0
|
||
syscon auxv AT_NO_AUTOMOUNT 0x0800 0 0 0 0 0
|
||
|
||
# getrlimit() / setrlimit() resource parameter
|
||
#
|
||
# Unsupported values are encoded as 127.
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon rlimit RLIMIT_CPU 0 0 0 0 0 127 # max cpu time in seconds; see SIGXCPU; unix consensus
|
||
syscon rlimit RLIMIT_FSIZE 1 1 1 1 1 127 # max file size in bytes; unix consensus
|
||
syscon rlimit RLIMIT_DATA 2 2 2 2 2 127 # max mmap() / brk() / sbrk() size in bytes; unix consensus
|
||
syscon rlimit RLIMIT_STACK 3 3 3 3 3 127 # max stack size in bytes; see SIGXFSZ; unix consensus
|
||
syscon rlimit RLIMIT_CORE 4 4 4 4 4 127 # max core file size in bytes; unix consensus
|
||
syscon rlimit RLIMIT_RSS 5 5 5 5 5 127 # max physical memory size in bytes; see mmap()→ENOMEM; unix consensus
|
||
syscon rlimit RLIMIT_NPROC 6 7 7 7 7 127 # max number of processes; see fork()→EAGAIN; bsd consensus
|
||
syscon rlimit RLIMIT_NOFILE 7 8 8 8 8 127 # max number of open files; see accept()→EMFILE/ENFILE; bsd consensus
|
||
syscon rlimit RLIMIT_MEMLOCK 8 6 6 6 6 127 # max locked-in-memory address space; bsd consensus
|
||
syscon rlimit RLIMIT_AS 9 5 10 2 10 0 # max virtual memory size in bytes; this one actually works; fudged as RLIMIT_DATA on OpenBSD
|
||
syscon rlimit RLIMIT_LOCKS 10 127 127 127 127 127 # max flock() / fcntl() locks; bsd consensus
|
||
syscon rlimit RLIMIT_SIGPENDING 11 127 127 127 127 127 # max sigqueue() can enqueue; bsd consensus
|
||
syscon rlimit RLIMIT_MSGQUEUE 12 127 127 127 127 127 # meh posix message queues; bsd consensus
|
||
syscon rlimit RLIMIT_NICE 13 127 127 127 127 127 # max scheduling priority; 𝑥 ∈ [1,40]; niceness is traditionally displayed as as 𝟸𝟶-𝑥, therefore 𝑥=1 (lowest priority) prints as 19 and 𝑥=40 (highest priority) prints as -20; bsd consensus
|
||
syscon rlimit RLIMIT_RTPRIO 14 127 127 127 127 127 # woop
|
||
syscon rlimit RLIMIT_RTTIME 15 127 127 127 127 127 # woop
|
||
syscon rlimit RLIMIT_SWAP 127 127 12 127 127 127 # swap used
|
||
syscon rlimit RLIMIT_SBSIZE 127 127 9 127 127 127 # max size of all socket buffers
|
||
syscon rlimit RLIMIT_NPTS 127 127 11 127 127 127 # pseudoteletypewriters
|
||
syscon compat RLIMIT_VMEM 9 5 10 127 10 127 # same as RLIMIT_AS
|
||
|
||
# resource limit special values
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon rlim RLIM_NLIMITS 16 9 15 9 12 1
|
||
syscon rlim RLIM_INFINITY 0xffffffffffffffff 0x7fffffffffffffff 0x7fffffffffffffff 0x7fffffffffffffff 0x7fffffffffffffff 0xffffffffffffffff
|
||
syscon rlim RLIM_SAVED_CUR 0xffffffffffffffff 0x7fffffffffffffff 0x7fffffffffffffff 0x7fffffffffffffff 0x7fffffffffffffff 0xffffffffffffffff
|
||
syscon rlim RLIM_SAVED_MAX 0xffffffffffffffff 0x7fffffffffffffff 0x7fffffffffffffff 0x7fffffffffffffff 0x7fffffffffffffff 0xffffffffffffffff
|
||
|
||
# sigaction() codes
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon sigact SA_NOCLDSTOP 1 8 8 8 8 1 # lets you set SIGCHLD handler that's only notified on exit/termination and not notified on SIGSTOP/SIGTSTP/SIGTTIN/SIGTTOU/SIGCONT lool; bsd consensus
|
||
syscon sigact SA_NOCLDWAIT 2 32 32 32 32 2 # changes SIGCHLD so the zombie is gone and you can't call wait(2) anymore; similar to SIGCHLD+SIG_IGN but may still deliver the SIGCHLD; bsd consensus
|
||
syscon sigact SA_SIGINFO 4 64 64 64 64 4 # asks kernel to provide ucontext_t argument, which has mutable cpu/fpu state of signalled process; and it is polyfilled by cosmopolitan; bsd consensus
|
||
syscon sigact SA_ONSTACK 0x08000000 1 1 1 1 0x08000000 # causes signal handler to be called on stack provided by sigaltstack(2); bsd consensus
|
||
syscon sigact SA_RESTART 0x10000000 2 2 2 2 0x10000000 # prevents signal delivery from triggering EINTR on i/o calls (e.g. read/write/open/wait/accept) but doesn't impact non-i/o blocking calls (e.g. poll, sigsuspend, nanosleep) which will still EINTR; bsd consensus
|
||
syscon sigact SA_NODEFER 0x40000000 16 16 16 16 0x40000000 # lets signal handler be reentrant (e.g. so you can longjmp() out of signal handler); bsd consensus
|
||
syscon sigact SA_RESETHAND 0x80000000 4 4 4 4 0x80000000 # causes signal handler to be called at most once and then set to SIG_DFL automatically; bsd consensus
|
||
syscon compat SA_NOMASK 0x40000000 16 16 16 16 0x40000000 # same as SA_NODEFER
|
||
syscon compat SA_ONESHOT 0x80000000 4 4 4 4 0x80000000 # same as SA_RESETHAND
|
||
|
||
# siginfo::si_code values
|
||
#
|
||
# The New Technology NT is polyfilled as Linux.
|
||
# Unsupported values are encoded as 0x80000000.
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon sicode SI_USER 0 0x010001 0x010001 0 0 0 # sent by kill(2); openbsd defines si_code<=0 as originating from user
|
||
syscon sicode SI_QUEUE -1 0x010002 0x010002 -2 -1 -1 # sent by sigqueue(2)
|
||
syscon sicode SI_TIMER -2 0x010003 0x010003 -3 -2 -2 # sent by setitimer(2) or clock_settime(2)
|
||
syscon sicode SI_TKILL -6 0x80000000 0x010007 -1 -5 -6 # sent by tkill(2) or tgkill(2) or thr_kill(2) or lwp_kill(2) or _lwp_kill(2); cries
|
||
syscon sicode SI_MESGQ -3 0x010005 0x010005 0x80000000 -4 -3 # sent by mq_notify(2); lool
|
||
syscon sicode SI_ASYNCIO -4 0x010004 0x010004 0x80000000 -3 -4 # aio completion; no thank you
|
||
syscon sicode SI_ASYNCNL -60 0x80000000 0x80000000 0x80000000 0x80000000 0x80000000 # aio completion for dns; the horror
|
||
syscon sicode SI_KERNEL 0x80 0x80000000 0x010006 0x80000000 0x80000000 0x80 # wut; openbsd defines as si_code>0
|
||
syscon sicode SI_NOINFO 32767 0x80000000 0 32767 32767 32767 # no signal specific info available
|
||
syscon sicode CLD_EXITED 1 1 1 1 1 1 # SIGCHLD; child exited; unix consensus
|
||
syscon sicode CLD_KILLED 2 2 2 2 2 2 # SIGCHLD; child terminated w/o core; unix consensus
|
||
syscon sicode CLD_DUMPED 3 3 3 3 3 3 # SIGCHLD; child terminated w/ core; unix consensus
|
||
syscon sicode CLD_TRAPPED 4 4 4 4 4 4 # SIGCHLD; traced child trapped; unix consensus
|
||
syscon sicode CLD_STOPPED 5 5 5 5 5 5 # SIGCHLD; child stopped; unix consensus
|
||
syscon sicode CLD_CONTINUED 6 6 6 6 6 6 # SIGCHLD; stopped child continued; unix consensus
|
||
syscon sicode TRAP_BRKPT 1 1 1 1 1 1 # SIGTRAP; process breakpoint; unix consensus
|
||
syscon sicode TRAP_TRACE 2 2 2 2 2 2 # SIGTRAP; process trace trap; unix consensus
|
||
syscon sicode SEGV_MAPERR 1 1 1 1 1 1 # SIGSEGV; address not mapped to object; unix consensus
|
||
syscon sicode SEGV_ACCERR 2 2 2 2 2 2 # SIGSEGV; invalid permissions for mapped object; unix consensus
|
||
syscon sicode SEGV_PKUERR -1 -1 100 -1 -1 -1 # SIGSEGV: x86: PKU violation
|
||
syscon sicode FPE_INTDIV 1 7 2 1 1 1 # SIGFPE; integer divide by zero
|
||
syscon sicode FPE_INTOVF 2 8 1 2 2 2 # SIGFPE; integer overflow
|
||
syscon sicode FPE_FLTDIV 3 1 3 3 3 3 # SIGFPE; floating point divide by zero
|
||
syscon sicode FPE_FLTOVF 4 2 4 4 4 4 # SIGFPE; floating point overflow
|
||
syscon sicode FPE_FLTUND 5 3 5 5 5 5 # SIGFPE; floating point underflow
|
||
syscon sicode FPE_FLTRES 6 4 6 6 6 6 # SIGFPE; floating point inexact
|
||
syscon sicode FPE_FLTINV 7 5 7 7 7 7 # SIGFPE; invalid floating point operation
|
||
syscon sicode FPE_FLTSUB 8 6 8 8 8 8 # SIGFPE; subscript out of range
|
||
syscon sicode ILL_ILLOPC 1 1 1 1 1 1 # SIGILL; illegal opcode; unix consensus
|
||
syscon sicode ILL_ILLOPN 2 4 2 2 2 2 # SIGILL; illegal operand
|
||
syscon sicode ILL_ILLADR 3 5 3 3 3 3 # SIGILL; illegal addressing mode
|
||
syscon sicode ILL_ILLTRP 4 2 4 4 4 4 # SIGILL; illegal trap
|
||
syscon sicode ILL_PRVOPC 5 3 5 5 5 5 # SIGILL; privileged opcode
|
||
syscon sicode ILL_PRVREG 6 6 6 6 6 6 # SIGILL; privileged register; unix consensus
|
||
syscon sicode ILL_COPROC 7 7 7 7 7 7 # SIGILL; coprocessor error; unix consensus
|
||
syscon sicode ILL_BADSTK 8 8 8 8 8 8 # SIGILL; internal stack error; unix consensus
|
||
syscon sicode BUS_ADRALN 1 1 1 1 1 1 # SIGBUS; invalid address alignment; unix consensus
|
||
syscon sicode BUS_ADRERR 2 2 2 2 2 2 # SIGBUS; non-existent physical address; unix consensus
|
||
syscon sicode BUS_OBJERR 3 3 3 3 3 3 # SIGBUS; object specific hardware error; unix consensus
|
||
syscon sicode BUS_OOMERR -1 -1 100 -1 -1 -1 # SIGBUS; Non-standard: No memory.
|
||
syscon sicode BUS_MCEERR_AR 4 0x80000000 0x80000000 0x80000000 0x80000000 0x80000000 # SIGBUS; Linux 2.6.32+
|
||
syscon sicode BUS_MCEERR_AO 5 0x80000000 0x80000000 0x80000000 0x80000000 0x80000000 # SIGBUS; Linux 2.6.32+
|
||
syscon sicode POLL_IN 1 1 1 1 1 1 # SIGIO; data input available; unix consensus
|
||
syscon sicode POLL_OUT 2 2 2 2 2 2 # SIGIO; output buffer available; unix consensus
|
||
syscon sicode POLL_MSG 3 3 3 3 3 3 # SIGIO; input message available; unix consensus
|
||
syscon sicode POLL_ERR 4 4 4 4 4 4 # SIGIO; i/o error; unix consensus
|
||
syscon sicode POLL_PRI 5 5 5 5 5 5 # SIGIO; high priority input available; unix consensus
|
||
syscon sicode POLL_HUP 6 6 6 6 6 6 # SIGIO; device disconnected; unix consensus
|
||
syscon sicode SYS_SECCOMP 1 -1 -1 -1 -1 -1 # SIGSYS; seccomp triggered
|
||
syscon sicode SYS_USER_DISPATCH 2 -1 -1 -1 -1 -1 # SIGSYS; syscall user dispatch triggered
|
||
|
||
# sigaltstack() values
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon ss SIGSTKSZ 8192 131072 34816 28672 28672 8192 # overlaid with STACKSIZE; you need to #undef SIGSTKSZ to access this symbol
|
||
syscon ss MINSIGSTKSZ 2048 32768 2048 12288 8192 2048 # overlaid with 32768; you need to #undef MINSIGSTKSZ to access this symbol
|
||
syscon ss SS_ONSTACK 1 1 1 1 1 1 # unix consensus
|
||
syscon ss SS_DISABLE 2 4 4 4 4 2 # bsd consensus
|
||
|
||
# close_range() values
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon close CLOSE_RANGE_UNSHARE 2 -1 -1 -1 -1 -1 #
|
||
syscon close CLOSE_RANGE_CLOEXEC 4 -1 -1 -1 -1 -1 #
|
||
|
||
# clock_{gettime,settime} timers
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon clock CLOCK_REALTIME 0 0 0 0 0 0 # consensus
|
||
syscon clock CLOCK_REALTIME_PRECISE 0 0 9 0 0 0 #
|
||
syscon clock CLOCK_REALTIME_FAST 0 0 10 0 0 0 #
|
||
syscon clock CLOCK_REALTIME_COARSE 5 0 10 0 0 0 # Linux 2.6.32+; bsd consensus; not available on RHEL5
|
||
syscon clock CLOCK_MONOTONIC 1 1 4 3 3 1 # XNU/NT faked; could move backwards if NTP introduces negative leap second
|
||
syscon clock CLOCK_MONOTONIC_PRECISE 1 1 11 3 3 1 #
|
||
syscon clock CLOCK_MONOTONIC_FAST 1 1 12 3 3 1 #
|
||
syscon clock CLOCK_MONOTONIC_COARSE 6 1 12 3 3 1 # Linux 2.6.32+; bsd consensus; not available on RHEL5
|
||
syscon clock CLOCK_MONOTONIC_RAW 4 127 127 127 127 127 # actually monotonic; not subject to NTP adjustments; Linux 2.6.28+; XNU/NT/FreeBSD/OpenBSD faked; not available on RHEL5
|
||
syscon clock CLOCK_PROCESS_CPUTIME_ID 2 127 15 2 0x40000000 127 #
|
||
syscon clock CLOCK_THREAD_CPUTIME_ID 3 127 14 4 0x20000000 127 #
|
||
syscon clock CLOCK_PROF 127 127 2 127 2 127 #
|
||
syscon clock CLOCK_BOOTTIME 7 127 127 6 127 127 #
|
||
syscon clock CLOCK_REALTIME_ALARM 8 127 127 127 127 127 #
|
||
syscon clock CLOCK_BOOTTIME_ALARM 9 127 127 127 127 127 #
|
||
syscon clock CLOCK_TAI 11 127 127 127 127 127 #
|
||
syscon clock CLOCK_UPTIME 127 127 5 5 127 127 #
|
||
syscon clock CLOCK_UPTIME_PRECISE 127 127 7 127 127 127 #
|
||
syscon clock CLOCK_UPTIME_FAST 127 127 8 127 127 127 #
|
||
syscon clock CLOCK_SECOND 127 127 13 127 127 127 #
|
||
|
||
# poll()
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon poll POLLIN 1 1 1 1 1 0x0300 # unix consensus; POLLRDNORM|POLLRDBAND on Windows
|
||
syscon poll POLLPRI 2 2 2 2 2 0x0400 # unix consensus
|
||
syscon poll POLLOUT 4 4 4 4 4 0x0010 # unix consensus; POLLWRNORM on Windows
|
||
syscon poll POLLERR 8 8 8 8 8 0x0001 # unix consensus
|
||
syscon poll POLLHUP 0x10 0x10 0x10 0x10 0x10 0x0002 # unix consensus
|
||
syscon poll POLLNVAL 0x20 0x20 0x20 0x20 0x20 0x0004 # unix consensus
|
||
syscon poll POLLRDBAND 0x80 0x80 0x80 0x80 0x80 0x0200 # unix consensus
|
||
syscon poll POLLRDNORM 0x40 0x40 0x40 0x40 0x40 0x0100 # unix consensus
|
||
syscon poll POLLWRBAND 0x0200 0x0100 0x0100 0x0100 0x0100 0x0020 # bsd consensus
|
||
syscon poll POLLWRNORM 0x0100 4 4 4 4 0x0010 # bsd consensus
|
||
syscon poll POLLRDHUP 0x2000 0x10 0x10 0x10 0x10 2 # bsd consensus (POLLHUP on non-Linux)
|
||
|
||
# epoll
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon epoll EPOLL_CLOEXEC 0x080000 0x01000000 0x100000 0x010000 0x010000 0x80000 # O_CLOEXEC
|
||
syscon epoll EPOLL_CTL_ADD 1 1 1 1 1 1 # forced consensus, linux only natively, polyfilled elsewhere
|
||
syscon epoll EPOLL_CTL_DEL 2 2 2 2 2 2 # forced consensus, linux only natively, polyfilled elsewhere
|
||
syscon epoll EPOLL_CTL_MOD 3 3 3 3 3 3 # forced consensus, linux only natively, polyfilled elsewhere
|
||
syscon epoll EPOLLIN 1 1 1 1 1 1 # forced consensus, linux only natively, polyfilled elsewhere
|
||
syscon epoll EPOLLOUT 4 4 4 4 4 4 # forced consensus, linux only natively, polyfilled elsewhere
|
||
syscon epoll EPOLLERR 8 8 8 8 8 8 # forced consensus, linux only natively, polyfilled elsewhere
|
||
syscon epoll EPOLLPRI 2 2 2 2 2 2 # forced consensus, linux only natively, polyfilled elsewhere
|
||
syscon epoll EPOLLHUP 0x10 0x10 0x10 0x10 0x10 0x10 # forced consensus, linux only natively, polyfilled elsewhere
|
||
syscon epoll EPOLLRDNORM 0x40 0x40 0x40 0x40 0x40 0x40 # forced consensus, linux only natively, polyfilled elsewhere
|
||
syscon epoll EPOLLRDBAND 0x80 0x80 0x80 0x80 0x80 0x80 # forced consensus, linux only natively, polyfilled elsewhere
|
||
syscon epoll EPOLLWRNORM 0x0100 0x0100 0x0100 0x0100 0x0100 0x0100 # forced consensus, linux only natively, polyfilled elsewhere
|
||
syscon epoll EPOLLWRBAND 0x0200 0x0200 0x0200 0x0200 0x0200 0x0200 # forced consensus, linux only natively, polyfilled elsewhere
|
||
syscon epoll EPOLLMSG 0x0400 0x0400 0x0400 0x0400 0x0400 0x0400 # forced consensus, linux only natively, polyfilled elsewhere
|
||
syscon epoll EPOLLRDHUP 0x2000 0x2000 0x2000 0x2000 0x2000 0x2000 # forced consensus, linux only natively, polyfilled elsewhere
|
||
syscon epoll EPOLLEXCLUSIVE 0x10000000 0x10000000 0x10000000 0x10000000 0x10000000 0x10000000 # forced consensus, linux only natively, polyfilled elsewhere
|
||
syscon epoll EPOLLWAKEUP 0x20000000 0x20000000 0x20000000 0x20000000 0x20000000 0x20000000 # forced consensus, linux only natively, polyfilled elsewhere
|
||
syscon epoll EPOLLONESHOT 0x40000000 0x40000000 0x40000000 0x40000000 0x40000000 0x40000000 # forced consensus, linux only natively, polyfilled elsewhere
|
||
syscon epoll EPOLLET 0x80000000 0x80000000 0x80000000 0x80000000 0x80000000 0x80000000 # forced consensus, linux only natively, polyfilled elsewhere
|
||
|
||
# {set,get}sockopt(fd, level=SOL_SOCKET, X, ...)
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon so SO_DEBUG 1 1 1 1 1 1 # debugging is enabled; consensus
|
||
syscon so SO_TYPE 3 0x1008 0x1008 0x1008 0x1008 0x1008 # bsd consensus
|
||
syscon so SO_ERROR 4 0x1007 0x1007 0x1007 0x1007 0x1007 # takes int pointer and stores/clears the pending error code; bsd consensus
|
||
syscon so SO_ACCEPTCONN 30 2 2 2 2 2 # takes int pointer and stores boolean indicating if listen() was called on fd; bsd consensus
|
||
syscon so SO_REUSEPORT 15 0x0200 0x0200 0x0200 0x0200 4 # bsd consensus (NT calls it SO_REUSEADDR)
|
||
syscon so SO_REUSEADDR 2 4 4 4 4 4 # bsd consensus (default behavior on NT)
|
||
syscon so SO_EXCLUSIVEADDRUSE 0 0 0 0 0 ~4 # bsd consensus (default behavior on NT)
|
||
syscon so SO_KEEPALIVE 9 8 8 8 8 8 # bsd consensus
|
||
syscon so SO_DONTROUTE 5 0x10 0x10 0x10 0x10 0x10 # bsd consensus
|
||
syscon so SO_BROADCAST 6 0x20 0x20 0x20 0x20 0x20 # socket is configured for broadcast messages; bsd consensus
|
||
syscon so SO_USELOOPBACK 0 0x40 0x40 0x40 0x40 0x40 # bsd consensus
|
||
syscon so SO_LINGER 13 0x80 0x80 0x80 0x80 0x80 # takes struct linger; causes close() return value to actually mean something; bsd consensus
|
||
syscon so SO_DONTLINGER 0 0 0 0 0 ~0x80 # disables so_linger on windows
|
||
syscon so SO_OOBINLINE 10 0x0100 0x0100 0x0100 0x0100 0x0100 # bsd consensus
|
||
syscon so SO_SNDBUF 7 0x1001 0x1001 0x1001 0x1001 0x1001 # bsd consensus
|
||
syscon so SO_RCVBUF 8 0x1002 0x1002 0x1002 0x1002 0x1002 # bsd consensus
|
||
syscon so SO_RCVTIMEO 20 0x1006 0x1006 0x1006 0x100c 0x1006 # recv timeout; takes struct timeval (overrides SA_RESTART restoring EINTR behavior on recv/send/connect/accept/etc.; bsd consensus)
|
||
syscon so SO_SNDTIMEO 21 0x1005 0x1005 0x1005 0x100b 0x1005 # send timeout; takes struct timeval; bsd consensus
|
||
syscon so SO_RCVLOWAT 18 0x1004 0x1004 0x1004 0x1004 0x1004 # bsd consensus
|
||
syscon so SO_SNDLOWAT 19 0x1003 0x1003 0x1003 0x1003 0x1003 # bsd consensus
|
||
syscon so SO_TIMESTAMP 29 0x0400 0x0400 0x0800 0x2000 0
|
||
syscon so SO_SETFIB 0 0 0x1014 0 0 0
|
||
syscon so SO_DOMAIN 39 0 0x1019 0x1024 0 0
|
||
syscon so SO_MAX_PACING_RATE 47 0 0x1018 0 0 0
|
||
syscon so SO_PEERCRED 17 0 0 0x1022 0 0
|
||
syscon so SO_EXCLUSIVEADDRUSE 0 0 0 0 0 0xfffffffb # hoo boy
|
||
syscon so LOCAL_PEERCRED 0 1 1 0 0 0
|
||
syscon so SO_PROTOCOL 38 0 0x1016 0x1025 0 0
|
||
syscon so SO_ATTACH_BPF 50 0 0 0 0 0
|
||
syscon so SO_ATTACH_FILTER 26 0 0 0 0 0
|
||
syscon so SO_ATTACH_REUSEPORT_CBPF 51 0 0 0 0 0
|
||
syscon so SO_ATTACH_REUSEPORT_EBPF 52 0 0 0 0 0
|
||
syscon so SO_BINDTODEVICE 25 0 0 0 0 0
|
||
syscon so SO_BPF_EXTENSIONS 48 0 0 0 0 0
|
||
syscon so SO_BSDCOMPAT 14 0 0 0 0 0
|
||
syscon so SO_BUSY_POLL 46 0 0 0 0 0
|
||
syscon so SO_CNX_ADVICE 53 0 0 0 0 0
|
||
syscon so SO_DETACH_BPF 27 0 0 0 0 0
|
||
syscon so SO_DETACH_FILTER 27 0 0 0 0 0
|
||
syscon so SO_GET_FILTER 26 0 0 0 0 0
|
||
syscon so SO_INCOMING_CPU 49 0 0 0 0 0
|
||
syscon so SO_LOCK_FILTER 44 0 0 0 0 0
|
||
syscon so SO_MARK 36 0 0 0 0 0
|
||
syscon so SO_NOFCS 43 0 0 0 0 0
|
||
syscon so SO_NO_CHECK 11 0 0 0 0 0
|
||
syscon so SO_PASSCRED 0x10 0 0 0 0 0
|
||
syscon so SO_PASSSEC 34 0 0 0 0 0
|
||
syscon so SO_PEEK_OFF 42 0 0 0 0 0
|
||
syscon so SO_PEERNAME 28 0 0 0 0 0
|
||
syscon so SO_PEERSEC 31 0 0 0 0 0
|
||
syscon so SO_PRIORITY 12 0 0 0 0 0
|
||
syscon so SO_RCVBUFFORCE 33 0 0 0 0 0
|
||
syscon so SO_RXQ_OVFL 40 0 0 0 0 0
|
||
syscon so SO_SECURITY_AUTHENTICATION 22 0 0 0 0 0
|
||
syscon so SO_SECURITY_ENCRYPTION_NETWORK 24 0 0 0 0 0
|
||
syscon so SO_SECURITY_ENCRYPTION_TRANSPORT 23 0 0 0 0 0
|
||
syscon so SO_SELECT_ERR_QUEUE 45 0 0 0 0 0
|
||
syscon so SO_SNDBUFFORCE 0x20 0 0 0 0 0
|
||
syscon so SO_TIMESTAMPING 37 0 0 0 0 0
|
||
syscon so SO_TIMESTAMPNS 35 0 0 0 0 0
|
||
syscon so SO_WIFI_STATUS 41 0 0 0 0 0
|
||
|
||
syscon sol SOL_IP 0 0 0 0 0 0 # consensus
|
||
syscon sol SOL_SOCKET 1 0xffff 0xffff 0xffff 0xffff 0xffff # yes it's actually 0xffff; bsd+nt consensus (todo: what's up with ipproto_icmp overlap)
|
||
syscon sol SOL_TCP 6 6 6 6 6 6 # consensus
|
||
syscon sol SOL_UDP 17 17 17 17 17 17 # consensus
|
||
syscon sol SOL_RAW 255 -1 -1 -1 -1 -1
|
||
syscon sol SOL_IPV6 41 41 41 41 41 41
|
||
syscon sol SOL_ICMPV6 58 58 58 58 58 -1
|
||
syscon sol SOL_AAL 265 -1 -1 -1 -1 -1
|
||
syscon sol SOL_ALG 279 -1 -1 -1 -1 -1
|
||
syscon sol SOL_ATM 264 -1 -1 -1 -1 -1
|
||
syscon sol SOL_BLUETOOTH 274 -1 -1 -1 -1 -1
|
||
syscon sol SOL_CAIF 278 -1 -1 -1 -1 -1
|
||
syscon sol SOL_DCCP 269 -1 -1 -1 -1 -1
|
||
syscon sol SOL_DECNET 261 -1 -1 -1 -1 -1
|
||
syscon sol SOL_IRDA 266 -1 -1 -1 -1 -1
|
||
syscon sol SOL_IUCV 277 -1 -1 -1 -1 -1
|
||
syscon sol SOL_KCM 281 -1 -1 -1 -1 -1
|
||
syscon sol SOL_LLC 268 -1 -1 -1 -1 -1
|
||
syscon sol SOL_NETBEUI 267 -1 -1 -1 -1 -1
|
||
syscon sol SOL_NETLINK 270 -1 -1 -1 -1 -1
|
||
syscon sol SOL_NFC 280 -1 -1 -1 -1 -1
|
||
syscon sol SOL_PACKET 263 -1 -1 -1 -1 -1
|
||
syscon sol SOL_PNPIPE 275 -1 -1 -1 -1 -1
|
||
syscon sol SOL_PPPOL2TP 273 -1 -1 -1 -1 -1
|
||
syscon sol SOL_RDS 276 -1 -1 -1 -1 -1
|
||
syscon sol SOL_RXRPC 272 -1 -1 -1 -1 -1
|
||
syscon sol SOL_TIPC 271 -1 -1 -1 -1 -1
|
||
syscon sol SOL_X25 262 -1 -1 -1 -1 -1
|
||
|
||
syscon alg ALG_SET_KEY 1 0 0 0 0 0
|
||
syscon alg ALG_SET_IV 2 0 0 0 0 0
|
||
syscon alg ALG_SET_OP 3 0 0 0 0 0
|
||
syscon alg ALG_SET_AEAD_ASSOCLEN 4 0 0 0 0 0
|
||
syscon alg ALG_SET_AEAD_AUTHSIZE 5 0 0 0 0 0
|
||
syscon alg ALG_SET_DRBG_ENTROPY 6 0 0 0 0 0
|
||
|
||
# {set,get}sockopt(fd, level=SOL_TCP, X, ...)
|
||
# » most elite of all tuning groups
|
||
#
|
||
# @see https://www.kernel.org/doc/Documentation/networking/ip-sysctl.txt
|
||
# @see https://www.iana.org/assignments/tcp-parameters/tcp-parameters.txt
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon tcp TCP_NODELAY 1 1 1 1 1 1 # strong consensus for disabling nagle's algorithm; so be sure to disable it by turning this on
|
||
syscon tcp TCP_CORK 3 4 4 16 0 0 # nagle's algorithm strikes again; TCP_NOPUSH on BSD; be sure to turn it off; protip: mmap+writev vs. write+sendfile; see also /proc/sys/net/ipv4/tcp_autocorking; netbsd is 4 but not implemented
|
||
syscon tcp TCP_MAXSEG 2 2 2 2 2 0 # reduces tcp segment size; see also tcp offloading
|
||
syscon tcp TCP_FASTOPEN 23 0 0x0401 0 0 15 # reduces roundtrips; for listener; Linux 3.7+ (c. 2012) / or is windows it 0x22? /proc/sys/net/ipv4/tcp_fastopen TODO(jart): MSG_FASTOPEN; XNU sources say 261 but not sure if that's true
|
||
syscon tcp TCP_FASTOPEN_CONNECT 30 0 0 0 0 0 # reduces roundtrips; for listener; Linux 3.7+ (c. 2012) / or is windows it 0x22? /proc/sys/net/ipv4/tcp_fastopen TODO(jart): MSG_FASTOPEN; XNU sources say 261 but not sure if that's true
|
||
syscon tcp TCP_KEEPIDLE 4 0 0x100 0 3 0 # keepalives
|
||
syscon tcp TCP_KEEPINTVL 5 0x101 0x200 0 5 0 # keepalives
|
||
syscon tcp TCP_KEEPCNT 6 0x102 0x400 0 6 0 # keepalives
|
||
syscon tcp TCP_SYNCNT 7 0 0 0 0 0 # how hard to syn packet the enemy
|
||
syscon tcp TCP_ULP 31 0 0 0 0 0 # setsockopt(sock, IPPROTO_TCP, TCP_ULP, "tls", 4)
|
||
syscon tcp TCP_COOKIE_TRANSACTIONS 15 0 0 0 0 0 # defense against the syn packets
|
||
syscon tcp TCP_LINGER2 8 0 0 0 0 0 # orphaned fin-wait-2 lifetime cf. net.ipv4.tcp_fin_timeout see cloudflare blog
|
||
syscon tcp TCP_NOTSENT_LOWAT 25 513 0 0 0 0 # limit unset byte queue
|
||
syscon tcp TCP_INFO 11 0 0x20 0 9 0 # get connection info
|
||
syscon tcp TCP_CC_INFO 26 0 0 0 0 0 # get congestion control info
|
||
syscon tcp TCP_CONGESTION 13 0 0x40 0 0 0 # set traffic control
|
||
syscon tcp TCP_MD5SIG 14 0 0x10 4 16 0 # what is it (rfc2385)
|
||
syscon tcp TCP_MD5SIG_MAXKEYLEN 80 0 0 0 0 0 # what is it
|
||
syscon tcp TCP_TIMESTAMP 24 0 0 0 0 0 # what is it
|
||
syscon tcp TCP_USER_TIMEOUT 18 0 0 0 0 0 # what is it
|
||
syscon tcp TCP_QUICKACK 12 0 0 0 0 0 # what is it
|
||
syscon tcp TCP_SAVE_SYN 27 0 0 0 0 0 # record syn packets
|
||
syscon tcp TCP_SAVED_SYN 28 0 0 0 0 0 # get recorded syn packets
|
||
syscon tcp TCP_THIN_DUPACK 17 0 0 0 0 0 # what is it
|
||
syscon tcp TCP_QUEUE_SEQ 21 0 0 0 0 0 # what is it
|
||
syscon tcp TCP_WINDOW_CLAMP 10 0 0 0 0 0 # what is it
|
||
syscon tcp TCP_DEFER_ACCEPT 9 0 0 0 0 0 # what is it
|
||
syscon tcp TCP_REPAIR 19 0 0 0 0 0 # what is it
|
||
syscon tcp TCP_REPAIR_OPTIONS 22 0 0 0 0 0 # what is it
|
||
syscon tcp TCP_REPAIR_QUEUE 20 0 0 0 0 0 # what is it
|
||
syscon tcp TCP_THIN_LINEAR_TIMEOUTS 16 0 0 0 0 0 # what is it
|
||
|
||
# https://blog.cloudflare.com/know-your-scm_rights/
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon scm SCM_RIGHTS 1 1 1 1 1 1 # unix consensus; faked nt
|
||
syscon scm SCM_TIMESTAMP 29 2 2 4 8 0
|
||
syscon scm SCM_CREDENTIALS 2 0 0 0 0 0
|
||
syscon scm SCM_TIMESTAMPING 37 0 0 0 0 0
|
||
syscon scm SCM_TIMESTAMPNS 35 0 0 0 0 0
|
||
syscon scm SCM_WIFI_STATUS 41 0 0 0 0 0
|
||
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon ip IP_TOS 1 3 3 3 3 8 # bsd consensus
|
||
syscon ip IP_TTL 2 4 4 4 4 7 # bsd consensus
|
||
syscon ip IP_HDRINCL 3 2 2 2 2 2 # bsd consensus
|
||
syscon ip IP_DEFAULT_MULTICAST_LOOP 1 1 1 1 1 1 # consensus
|
||
syscon ip IP_DEFAULT_MULTICAST_TTL 1 1 1 1 1 1 # consensus
|
||
syscon ip IP_PMTUDISC_DONT 0 0 0 0 0 0 # consensus
|
||
syscon ip IP_MAX_MEMBERSHIPS 20 0x0fff 0x0fff 0x0fff 0x0fff 20 # bsd consensus
|
||
syscon ip IP_OPTIONS 4 1 1 1 1 1 # bsd consensus
|
||
syscon ip IP_RECVTTL 12 24 65 31 23 21
|
||
syscon ip IP_ADD_MEMBERSHIP 35 12 12 12 12 5 # bsd consensus
|
||
syscon ip IP_DROP_MEMBERSHIP 36 13 13 13 13 6 # bsd consensus
|
||
syscon ip IP_MULTICAST_IF 0x20 9 9 9 9 2 # bsd consensus
|
||
syscon ip IP_MULTICAST_LOOP 34 11 11 11 11 4 # bsd consensus
|
||
syscon ip IP_MULTICAST_TTL 33 10 10 10 10 3 # bsd consensus
|
||
syscon ip IP_RECVOPTS 6 5 5 5 5 0 # bsd consensus
|
||
syscon ip IP_RECVRETOPTS 7 6 6 6 6 0 # bsd consensus
|
||
syscon ip IP_RECVDSTADDR 0 7 7 7 7 0 # bsd consensus
|
||
syscon ip IP_RETOPTS 7 8 8 8 8 0 # bsd consensus
|
||
syscon ip IP_ADD_SOURCE_MEMBERSHIP 39 70 70 0 0 15
|
||
syscon ip IP_BLOCK_SOURCE 38 72 72 0 0 17
|
||
syscon ip IP_DROP_SOURCE_MEMBERSHIP 40 71 71 0 0 0x10
|
||
syscon ip IP_UNBLOCK_SOURCE 37 73 73 0 0 18
|
||
syscon ip IP_IPSEC_POLICY 0x10 21 21 0 0 0
|
||
syscon ip IP_MINTTL 21 0 66 32 24 0 # minimum ttl for packet or drop
|
||
syscon ip IP_MSFILTER 41 74 74 0 0 0
|
||
syscon ip IP_PKTINFO 8 26 0 0 25 19
|
||
syscon ip IP_RECVTOS 13 0 68 0 0 40
|
||
syscon ip IP_MTU 14 0 0 0 0 73 # bsd consensus
|
||
syscon ip IP_MTU_DISCOVER 10 0 0 0 0 71 # bsd consensus
|
||
syscon ip IP_RECVERR 11 0 0 0 0 75 # bsd consensus
|
||
syscon ip IP_UNICAST_IF 50 0 0 0 0 31 # bsd consensus
|
||
syscon ip IP_ORIGDSTADDR 20 0 27 0 0 0
|
||
syscon ip IP_RECVORIGDSTADDR 20 0 27 0 0 0
|
||
syscon ip IP_BIND_ADDRESS_NO_PORT 24 0 0 0 0 0
|
||
syscon ip IP_CHECKSUM 23 0 0 0 0 0
|
||
syscon ip IP_FREEBIND 15 0 0 0 0 0
|
||
syscon ip IP_MULTICAST_ALL 49 0 0 0 0 0
|
||
syscon ip IP_NODEFRAG 22 0 0 0 0 0
|
||
syscon ip IP_PASSSEC 18 0 0 0 0 0
|
||
syscon ip IP_PKTOPTIONS 9 0 0 0 0 0
|
||
syscon ip IP_PMTUDISC 10 0 0 0 0 0
|
||
syscon ip IP_PMTUDISC_DO 2 0 0 0 0 0
|
||
syscon ip IP_PMTUDISC_INTERFACE 4 0 0 0 0 0
|
||
syscon ip IP_PMTUDISC_OMIT 5 0 0 0 0 0
|
||
syscon ip IP_PMTUDISC_PROBE 3 0 0 0 0 0
|
||
syscon ip IP_PMTUDISC_WANT 1 0 0 0 0 0
|
||
syscon ip IP_ROUTER_ALERT 5 0 0 0 0 0
|
||
syscon ip IP_TRANSPARENT 19 0 0 0 0 0
|
||
syscon ip IP_XFRM_POLICY 17 0 0 0 0 0
|
||
syscon ip INET_ADDRSTRLEN 0x10 0x10 0x10 0x10 0x10 22 # unix consensus
|
||
|
||
syscon ipport IPPORT_USERRESERVED 5000 5000 5000 49151 5000 5000
|
||
|
||
# ptrace() codes
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon ptrace PTRACE_TRACEME 0 0 0 0 -1 -1 # unix consensus a.k.a. PT_TRACE_ME
|
||
syscon ptrace PTRACE_PEEKTEXT 1 1 1 1 -1 -1 # unix consensus a.k.a. PT_READ_I
|
||
syscon ptrace PTRACE_PEEKDATA 2 2 2 2 -1 -1 # unix consensus a.k.a. PT_READ_D
|
||
syscon ptrace PTRACE_PEEKUSER 3 3 -1 -1 -1 -1 # a.k.a. PT_READ_U
|
||
syscon ptrace PTRACE_POKETEXT 4 4 4 4 -1 -1 # unix consensus a.k.a. PT_WRITE_I
|
||
syscon ptrace PTRACE_POKEDATA 5 5 5 5 -1 -1 # unix consensus a.k.a. PT_WRITE_D
|
||
syscon ptrace PTRACE_POKEUSER 6 6 -1 -1 -1 -1 # a.k.a. PT_WRITE_U
|
||
syscon ptrace PTRACE_CONT 7 7 7 7 -1 -1 # unix consensus a.k.a. PT_CONTINUE
|
||
syscon ptrace PTRACE_KILL 8 8 8 8 -1 -1 # unix consensus a.k.a. PT_KILL
|
||
syscon ptrace PTRACE_SINGLESTEP 9 9 9 32 -1 -1 # a.k.a. PT_STEP
|
||
syscon ptrace PTRACE_GETREGS 12 -1 33 33 -1 -1 # a.k.a. PT_GETREGS
|
||
syscon ptrace PTRACE_SETREGS 13 -1 34 34 -1 -1 # a.k.a. PT_SETREGS
|
||
syscon ptrace PTRACE_GETFPREGS 14 -1 35 35 -1 -1 # a.k.a. PT_GETFPREGS
|
||
syscon ptrace PTRACE_SETFPREGS 15 -1 36 36 -1 -1 # a.k.a. PT_SETFPREGS
|
||
syscon ptrace PTRACE_ATTACH 16 10 10 9 -1 -1 # a.k.a. PT_ATTACH
|
||
syscon ptrace PTRACE_DETACH 17 11 11 10 -1 -1 # a.k.a. PT_DETACH
|
||
syscon ptrace PTRACE_GETFPXREGS 18 -1 -1 -1 -1 -1 # a.k.a. PT_GETFPXREGS
|
||
syscon ptrace PTRACE_SETFPXREGS 19 -1 -1 -1 -1 -1 # a.k.a. PT_SETFPXREGS
|
||
syscon ptrace PTRACE_SYSCALL 24 -1 22 -1 -1 -1 # a.k.a. PT_SYSCALL
|
||
syscon ptrace PTRACE_GETEVENTMSG 0x4201 -1 -1 -1 -1 -1
|
||
syscon ptrace PTRACE_GETSIGINFO 0x4202 -1 -1 -1 -1 -1
|
||
syscon ptrace PTRACE_SETOPTIONS 0x4200 -1 -1 -1 -1 -1
|
||
syscon ptrace PTRACE_SETSIGINFO 0x4203 -1 -1 -1 -1 -1
|
||
syscon ptrace PTRACE_GETREGSET 0x4204 -1 -1 -1 -1 -1
|
||
syscon ptrace PTRACE_GETSIGMASK 0x420a -1 -1 -1 -1 -1
|
||
syscon ptrace PTRACE_INTERRUPT 0x4207 -1 -1 -1 -1 -1
|
||
syscon ptrace PTRACE_LISTEN 0x4208 -1 -1 -1 -1 -1
|
||
syscon ptrace PTRACE_PEEKSIGINFO 0x4209 -1 -1 -1 -1 -1
|
||
syscon ptrace PTRACE_SECCOMP_GET_FILTER 0x420c -1 -1 -1 -1 -1
|
||
syscon ptrace PTRACE_SEIZE 0x4206 -1 -1 -1 -1 -1
|
||
syscon ptrace PTRACE_SETREGSET 0x4205 -1 -1 -1 -1 -1
|
||
syscon ptrace PTRACE_SETSIGMASK 0x420b -1 -1 -1 -1 -1
|
||
syscon ptrace PTRACE_O_TRACESYSGOOD 0x0001 -1 -1 -1 -1 -1
|
||
syscon ptrace PTRACE_O_TRACEFORK 0x0002 -1 -1 -1 -1 -1
|
||
syscon ptrace PTRACE_O_TRACEVFORK 0x0004 -1 -1 -1 -1 -1
|
||
syscon ptrace PTRACE_O_TRACECLONE 0x0008 -1 -1 -1 -1 -1
|
||
syscon ptrace PTRACE_O_TRACEEXEC 0x0010 -1 -1 -1 -1 -1
|
||
syscon ptrace PTRACE_O_TRACEVFORKDONE 0x0020 -1 -1 -1 -1 -1
|
||
syscon ptrace PTRACE_O_TRACEEXIT 0x0040 -1 -1 -1 -1 -1
|
||
syscon ptrace PTRACE_O_TRACESECCOMP 0x0080 -1 -1 -1 -1 -1
|
||
syscon ptrace PTRACE_O_MASK 0x007f -1 -1 -1 -1 -1
|
||
syscon ptrace PTRACE_EVENT_FORK 1 -1 -1 -1 -1 -1
|
||
syscon ptrace PTRACE_EVENT_VFORK 2 -1 -1 -1 -1 -1
|
||
syscon ptrace PTRACE_EVENT_CLONE 3 -1 -1 -1 -1 -1
|
||
syscon ptrace PTRACE_EVENT_EXEC 4 -1 -1 -1 -1 -1
|
||
syscon ptrace PTRACE_EVENT_VFORK_DONE 5 -1 -1 -1 -1 -1
|
||
syscon ptrace PTRACE_EVENT_EXIT 6 -1 -1 -1 -1 -1
|
||
syscon ptrace PTRACE_EVENT_SECCOMP 7 -1 -1 -1 -1 -1
|
||
syscon ptrace PTRACE_EVENT_STOP 128 -1 -1 -1 -1 -1
|
||
|
||
# clone() codes
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon clone CLONE_VM 0x00000100 0x00000100 0x00000100 0x00000100 0x00000100 0x00000100 # intentionally symbolic so we can tell if clone() is being used to create threads
|
||
|
||
# IPPROTO_*
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon iproto IPPROTO_IP 0 0 0 0 0 0 # consensus
|
||
syscon iproto IPPROTO_ICMP 1 1 1 1 1 1 # consensus
|
||
syscon iproto IPPROTO_TCP 6 6 6 6 6 6 # consensus
|
||
syscon iproto IPPROTO_UDP 17 17 17 17 17 17 # consensus
|
||
syscon iproto IPPROTO_RAW 255 255 255 255 255 255 # consensus
|
||
syscon iproto IPPROTO_HOPOPTS -1 -1 -1 -1 -1 -1 # consensus
|
||
syscon iproto IPPROTO_IDP 22 22 22 22 22 22 # consensus
|
||
syscon iproto IPPROTO_IGMP 2 2 2 2 2 2 # consensus
|
||
syscon iproto IPPROTO_PUP 12 12 12 12 12 12 # consensus
|
||
syscon iproto IPPROTO_AH 51 51 51 51 51 -1 # unix consensus
|
||
syscon iproto IPPROTO_DSTOPTS 60 60 60 60 60 -1 # unix consensus
|
||
syscon iproto IPPROTO_EGP 8 8 8 8 8 -1 # unix consensus
|
||
syscon iproto IPPROTO_ENCAP 98 98 98 98 98 -1 # unix consensus
|
||
syscon iproto IPPROTO_ESP 50 50 50 50 50 -1 # unix consensus
|
||
syscon iproto IPPROTO_FRAGMENT 44 44 44 44 44 -1 # unix consensus
|
||
syscon iproto IPPROTO_GRE 47 47 47 47 47 -1 # unix consensus
|
||
syscon iproto IPPROTO_ICMPV6 58 58 58 58 58 -1 # unix consensus
|
||
syscon iproto IPPROTO_IPIP 4 4 4 4 4 -1 # unix consensus
|
||
syscon iproto IPPROTO_IPV6 41 41 41 41 41 -1 # unix consensus
|
||
syscon iproto IPPROTO_NONE 59 59 59 59 59 -1 # unix consensus
|
||
syscon iproto IPPROTO_PIM 103 103 103 103 103 -1 # unix consensus
|
||
syscon iproto IPPROTO_ROUTING 43 43 43 43 43 -1 # unix consensus
|
||
syscon iproto IPPROTO_RSVP 46 46 46 46 46 -1 # unix consensus
|
||
syscon iproto IPPROTO_TP 29 29 29 29 29 -1 # unix consensus
|
||
syscon iproto IPPROTO_MPLS 137 -1 137 137 137 -1
|
||
syscon iproto IPPROTO_MTP 92 92 92 -1 -1 -1
|
||
syscon iproto IPPROTO_SCTP 132 132 132 -1 -1 -1
|
||
syscon iproto IPPROTO_MH 135 -1 135 -1 -1 -1
|
||
syscon iproto IPPROTO_UDPLITE 136 -1 136 -1 -1 -1
|
||
syscon iproto IPPROTO_BEETPH 94 -1 -1 -1 -1 -1
|
||
syscon iproto IPPROTO_COMP 108 -1 -1 -1 -1 -1
|
||
syscon iproto IPPROTO_DCCP 33 -1 -1 -1 -1 -1
|
||
|
||
syscon sio SIOCADDMULTI 0x8931 0x80206931 0x80206931 0x80206931 0x80206931 0 # bsd consensus
|
||
syscon sio SIOCATMARK 0x8905 0x40047307 0x40047307 0x40047307 0x40047307 0 # bsd consensus
|
||
syscon sio SIOCDELMULTI 0x8932 0x80206932 0x80206932 0x80206932 0x80206932 0 # bsd consensus
|
||
syscon sio SIOCDIFADDR 0x8936 0x80206919 0x80206919 0x80206919 0x80206919 0 # bsd consensus
|
||
syscon sio SIOCGIFADDR 0x8915 0xc0206921 0xc0206921 0xc0206921 0xc0206921 0 # bsd consensus
|
||
syscon sio SIOCGIFBRDADDR 0x8919 0xc0206923 0xc0206923 0xc0206923 0xc0206923 0 # bsd consensus
|
||
syscon sio SIOCGIFDSTADDR 0x8917 0xc0206922 0xc0206922 0xc0206922 0xc0206922 0 # bsd consensus
|
||
syscon sio SIOCGIFFLAGS 0x8913 0xc0206911 0xc0206911 0xc0206911 0xc0206911 0 # bsd consensus
|
||
syscon sio SIOCGIFMETRIC 0x891d 0xc0206917 0xc0206917 0xc0206917 0xc0206917 0 # bsd consensus
|
||
syscon sio SIOCGIFNETMASK 0x891b 0xc0206925 0xc0206925 0xc0206925 0xc0206925 0 # bsd consensus
|
||
syscon sio SIOCGPGRP 0x8904 0x40047309 0x40047309 0x40047309 0x40047309 0 # bsd consensus
|
||
syscon sio SIOCSIFADDR 0x8916 0x8020690c 0x8020690c 0x8020690c 0x8020690c 0 # bsd consensus
|
||
syscon sio SIOCSIFBRDADDR 0x891a 0x80206913 0x80206913 0x80206913 0x80206913 0 # bsd consensus
|
||
syscon sio SIOCSIFDSTADDR 0x8918 0x8020690e 0x8020690e 0x8020690e 0x8020690e 0 # bsd consensus
|
||
syscon sio SIOCSIFFLAGS 0x8914 0x80206910 0x80206910 0x80206910 0x80206910 0 # bsd consensus
|
||
syscon sio SIOCSIFMETRIC 0x891e 0x80206918 0x80206918 0x80206918 0x80206918 0 # bsd consensus
|
||
syscon sio SIOCSIFNETMASK 0x891c 0x80206916 0x80206916 0x80206916 0x80206916 0 # bsd consensus
|
||
syscon sio SIOCSPGRP 0x8902 0x80047308 0x80047308 0x80047308 0x80047308 0 # bsd consensus
|
||
syscon sio SIOCGIFCONF 0x8912 0xc00c6924 0xc0106924 0xc0106924 0xc0106924 0
|
||
syscon sio SIOCGIFMTU 0x8921 0xc0206933 0xc0206933 0xc020697e 0xc020697e 0
|
||
syscon sio SIOCSIFMTU 0x8922 0x80206934 0x80206934 0x8020697f 0x8020697f 0
|
||
syscon sio SIOCGIFINDEX 0x8933 0 0xc0206920 0 0 0
|
||
syscon sio SIOCSIFNAME 0x8923 0 0x80206928 0 0 0
|
||
syscon sio SIOCADDDLCI 0x8980 0 0 0 0 0
|
||
syscon sio SIOCADDRT 0x890b 0 0 0 0 0
|
||
syscon sio SIOCDARP 0x8953 0 0 0 0 0
|
||
syscon sio SIOCDELDLCI 0x8981 0 0 0 0 0
|
||
syscon sio SIOCDELRT 0x890c 0 0 0 0 0
|
||
syscon sio SIOCDEVPRIVATE 0x89f0 0 0 0 0 0
|
||
syscon sio SIOCDRARP 0x8960 0 0 0 0 0
|
||
syscon sio SIOCGARP 0x8954 0 0 0 0 0
|
||
syscon sio SIOCGIFBR 0x8940 0 0 0 0 0
|
||
syscon sio SIOCGIFCOUNT 0x8938 0 0 0 0 0
|
||
syscon sio SIOCGIFENCAP 0x8925 0 0 0 0 0
|
||
syscon sio SIOCGIFHWADDR 0x8927 0 0 0 0 0
|
||
syscon sio SIOCGIFMAP 0x8970 0 0 0 0 0
|
||
syscon sio SIOCGIFMEM 0x891f 0 0 0 0 0
|
||
syscon sio SIOCGIFNAME 0x8910 0 0 0 0 0
|
||
syscon sio SIOCGIFPFLAGS 0x8935 0 0 0 0 0
|
||
syscon sio SIOCGIFSLAVE 0x8929 0 0 0 0 0
|
||
syscon sio SIOCGIFTXQLEN 0x8942 0 0 0 0 0
|
||
syscon sio SIOCGRARP 0x8961 0 0 0 0 0
|
||
syscon sio SIOCGSTAMP 0x8906 0 0 0 0 0
|
||
syscon sio SIOCGSTAMPNS 0x8907 0 0 0 0 0
|
||
syscon sio SIOCPROTOPRIVATE 0x89e0 0 0 0 0 0
|
||
syscon sio SIOCRTMSG 0x890d 0 0 0 0 0
|
||
syscon sio SIOCSARP 0x8955 0 0 0 0 0
|
||
syscon sio SIOCSIFBR 0x8941 0 0 0 0 0
|
||
syscon sio SIOCSIFENCAP 0x8926 0 0 0 0 0
|
||
syscon sio SIOCSIFHWADDR 0x8924 0 0 0 0 0
|
||
syscon sio SIOCSIFHWBROADCAST 0x8937 0 0 0 0 0
|
||
syscon sio SIOCSIFLINK 0x8911 0 0 0 0 0
|
||
syscon sio SIOCSIFMAP 0x8971 0 0 0 0 0
|
||
syscon sio SIOCSIFMEM 0x8920 0 0 0 0 0
|
||
syscon sio SIOCSIFPFLAGS 0x8934 0 0 0 0 0
|
||
syscon sio SIOCSIFSLAVE 0x8930 0 0 0 0 0
|
||
syscon sio SIOCSIFTXQLEN 0x8943 0 0 0 0 0
|
||
syscon sio SIOCSRARP 0x8962 0 0 0 0 0
|
||
syscon sio SIOGIFINDEX 0x8933 0 0 0 0 0
|
||
|
||
# socket() address families
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon af AF_UNSPEC 0 0 0 0 0 0 # consensus
|
||
syscon af AF_UNIX 1 1 1 1 1 1 # consensus
|
||
syscon af AF_LOCAL 1 1 1 1 1 1 # consensus
|
||
syscon af AF_FILE 1 0 0 0 0 0
|
||
syscon af AF_INET 2 2 2 2 2 2 # consensus
|
||
syscon af AF_INET6 10 30 28 24 24 23
|
||
syscon af AF_AX25 3 0 0 0 0 0
|
||
syscon af AF_IPX 4 23 23 23 23 6 # bsd consensus
|
||
syscon af AF_APPLETALK 5 0x10 0x10 0x10 0x10 0x10 # bsd consensus
|
||
syscon af AF_NETROM 6 0 0 0 0 0
|
||
syscon af AF_BRIDGE 7 0 0 0 0 0
|
||
syscon af AF_ATMPVC 8 0 0 0 0 0
|
||
syscon af AF_X25 9 0 0 0 0 0
|
||
syscon af AF_ROSE 11 0 0 0 0 0
|
||
syscon af AF_NETBEUI 13 0 0 0 0 0
|
||
syscon af AF_SECURITY 14 0 0 0 0 0
|
||
syscon af AF_KEY 15 0 0 30 0 0
|
||
syscon af AF_ROUTE 16 17 17 17 34 0 # bsd consensus
|
||
syscon af AF_NETLINK 16 0 0 0 0 0
|
||
syscon af AF_PACKET 17 0 0 0 0 0
|
||
syscon af AF_LINK 0 18 18 18 18 0
|
||
syscon af AF_ASH 18 0 0 0 0 0
|
||
syscon af AF_ECONET 19 0 0 0 0 0
|
||
syscon af AF_ATMSVC 20 0 0 0 0 0
|
||
syscon af AF_RDS 21 0 0 0 0 0
|
||
syscon af AF_SNA 22 11 11 11 11 11 # bsd consensus
|
||
syscon af AF_IRDA 23 0 0 0 0 0
|
||
syscon af AF_PPPOX 24 0 0 0 0 0
|
||
syscon af AF_WANPIPE 25 0 0 0 0 0
|
||
syscon af AF_LLC 26 0 0 0 0 0
|
||
syscon af AF_IB 27 0 0 0 0 0
|
||
syscon af AF_MPLS 28 0 0 33 33 0
|
||
syscon af AF_CAN 29 0 0 0 35 0
|
||
syscon af AF_TIPC 30 0 0 0 0 0
|
||
syscon af AF_BLUETOOTH 31 0 36 0x20 31 0
|
||
syscon af AF_IUCV 0x20 0 0 0 0 0
|
||
syscon af AF_RXRPC 33 0 0 0 0 0
|
||
syscon af AF_ISDN 34 28 26 26 26 0
|
||
syscon af AF_PHONET 35 0 0 0 0 0
|
||
syscon af AF_IEEE802154 36 0 0 0 0 0
|
||
syscon af AF_CAIF 37 0 0 0 0 0
|
||
syscon af AF_ALG 38 0 0 0 0 0
|
||
syscon af AF_NFC 39 0 0 0 0 0
|
||
syscon af AF_VSOCK 40 0 0 0 0 0
|
||
syscon af AF_KCM 41 0 0 0 0 0
|
||
syscon af AF_MAX 42 40 42 36 37 35
|
||
|
||
syscon pf PF_UNIX 1 1 1 1 1 1 # consensus
|
||
syscon pf PF_UNSPEC 0 0 0 0 0 0 # consensus
|
||
syscon pf PF_APPLETALK 5 0x10 0x10 0x10 0x10 0x10 # bsd consensus
|
||
syscon pf PF_SNA 22 11 11 11 11 11 # bsd consensus
|
||
syscon pf PF_INET6 10 30 28 24 24 23
|
||
syscon pf PF_MAX 42 40 42 36 36 35
|
||
syscon pf PF_INET 2 2 2 2 2 0 # unix consensus
|
||
syscon pf PF_LOCAL 1 1 1 1 1 0 # unix consensus
|
||
syscon pf PF_IPX 4 23 23 23 23 0 # bsd consensus
|
||
syscon pf PF_ROUTE 0x10 17 17 17 17 0 # bsd consensus
|
||
syscon pf PF_ISDN 34 28 26 26 26 0
|
||
syscon pf PF_KEY 15 29 27 30 30 0
|
||
syscon pf PF_BLUETOOTH 31 0 36 0x20 0x20 0
|
||
syscon pf PF_MPLS 28 0 0 33 33 0
|
||
syscon pf PF_ALG 38 0 0 0 0 0
|
||
syscon pf PF_ASH 18 0 0 0 0 0
|
||
syscon pf PF_ATMPVC 8 0 0 0 0 0
|
||
syscon pf PF_ATMSVC 20 0 0 0 0 0
|
||
syscon pf PF_AX25 3 0 0 0 0 0
|
||
syscon pf PF_BRIDGE 7 0 0 0 0 0
|
||
syscon pf PF_CAIF 37 0 0 0 0 0
|
||
syscon af PF_CAN 29 0 0 0 35 0
|
||
syscon pf PF_ECONET 19 0 0 0 0 0
|
||
syscon pf PF_FILE 1 0 0 0 0 0
|
||
syscon pf PF_IB 27 0 0 0 0 0
|
||
syscon pf PF_IEEE802154 36 0 0 0 0 0
|
||
syscon pf PF_IRDA 23 0 0 0 0 0
|
||
syscon pf PF_IUCV 0x20 0 0 0 0 0
|
||
syscon pf PF_KCM 41 0 0 0 0 0
|
||
syscon pf PF_LLC 26 0 0 0 0 0
|
||
syscon pf PF_NETBEUI 13 0 0 0 0 0
|
||
syscon pf PF_NETLINK 0x10 0 0 0 0 0
|
||
syscon pf PF_NETROM 6 0 0 0 0 0
|
||
syscon pf PF_NFC 39 0 0 0 0 0
|
||
syscon pf PF_PACKET 17 0 0 0 0 0
|
||
syscon pf PF_PHONET 35 0 0 0 0 0
|
||
syscon pf PF_PPPOX 24 0 0 0 0 0
|
||
syscon pf PF_RDS 21 0 0 0 0 0
|
||
syscon pf PF_ROSE 11 0 0 0 0 0
|
||
syscon pf PF_RXRPC 33 0 0 0 0 0
|
||
syscon pf PF_SECURITY 14 0 0 0 0 0
|
||
syscon pf PF_TIPC 30 0 0 0 0 0
|
||
syscon pf PF_VSOCK 40 0 0 0 0 0
|
||
syscon pf PF_WANPIPE 25 0 0 0 0 0
|
||
syscon pf PF_X25 9 0 0 0 0 0
|
||
|
||
# Eric Allman's exit() codes
|
||
#
|
||
# - Broadly supported style guideline;
|
||
# - Dating back to 1980 in 4.0BSD;
|
||
# - That won't be standardized.
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon ex EX_OK 0 0 0 0 0 0 # consensus
|
||
syscon ex EX_USAGE 64 64 64 64 64 64 # unix consensus & force NT
|
||
syscon ex EX_DATAERR 65 65 65 65 65 65 # unix consensus & force NT
|
||
syscon ex EX_NOINPUT 66 66 66 66 66 66 # unix consensus & force NT
|
||
syscon ex EX_NOUSER 67 67 67 67 67 67 # unix consensus & force NT
|
||
syscon ex EX_NOHOST 68 68 68 68 68 68 # unix consensus & force NT
|
||
syscon ex EX_UNAVAILABLE 69 69 69 69 69 69 # unix consensus & force NT
|
||
syscon ex EX_SOFTWARE 70 70 70 70 70 70 # unix consensus & force NT
|
||
syscon ex EX_OSERR 71 71 71 71 71 71 # unix consensus & force NT
|
||
syscon ex EX_OSFILE 72 72 72 72 72 72 # unix consensus & force NT
|
||
syscon ex EX_CANTCREAT 73 73 73 73 73 73 # unix consensus & force NT
|
||
syscon ex EX_IOERR 74 74 74 74 74 74 # unix consensus & force NT
|
||
syscon ex EX_TEMPFAIL 75 75 75 75 75 75 # unix consensus & force NT
|
||
syscon ex EX_PROTOCOL 76 76 76 76 76 76 # unix consensus & force NT
|
||
syscon ex EX_NOPERM 77 77 77 77 77 77 # unix consensus & force NT
|
||
syscon ex EX_CONFIG 78 78 78 78 78 78 # unix consensus & force NT
|
||
syscon ex EX__BASE 64 64 64 64 64 64 # unix consensus & force NT
|
||
syscon ex EX__MAX 78 78 78 78 78 78 # unix consensus & force NT
|
||
|
||
# getdents() constants
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon dt DT_UNKNOWN 0 0 0 0 0 0 # consensus
|
||
syscon dt DT_FIFO 1 1 1 1 1 1 # unix consensus & faked nt
|
||
syscon dt DT_CHR 2 2 2 2 2 2 # unix consensus & faked nt
|
||
syscon dt DT_DIR 4 4 4 4 4 4 # unix consensus & faked nt
|
||
syscon dt DT_BLK 6 6 6 6 6 6 # unix consensus & faked nt
|
||
syscon dt DT_REG 8 8 8 8 8 8 # unix consensus & faked nt
|
||
syscon dt DT_LNK 10 10 10 10 10 10 # unix consensus & faked nt
|
||
syscon dt DT_SOCK 12 12 12 12 12 12 # unix consensus & faked nt
|
||
|
||
# msync() flags
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon ms MS_SYNC 4 16 0 2 4 4 # faked nt
|
||
syscon ms MS_ASYNC 1 1 1 1 1 1 # consensus (faked nt)
|
||
syscon ms MS_INVALIDATE 2 2 2 4 2 0
|
||
|
||
# statvfs() flags
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon statvfs ST_RDONLY 1 1 1 1 1 0 # unix consensus
|
||
syscon statvfs ST_NOSUID 2 2 2 2 2 0 # unix consensus
|
||
syscon statvfs ST_NODEV 4 0 0 0 0x00000010 0
|
||
syscon statvfs ST_NOEXEC 8 0 0 0 4 0
|
||
syscon statvfs ST_SYNCHRONOUS 16 0 0 0 2 0
|
||
syscon statvfs ST_APPEND 0x0100 0 0 0 0 0
|
||
syscon statvfs ST_IMMUTABLE 0x0200 0 0 0 0 0
|
||
syscon statvfs ST_MANDLOCK 0x0040 0 0 0 0 0
|
||
syscon statvfs ST_NOATIME 0x0400 0 0 0x04000000 0 0
|
||
syscon statvfs ST_NODIRATIME 0x0800 0 0 0 0 0
|
||
syscon statvfs ST_WRITE 0x0080 0 0 0 0 0
|
||
syscon statvfs ST_RELATIME 0x1000 0 0 0 0x00020000 0
|
||
|
||
# sendfile() flags
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon sf SF_NODISKIO 0 0 1 0 0 0
|
||
syscon sf SF_MNOWAIT 0 0 2 0 0 0
|
||
syscon sf SF_SYNC 0 0 4 0 0 0
|
||
|
||
# mount() flags
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon mount MS_RDONLY 0x00000001 0x00000001 0x00000001 0x00000001 0x00000001 0x00000001 # consensus; MNT_RDONLY on bsd; faked nt
|
||
syscon mount MNT_RDONLY 0x00000001 0x00000001 0x00000001 0x00000001 0x00000001 0x00000001 # consensus; MS_RDONLY on linux; faked nt
|
||
syscon mount MS_NOSUID 0x00000002 0x00000008 0x00000008 0x00000008 0x00000008 0x00000001 # don't honor S_ISUID bit; bsd consensus; MNT_NOSUID on bsd; faked nt
|
||
syscon mount MNT_NOSUID 0 0x00000008 0x00000008 0x00000008 0x00000008 0x00000001 # don't honor S_ISUID bit; bsd consensus; appears incorrectly defined in linux headers; MS_NOSUID on linux; faked nt
|
||
syscon mount MS_NODEV 0x00000004 0x00000010 0x00000010 0x00000010 0x00000010 0x00000004 # disallow special files; bsd consensus; MNT_NODEV on bsd; faked nt
|
||
syscon mount MNT_NODEV 0x00000004 0x00000010 0x00000010 0x00000010 0x00000010 0x00000004 # disallow special files; bsd consensus; MS_NODEV on linux; faked nt
|
||
syscon mount MS_NOEXEC 0x00000008 0x00000004 0x00000004 0x00000004 0x00000004 0x00000008 # disallow program execution; bsd consensus; MNT_NOEXEC on bsd; faked nt
|
||
syscon mount MNT_NOEXEC 0x00000008 0x00000004 0x00000004 0x00000004 0x00000004 0x00000008 # disallow program execution; bsd consensus; MS_NOEXEC on linux; faked nt
|
||
syscon mount MS_SYNCHRONOUS 0x00000010 0x00000002 0x00000002 0x00000002 0x00000002 0x00000010 # bsd consensus; MNT_SYNCHRONOUS on bsd; faked nt
|
||
syscon mount MNT_SYNCHRONOUS 0x00000010 0x00000002 0x00000002 0x00000002 0x00000002 0x00000010 # bsd consensus; MS_SYNCHRONOUS on linux; faked nt
|
||
syscon mount MS_REMOUNT 0x00000020 0x00010000 0x00010000 0x00010000 0x00010000 0x00000020 # tune existing mounting; bsd consensus; MNT_UPDATE on bsd; faked nt
|
||
syscon mount MNT_UPDATE 0x00000020 0x00010000 0x00010000 0x00010000 0x00010000 0x00000020 # tune existing mounting; bsd consensus; MS_REMOUNT on linux; faked nt
|
||
syscon mount MS_MANDLOCK 0x00000040 0 0 0 0 0 #
|
||
syscon mount MS_DIRSYNC 0x00000080 0 0 0 0 0 #
|
||
syscon mount MS_NOATIME 0x00000400 0x10000000 0x10000000 0x00008000 0x04000000 0x00000400 # do not update access times; MNT_NOATIME on bsd
|
||
syscon mount MNT_NOATIME 0x00000400 0x10000000 0x10000000 0x00008000 0x04000000 0x00000400 # do not update access times; MS_NOATIME on linux
|
||
syscon mount MS_NODIRATIME 0x00000800 0 0 0 0 0 #
|
||
syscon mount MS_BIND 0x00001000 0 0 0 0 0 #
|
||
syscon mount MS_MOVE 0x00002000 0 0 0 0 0 #
|
||
syscon mount MS_REC 0x00004000 0 0 0 0 0 #
|
||
syscon mount MS_SILENT 0x00008000 0 0 0 0 0 #
|
||
syscon mount MS_POSIXACL 0x00010000 0 0 0 0 0 #
|
||
syscon mount MS_UNBINDABLE 0x00020000 0 0 0 0 0 #
|
||
syscon mount MS_PRIVATE 0x00040000 0 0 0 0 0 #
|
||
syscon mount MS_SLAVE 0x00080000 0 0 0 0 0 #
|
||
syscon mount MS_SHARED 0x00100000 0 0 0 0 0 #
|
||
syscon mount MS_RELATIME 0x00200000 0 0 0 0x00020000 0 # MNT_RELATIME on bsd
|
||
syscon mount MNT_RELATIME 0x00200000 0 0 0 0x00020000 0 # MS_RELATIME on linux
|
||
syscon mount MS_KERNMOUNT 0x00400000 0 0 0 0 0 #
|
||
syscon mount MS_I_VERSION 0x00800000 0 0 0 0 0 #
|
||
syscon mount MS_STRICTATIME 0x01000000 0x80000000 0 0 0 0 # enable strict update of file access time; MNT_STRICTATIME on bsd
|
||
syscon mount MNT_STRICTATIME 0x01000000 0x80000000 0 0 0 0 # enable strict update of file access time; MS_STRICTATIME on linux
|
||
syscon mount MS_LAZYTIME 0x02000000 0 0 0 0 0 #
|
||
syscon mount MS_ACTIVE 0x40000000 0 0 0 0 0 #
|
||
syscon mount MS_NOUSER 0x80000000 0 0 0 0 0 #
|
||
syscon mount MS_RMT_MASK 0x02800051 0 0 0 0 0 #
|
||
syscon mount MS_MGC_VAL 0xc0ed0000 0 0 0 0 0 # Linux 2.3
|
||
syscon mount MS_MGC_MSK 0xffff0000 0 0 0 0 0 # Linux 2.3
|
||
syscon mount MNT_ASYNC 0 0x00000040 0x00000040 0x00000040 0x00000040 0 # file system written asynchronously; bsd consensus
|
||
syscon mount MNT_RELOAD 0 0x00040000 0x00040000 0x00040000 0x00040000 0 # reload filesystem data; bsd consensus
|
||
syscon mount MNT_SUIDDIR 0 0 0x00100000 0 0 0 # special suid dir handling
|
||
syscon mount MNT_NOCLUSTERR 0 0 0x40000000 0 0 0 # disable cluster read
|
||
syscon mount MNT_NOCLUSTERW 0 0 0x80000000 0 0 0 # disable cluster write
|
||
syscon mount MNT_SNAPSHOT 0 0x40000000 0x01000000 0 0 0 # confusing
|
||
|
||
# limits
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon limits PIPE_BUF 4096 512 512 512 512 4096 # bsd consensus
|
||
syscon limits _ARG_MAX 128*1024 1024*1024 512*1024 512*1024 256*1024 32767*2 # bsd consensus
|
||
syscon limits _NAME_MAX 255 255 255 255 511 255 # probably higher on windows?
|
||
syscon limits _PATH_MAX 4096 1024 1024 1024 1024 512 # cosmopolitan libc imposes a lower 512 limit; nt theoretically goes up to 32767
|
||
syscon limits _NSIG 64 32 128 32 64 32 # _SIG_MAXSIG on FreeBSD
|
||
|
||
# unmount() flags
|
||
# a.k.a. umount2() on linux
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon unmount MNT_FORCE 1 0x00080000 0x00080000 0x00080000 0x00080000 2 # force unmount or readonly
|
||
syscon unmount MNT_DETACH 2 0 0 0 0 0 # just detach from the tree
|
||
syscon unmount MNT_EXPIRE 4 0 0 0 0 0 # mark for expiry
|
||
syscon unmount UMOUNT_NOFOLLOW 8 0 0 0 0 0 # don't follow symlinks on unmount
|
||
syscon unmount MNT_BYFSID 0 0 0x08000000 0 0 0 # if used pass "FSID:val0:val1", where val0 and val1 are the contents of the fsid_t val[] array in decimal
|
||
|
||
# reboot() magnums
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon reboot RB_AUTOBOOT 0x01234567 0 0 0 0 4 # reboots; SHUTDOWN_RESTART on NT
|
||
syscon reboot RB_POWER_OFF 0x4321fedc 0xffffffff 0x4000 0x1000 0x808 8 # SHUTDOWN_POWEROFF on NT
|
||
syscon reboot RB_POWERDOWN 0x4321fedc 0xffffffff 0x4000 0x1000 0x808 8 # openbsd/netbsd name
|
||
syscon reboot RB_POWEROFF 0x4321fedc 0xffffffff 0x4000 0x1000 0x808 8 # freebsd name
|
||
syscon reboot RB_HALT_SYSTEM 0xcdef0123 8 8 8 8 16 # the processor is simply halted; SHUTDOWN_NOREBOOT on NT
|
||
syscon reboot RB_HALT 0xcdef0123 8 8 8 8 16 # the processor is simply halted; bsd name
|
||
syscon reboot RB_SW_SUSPEND 0xd000fce2 0xffffffff 0xffffffff 0xffffffff 0xffffffff 0xd000fce2 #
|
||
syscon reboot RB_KEXEC 0x45584543 0xffffffff 0xffffffff 0xffffffff 0xffffffff 0xffffffff #
|
||
syscon reboot RB_ENABLE_CAD 0x89abcdef 0xffffffff 0xffffffff 0xffffffff 0xffffffff 0xffffffff # enable control-alt-delete reboot
|
||
syscon reboot RB_DISABLE_CAD 0 0xffffffff 0xffffffff 0xffffffff 0xffffffff 0xffffffff # make control-alt-delete just eintr
|
||
syscon reboot RB_NOSYNC 0x20000000 4 4 4 4 0x20000000 # prevents implicit sync() beforehand; polyfilled linux; polyfilled on nt just in case
|
||
|
||
# send() / recv() flags
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon msg MSG_OOB 1 1 1 1 1 1 # consensus
|
||
syscon msg MSG_PEEK 2 2 2 2 2 2 # consensus
|
||
syscon msg MSG_DONTROUTE 4 4 4 4 4 4 # consensus
|
||
syscon msg MSG_FASTOPEN 0x20000000 0 0 0 0 0 # TODO
|
||
syscon msg MSG_WAITALL 0x0100 0x40 0x40 0x40 0x40 8 # bsd consensus
|
||
syscon msg MSG_MORE 0x8000 0 0 0 0 0 # send/sendto: manual TCP_CORK hbasically
|
||
syscon msg MSG_NOSIGNAL 0x4000 0x80000 0x020000 0x0400 0x0400 0 # send/sendto: don't SIGPIPE on EOF
|
||
syscon msg MSG_DONTWAIT 0x40 0x80 0x80 0x80 0x80 0 # send/sendto: manual non-blocking
|
||
syscon msg MSG_TRUNC 0x20 0x10 0x10 0x10 0x10 0x0100 # bsd consensus
|
||
syscon msg MSG_CTRUNC 8 0x20 0x20 0x20 0x20 0x0200 # bsd consensus
|
||
syscon msg MSG_ERRQUEUE 0x2000 0 0 0 0 0x1000 # bsd consensus
|
||
syscon msg MSG_NOERROR 0x1000 0x1000 0x1000 0x1000 0x1000 0 # unix consensus
|
||
syscon msg MSG_EOR 0x80 8 8 8 8 0 # bsd consensus
|
||
syscon msg MSG_CMSG_CLOEXEC 0x40000000 0 0x040000 0x0800 0x0800 0
|
||
syscon msg MSG_WAITFORONE 0x010000 0 0x080000 0 0x2000 0
|
||
syscon msg MSG_BATCH 0x040000 0 0 0 0 0
|
||
syscon msg MSG_CONFIRM 0x0800 0 0 0 0 0
|
||
syscon msg MSG_EXCEPT 0x2000 0 0 0 0 0
|
||
syscon msg MSG_FIN 0x0200 0x0100 0x0100 0 0 0
|
||
syscon msg MSG_EOF 0x0200 0x0100 0x0100 0 0 0
|
||
syscon msg MSG_INFO 12 0 0 0 0 0
|
||
syscon msg MSG_PARITY_ERROR 9 0 0 0 0 0
|
||
syscon msg MSG_PROXY 0x10 0 0 0 0 0
|
||
syscon msg MSG_RST 0x1000 0 0 0 0 0
|
||
syscon msg MSG_STAT 11 0 0 0 0 0
|
||
syscon msg MSG_SYN 0x0400 0 0 0 0 0
|
||
syscon msg MSG_BCAST 0 0 0 0x100 0x100 0
|
||
syscon msg MSG_MCAST 0 0 0 0x200 0x200 0
|
||
syscon msg MSG_NOTIFICATION 0x8000 0 0x2000 0 0x4000 0
|
||
|
||
# getpriority() / setpriority() magnums (a.k.a. nice)
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon prio PRIO_PROCESS 0 0 0 0 0 0 # consensus / poly nt
|
||
syscon prio PRIO_PGRP 1 1 1 1 1 1 # unix consensus / poly nt
|
||
syscon prio PRIO_USER 2 2 2 2 2 2 # unix consensus / poly nt
|
||
syscon prio PRIO_MIN -20 -20 -20 -20 -20 -20 # unix consensus / poly nt
|
||
syscon prio PRIO_MAX 20 20 20 20 20 20 # unix consensus / poly nt
|
||
syscon prio NZERO 20 20 20 20 20 20 # unix consensus / polyfilled nt
|
||
|
||
# getrusage() who
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon rusage RUSAGE_SELF 0 0 0 0 0 0 # unix consensus & faked nt
|
||
syscon rusage RUSAGE_THREAD 1 99 1 1 1 1 # faked nt & unavailable on xnu
|
||
syscon rusage RUSAGE_CHILDREN -1 -1 -1 -1 -1 99 # unix consensus & unavailable on nt
|
||
syscon rusage RUSAGE_BOTH -2 99 99 99 99 99 # woop
|
||
|
||
# fast userspace mutexes
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon futex FUTEX_WAIT 0 0 0 1 0 0
|
||
syscon futex FUTEX_WAKE 1 0 0 2 1 0
|
||
syscon futex FUTEX_REQUEUE 3 0 0 3 3 0
|
||
syscon futex FUTEX_PRIVATE_FLAG 128 0 0 128 128 0
|
||
|
||
# lio_listio() magnums
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon lio LIO_WRITE 127 2 1 127 1 127
|
||
syscon lio LIO_NOWAIT 127 1 0 127 0 127
|
||
syscon lio LIO_READ 127 1 2 127 2 127
|
||
syscon lio LIO_WAIT 127 2 1 127 1 127
|
||
syscon lio LIO_NOP 127 0 0 127 0 127
|
||
|
||
# posix scheduling
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon sched SCHED_OTHER 0 127 2 127 0 127 # standard round-robin time-sharing policy
|
||
syscon sched SCHED_FIFO 1 127 1 127 1 127 # [real-time] first-in, first-out policy
|
||
syscon sched SCHED_RR 2 127 3 127 2 127 # [real-time] round-robin policy
|
||
syscon sched SCHED_BATCH 3 127 2 127 0 127 # for "batch" style execution of processes; polyfilled as SCHED_OTHER on non-Linux
|
||
syscon sched SCHED_IDLE 5 127 2 127 0 127 # for running very low priority background jobs; polyfilled as SCHED_OTHER on non-Linux
|
||
syscon sched SCHED_DEADLINE 6 127 127 127 127 127 # can only be set by sched_setattr()
|
||
syscon sched SCHED_RESET_ON_FORK 0x40000000 0 0 0 0 0 # Can be ORed in to make sure the process is reverted back to SCHED_NORMAL on fork(); no-op on non-Linux
|
||
|
||
# Teletypewriter Control, e.g.
|
||
#
|
||
# TCSETS → About 70,800 results (0.31 seconds)
|
||
# = TCSETNOW → About 47,700 results (0.31 seconds)
|
||
# ≈ TCSETA → About 12,600 results (0.32 seconds)
|
||
# = TIOCSETA → About 3,110 results (0.41 seconds)
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon termios TCGETS 0x5401 0x40487413 0x402c7413 0x402c7413 0x402c7413 0 # Gets console settings; tcgetattr(tty, argp) → ioctl(tty, TCGETS, struct termios *argp); polyfilled NT
|
||
syscon compat TIOCGETA 0x5401 0x40487413 0x402c7413 0x402c7413 0x402c7413 0 # Gets console settings; = tcgetattr(tty, struct termios *argp)
|
||
#syscon compat TCGETA 0x5405 0 0 0 0 0 # Gets console settings; ≈ ioctl(fd, TCGETA, struct termio *argp)
|
||
syscon termios TCSANOW 0 0 0 0 0 0 # Sets console settings; tcsetattr(fd, TCSANOW, argp); polyfilled NT
|
||
syscon termios TCSETS 0x5402 0x80487414 0x802c7414 0x802c7414 0x802c7414 0x5402 # Sets console settings; = ioctl(tty, TCSETS, const struct termios *argp); polyfilled NT
|
||
syscon compat TIOCSETA 0x5402 0x80487414 0x802c7414 0x802c7414 0x802c7414 0x5402 # Sets console settings; = ioctl(tty, TIOCSETA, const struct termios *argp); polyfilled NT
|
||
#syscon compat TCSETA 0x5402 0x80487414 0x802c7414 0x802c7414 0x802c7414 0x5402 # Sets console settings; ≈ ioctl(tty, TCSETA, const struct termio *argp); polyfilled NT
|
||
syscon termios TCSADRAIN 1 1 1 1 1 1 # Drains output & sets console settings; tcsetawttr(fd, TCSADRAIN, argp); polyfilled NT
|
||
syscon termios TCSETSW 0x5403 0x80487415 0x802c7415 0x802c7415 0x802c7415 0x5403 # Drains output & sets console settings; = ioctl(tty, TCSETSW, const struct termios *argp); polyfilled NT
|
||
syscon compat TIOCSETAW 0x5403 0x80487415 0x802c7415 0x802c7415 0x802c7415 0x5403 # Drains output & sets console settings; = ioctl(tty, TIOCSETAW, const struct termios *argp); polyfilled NT
|
||
#syscon compat TCSETAW 0x5403 0x80487415 0x802c7415 0x802c7415 0x802c7415 0x5403 # Drains output & sets console settings; ≈ ioctl(tty, TCSETAW, const struct termio *argp); polyfilled NT
|
||
syscon termios TCSAFLUSH 2 2 2 2 2 2 # Drops input & drains output & sets console settings; tcsetafttr(fd, TCSAFLUSH, argp); polyfilled NT
|
||
syscon termios TCSETSF 0x5404 0x80487416 0x802c7416 0x802c7416 0x802c7416 0x5404 # Drops input & drains output & sets console settings; = ioctl(tty, TCSETSF, const struct termios *argp); polyfilled NT
|
||
syscon compat TIOCSETAF 0x5404 0x80487416 0x802c7416 0x802c7416 0x802c7416 0x5402 # Drops input & drains output & sets console settings; = ioctl(tty, TIOCSETAF, const struct termios *argp); polyfilled NT
|
||
#syscon compat TCSETAF 0x5404 0x80487416 0x802c7416 0x802c7416 0x802c7416 0x5402 # Drops input & drains output & sets console settings; ≈ ioctl(tty, TCSETAF, const struct termio *argp); polyfilled NT
|
||
syscon termios TIOCGWINSZ 0x5413 1074295912 1074295912 1074295912 1074295912 0x5413 # ioctl(tty, TIOCGWINSZ, struct winsize *argp); polyfilled NT
|
||
syscon termios TIOCSWINSZ 0x5414 0x80087467 0x80087467 0x80087467 0x80087467 0x5414 # ioctl(tty, TIOCSWINSZ, const struct winsize *argp) (faked NT)
|
||
syscon termios TIOCOUTQ 0x5411 0x40047473 0x40047473 0x40047473 0x40047473 0 # get # bytes queued in TTY's output buffer ioctl(tty, TIOCSWINSZ, const struct winsize *argp)
|
||
syscon termios TIOCGPGRP 0x540f 0x40047477 0x40047477 0x40047477 0x40047477 0 # get pgrp of tty
|
||
syscon termios TIOCSPGRP 0x5410 0x80047476 0x80047476 0x80047476 0x80047476 0 # set pgrp of tty
|
||
syscon termios TIOCSBRK 0x5427 0x2000747b 0x2000747b 0x2000747b 0x2000747b 0 # set break bit
|
||
syscon termios TIOCCBRK 0x5428 0x2000747a 0x2000747a 0x2000747a 0x2000747a 0 # boop
|
||
syscon termios TIOCCONS 0x541d 0x80047462 0x80047462 0x80047462 0x80047462 0 # boop
|
||
syscon termios TIOCGETD 0x5424 0x4004741a 0x4004741a 0x4004741a 0x4004741a 0 # boop
|
||
syscon termios TIOCNOTTY 0x5422 0x20007471 0x20007471 0x20007471 0x20007471 0 # boop
|
||
syscon termios TIOCNXCL 0x540d 0x2000740e 0x2000740e 0x2000740e 0x2000740e 0 # boop
|
||
syscon termios TIOCSCTTY 0x540e 0x20007461 0x20007461 0x20007461 0x20007461 0 # boop
|
||
syscon termios TIOCSETD 0x5423 0x8004741b 0x8004741b 0x8004741b 0x8004741b 0 # boop
|
||
syscon termios TIOCSIG 0x40045436 0x2000745f 0x2004745f 0x8004745f 0x8004745f 0 # boop
|
||
syscon termios TIOCSTI 0x5412 0x80017472 0x80017472 0 0 0 # boop
|
||
syscon termios TIOCGSID 0x5429 0x40047463 0x40047463 0x40047463 0x40047463 0 # boop
|
||
syscon termios TABLDISC 0 0x3 0 0x3 0x3 0 # boop
|
||
syscon termios SLIPDISC 0 0x4 0x4 0x4 0x4 0 # boop
|
||
syscon termios PPPDISC 0 0x5 0x5 0x5 0x5 0 # boop
|
||
syscon termios TCSBRK 0x5409 0x2000745e 0x2000745e 0x2000745e 0x2000745e 0 # TIOCDRAIN on BSD
|
||
syscon termios TIOCDRAIN 0x5409 0x2000745e 0x2000745e 0x2000745e 0x2000745e 0 # TCSBRK on Linux
|
||
syscon termios TIOCSTAT 0 0x20007465 0x20007465 0x20007465 0x20007465 0 # boop
|
||
syscon termios TIOCSTART 0 0x2000746e 0x2000746e 0x2000746e 0x2000746e 0 # boop
|
||
syscon termios TIOCCDTR 0 0x20007478 0x20007478 0x20007478 0x20007478 0 # clear data terminal ready
|
||
syscon termios TIOCSDTR 0 0x20007479 0x20007479 0x20007479 0x20007479 0 # boop
|
||
syscon termios TIOCEXT 0 0x80047460 0x80047460 0x80047460 0x80047460 0 # boop
|
||
syscon termios TIOCGDRAINWAIT 0 0x40047456 0x40047456 0 0 0 # boop
|
||
syscon termios TIOCTIMESTAMP 0 0x40107459 0x40107459 0 0 0 # boop
|
||
syscon termios TIOCSDRAINWAIT 0 0x80047457 0x80047457 0 0 0 # boop
|
||
syscon termios TIOCREMOTE 0 0x80047469 0 0x80047469 0x80047469 0 # boop
|
||
syscon termios TTYDISC 0 0 0 0 0 0 # boop
|
||
syscon termios TIOCFLAG_SOFTCAR 0 0 0 0x1 0x1 0 # boop
|
||
syscon termios TIOCFLAG_PPS 0 0 0 0x10 0x10 0 # boop
|
||
syscon termios TIOCFLAG_CLOCAL 0 0 0 0x2 0x2 0 # boop
|
||
syscon termios TIOCCHKVERAUTH 0 0 0 0x2000741e 0x2000741e 0 # boop
|
||
syscon termios TIOCGFLAGS 0 0 0 0x4004745d 0x4004745d 0 # boop
|
||
syscon termios TIOCGTSTAMP 0 0 0 0x4010745b 0x4010745b 0 # boop
|
||
syscon termios STRIPDISC 0 0 0 0x6 0x6 0 # boop
|
||
syscon termios NMEADISC 0 0 0 0x7 0x7 0 # boop
|
||
syscon termios TIOCUCNTL_CBRK 0 0 0 0x7a 0x7a 0 # boop
|
||
syscon termios TIOCFLAG_MDMBUF 0 0 0 0x8 0x8 0 # boop
|
||
syscon termios TIOCSETVERAUTH 0 0 0 0x8004741c 0x8004741c 0 # boop
|
||
syscon termios TIOCSFLAGS 0 0 0 0x8004745c 0x8004745c 0 # boop
|
||
syscon termios TIOCSTSTAMP 0 0 0 0x8008745a 0x8008745a 0 # boop
|
||
syscon termios ENDRUNDISC 0 0 0 0x9 0x9 0 # boop
|
||
syscon termios TIOCPTMASTER 0 0 0x2000741c 0 0 0 # boop
|
||
syscon termios NETGRAPHDISC 0 0 0x6 0 0 0 # boop
|
||
syscon termios H4DISC 0 0 0x7 0 0 0 # boop
|
||
|
||
# Teletypewriter Control Modes
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon termios CS5 0b0000000000000000 0b000000000000000000 0b000000000000000000 0b0000000000000000 0b0000000000000000 0b0000000000000000 # termios.c_cflag; consensus
|
||
syscon termios CS6 0b0000000000010000 0b000000000100000000 0b000000000100000000 0b0000000100000000 0b0000000100000000 0b0000000000010000 # termios.c_cflag; 6-bit characters
|
||
syscon termios CS7 0b0000000000100000 0b000000001000000000 0b000000001000000000 0b0000001000000000 0b0000001000000000 0b0000000000100000 # termios.c_cflag; 7-bit characters
|
||
syscon termios CS8 0b0000000000110000 0b000000001100000000 0b000000001100000000 0b0000001100000000 0b0000001100000000 0b0000000000110000 # termios.c_cflag; 8-bit characters
|
||
syscon termios CSIZE 0b0000000000110000 0b000000001100000000 0b000000001100000000 0b0000001100000000 0b0000001100000000 0b0000000000110000 # termios.c_cflag; mask for CS𝑥 flags
|
||
syscon termios CSTOPB 0b0000000001000000 0b000000010000000000 0b000000010000000000 0b0000010000000000 0b0000010000000000 0b0000000001000000 # termios.c_cflag; bsd consensus
|
||
syscon termios CREAD 0b0000000010000000 0b000000100000000000 0b000000100000000000 0b0000100000000000 0b0000100000000000 0b0000000010000000 # termios.c_cflag; bsd consensus
|
||
syscon termios PARENB 0b0000000100000000 0b000001000000000000 0b000001000000000000 0b0001000000000000 0b0001000000000000 0b0000000100000000 # termios.c_cflag
|
||
syscon termios PARODD 0b0000001000000000 0b000010000000000000 0b000010000000000000 0b0010000000000000 0b0010000000000000 0b0000001000000000 # termios.c_cflag
|
||
syscon termios HUPCL 0b0000010000000000 0b000100000000000000 0b000100000000000000 0b0100000000000000 0b0100000000000000 0b0000010000000000 # termios.c_cflag; bsd consensus
|
||
syscon termios CLOCAL 0b0000100000000000 0b1000000000000000 0b1000000000000000 0b1000000000000000 0b1000000000000000 0b0000100000000000 # termios.c_cflag; consensus
|
||
|
||
# Teletypewriter Local Modes
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon termios ISIG 0b0000000000000001 0b0000000010000000 0b0000000010000000 0b0000000010000000 0b0000000010000000 0b0000000000000001 # termios.c_lflag|=ISIG makes Ctrl-C, Ctrl-\, etc. generate signals
|
||
syscon termios ICANON 0b0000000000000010 0b0000000100000000 0b0000000100000000 0b0000000100000000 0b0000000100000000 0b0000000000000010 # termios.c_lflag&=~ICANON disables 1960's version of gnu readline (see also VMIN)
|
||
syscon termios XCASE 0b0000000000000100 0 0 16777216 0 0b0000000000000100 # termios.c_lflag
|
||
syscon termios ECHO 0b0000000000001000 0b0000000000001000 0b0000000000001000 0b0000000000001000 0b0000000000001000 0b0000000000001000 # termios.c_lflag&=~ECHO is for passwords and raw mode
|
||
syscon termios ECHOE 0b0000000000010000 0b0000000000000010 0b0000000000000010 0b0000000000000010 0b0000000000000010 0b0000000000010000 # termios.c_lflag
|
||
syscon termios ECHOK 0b0000000000100000 0b0000000000000100 0b0000000000000100 0b0000000000000100 0b0000000000000100 0b0000000000100000 # termios.c_lflag
|
||
syscon termios ECHONL 0b0000000001000000 0b0000000000010000 0b0000000000010000 0b0000000000010000 0b0000000000010000 0b0000000001000000 # termios.c_lflag
|
||
syscon termios NOFLSH 0b0000000010000000 2147483648 2147483648 2147483648 2147483648 0b0000000010000000 # termios.c_lflag|=NOFLSH means don't flush on INT/QUIT/SUSP
|
||
syscon termios TOSTOP 0b0000000100000000 4194304 4194304 4194304 4194304 0b0000000100000000 # termios.c_lflag|=TOSTOP raises SIGTTOU to process group if background job tries to write to controlling terminal
|
||
syscon termios ECHOCTL 0b0000001000000000 0b0000000001000000 0b0000000001000000 0b0000000001000000 0b0000000001000000 0b0000001000000000 # termios.c_lflag|=ECHOCTL prints ^𝑥 codes for monotonic motion
|
||
syscon termios ECHOPRT 0b0000010000000000 0b0000000000100000 0b0000000000100000 0b0000000000100000 0b0000000000100000 0b0000010000000000 # termios.c_lflag|=ECHOPRT includes the parity bit
|
||
syscon termios ECHOKE 0b0000100000000000 0b0000000000000001 0b0000000000000001 0b0000000000000001 0b0000000000000001 0b0000100000000000 # termios.c_lflag
|
||
syscon termios FLUSHO 0b0001000000000000 8388608 8388608 8388608 8388608 0b0001000000000000 # termios.c_lflag
|
||
syscon termios PENDIN 0b0100000000000000 536870912 536870912 536870912 536870912 0b0100000000000000 # termios.c_lflag
|
||
syscon termios IEXTEN 0b1000000000000000 0b0000010000000000 0b0000010000000000 0b0000010000000000 0b0000010000000000 0b1000000000000000 # termios.c_lflag&=~IEXTEN disables platform input processing magic
|
||
syscon termios EXTPROC 65536 0b0000100000000000 0b0000100000000000 0b0000100000000000 0b0000100000000000 65536 # termios.c_lflag
|
||
|
||
# Teletypewriter Input Modes
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon termios IGNBRK 0b0000000000000001 0b0000000000000001 0b0000000000000001 0b0000000000000001 0b0000000000000001 0b0000000000000001 # termios.c_iflag it's complicated, uart only? UNIXCONSENSUS
|
||
syscon termios BRKINT 0b0000000000000010 0b0000000000000010 0b0000000000000010 0b0000000000000010 0b0000000000000010 0b0000000000000010 # termios.c_iflag it's complicated, uart only? UNIXCONSENSUS
|
||
syscon termios IGNPAR 0b0000000000000100 0b0000000000000100 0b0000000000000100 0b0000000000000100 0b0000000000000100 0b0000000000000100 # termios.c_iflag|=IGNPAR ignores parity and framing errors; see PARMRK UNIXCONSENSUS
|
||
syscon termios PARMRK 0b0000000000001000 0b0000000000001000 0b0000000000001000 0b0000000000001000 0b0000000000001000 0b0000000000001000 # termios.c_iflag|=PARMRK passes-through parity bit UNIXCONSENSUS
|
||
syscon termios INPCK 0b0000000000010000 0b0000000000010000 0b0000000000010000 0b0000000000010000 0b0000000000010000 0b0000000000010000 # termios.c_iflag|=INPCK enables parity checking UNIXCONSENSUS
|
||
syscon termios ISTRIP 0b0000000000100000 0b0000000000100000 0b0000000000100000 0b0000000000100000 0b0000000000100000 0b0000000000100000 # termios.c_iflag|=ISTRIP automates read(1)&0x7f UNIXCONSENSUS
|
||
syscon termios INLCR 0b0000000001000000 0b0000000001000000 0b0000000001000000 0b0000000001000000 0b0000000001000000 0b0000000001000000 # termios.c_iflag|=INLCR maps \n → \r input UNIXCONSENSUS
|
||
syscon termios IGNCR 0b0000000010000000 0b0000000010000000 0b0000000010000000 0b0000000010000000 0b0000000010000000 0b0000000010000000 # termios.c_iflag|=IGNCR maps \r → ∅ input UNIXCONSENSUS
|
||
syscon termios ICRNL 0b0000000100000000 0b0000000100000000 0b0000000100000000 0b0000000100000000 0b0000000100000000 0b0000000100000000 # termios.c_iflag|=ICRNL maps \r → \n input UNIXCONSENSUS
|
||
syscon termios IUCLC 0b0000001000000000 0 0 0b0001000000000000 0 0b0000001000000000 # termios.c_iflag|=IUCLC maps A-Z → a-z input
|
||
syscon termios IXON 0b0000010000000000 0b0000001000000000 0b0000001000000000 0b0000001000000000 0b0000001000000000 0b0000010000000000 # termios.c_iflag|=IXON enables flow rida
|
||
syscon termios IXANY 0b0000100000000000 0b0000100000000000 0b0000100000000000 0b0000100000000000 0b0000100000000000 0b0000100000000000 # termios.c_iflag|=IXANY typing will un-stuck teletype UNIXCONSENSUS
|
||
syscon termios IXOFF 0b0001000000000000 0b0000010000000000 0b0000010000000000 0b0000010000000000 0b0000010000000000 0b0001000000000000 # termios.c_iflag|=IXOFF disables annoying display freeze keys
|
||
syscon termios IMAXBEL 0b0010000000000000 0b0010000000000000 0b0010000000000000 0b0010000000000000 0b0010000000000000 0b0010000000000000 # termios.c_iflag|=IMAXBEL rings when queue full UNIXCONSENSUS
|
||
syscon termios IUTF8 0b0100000000000000 0b0100000000000000 0 0 0 0b0100000000000000 # termios.c_iflag|=IUTF8 helps w/ rubout on UTF-8 input
|
||
|
||
# Teletypewriter Output Modes
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon termios OPOST 0b0000000000000001 0b000000000000000001 0b000000000000000001 0b0000000000000001 0b0000000000000001 0b0000000000000001 # termios.c_oflag&=~OPOST disables output processing magic, e.g. MULTICS newlines
|
||
syscon termios OLCUC 0b0000000000000010 0 0 0b0000000000100000 0 0b0000000000000010 # termios.c_oflag|=OLCUC maps a-z → A-Z output (SHOUTING)
|
||
syscon termios ONLCR 0b0000000000000100 0b000000000000000010 0b000000000000000010 0b0000000000000010 0b0000000000000010 0b0000000000000100 # termios.c_oflag|=ONLCR map \n → \r\n output (MULTICS newline) and requires OPOST
|
||
syscon termios OCRNL 0b0000000000001000 0b000000000000010000 0b000000000000010000 0b0000000000010000 0b0000000000010000 0b0000000000001000 # termios.c_oflag|=OCRNL maps \r → \n output
|
||
syscon termios ONOCR 0b0000000000010000 0b000000000000100000 0b000000000000100000 0b0000000001000000 0b0000000001000000 0b0000000000010000 # termios.c_oflag|=ONOCR maps \r → ∅ output iff column 0
|
||
syscon termios ONLRET 0b0000000000100000 0b000000000001000000 0b000000000001000000 0b0000000010000000 0b0000000010000000 0b0000000000100000 # termios.c_oflag|=ONLRET maps \r → ∅ output
|
||
syscon termios OFILL 0b0000000001000000 0b000000000010000000 0 0 0 0b0000000001000000 # termios.c_oflag
|
||
syscon termios OFDEL 0b0000000010000000 0b100000000000000000 0 0 0 0b0000000010000000 # termios.c_oflag
|
||
syscon termios NLDLY 0b0000000100000000 0b000000001100000000 0b000000001100000000 0 0 0b0000000100000000 # (termios.c_oflag & NLDLY) ∈ {NL0,NL1,NL2,NL3}
|
||
syscon termios NL0 0b0000000000000000 0b000000000000000000 0b000000000000000000 0 0b000000000000000000 0b0000000000000000 # (termios.c_oflag & NLDLY) == NL0
|
||
syscon termios NL1 0b0000000100000000 0b000000000100000000 0b000000000100000000 0 0b000000000100000000 0b0000000100000000 # (termios.c_oflag & NLDLY) == NL1
|
||
syscon termios NL2 0 0b000000001000000000 0b000000001000000000 0 0b000000001000000000 0 # (termios.c_oflag & NLDLY) == NL2
|
||
syscon termios NL3 0 0b000000001100000000 0b000000001100000000 0 0b000000001100000000 0 # (termios.c_oflag & NLDLY) == NL3
|
||
syscon termios CRDLY 0b0000011000000000 0b000011000000000000 0b000011000000000000 0 0 0b0000011000000000 # (termios.c_oflag & CRDLY) ∈ {CR0,CR1,CR2,CR3}
|
||
syscon termios CR0 0b0000000000000000 0b000000000000000000 0b000000000000000000 0 0b000000000000000000 0b0000000000000000 # (termios.c_oflag & CRDLY) == CR0
|
||
syscon termios CR1 0b0000001000000000 0b000001000000000000 0b000001000000000000 0 0b000001000000000000 0b0000001000000000 # (termios.c_oflag & CRDLY) == CR1
|
||
syscon termios CR2 0b0000010000000000 0b000010000000000000 0b000010000000000000 0 0b000000010000000000 0b0000010000000000 # (termios.c_oflag & CRDLY) == CR2
|
||
syscon termios CR3 0b0000011000000000 0b000011000000000000 0b000011000000000000 0 0b000000011000000000 0b0000011000000000 # (termios.c_oflag & CRDLY) == CR3
|
||
syscon termios TABDLY 0b0001100000000000 0b000000110000000100 0b000000000000000100 0 0 0b0001100000000000 # (termios.c_oflag & TABDLY) ∈ {TAB0,TAB1,TAB2,TAB3,XTABS}
|
||
syscon termios TAB0 0b0000000000000000 0b000000000000000000 0b000000000000000000 0 0b000000000000000000 0b0000000000000000 # (termios.c_oflag & TABDLY) == TAB0
|
||
syscon termios TAB1 0b0000100000000000 0b000000010000000000 0b000000010000000000 0 0b000000010000000000 0b0000100000000000 # (termios.c_oflag & TABDLY) == TAB1
|
||
syscon termios TAB2 0b0001000000000000 0b000000100000000000 0b000000100000000000 0 0b000000100000000000 0b0001000000000000 # (termios.c_oflag & TABDLY) == TAB2
|
||
syscon termios TAB3 0b0001100000000000 0b000000000000000100 0b000000000000000100 0 0b000000000000000100 0b0001100000000000 # (termios.c_oflag & TABDLY) == TAB3
|
||
syscon termios XTABS 0b0001100000000000 0b000000110000000000 0b000000110000000000 0 0b000000110000000000 0b0001100000000000 # (termios.c_oflag & TABDLY) == XTABS
|
||
syscon termios BSDLY 0b0010000000000000 0b001000000000000000 0b001000000000000000 0 0 0b0010000000000000 # termios.c_oflag
|
||
syscon termios BS0 0b0000000000000000 0b000000000000000000 0b000000000000000000 0 0 0b0000000000000000 # termios.c_oflag
|
||
syscon termios BS1 0b0010000000000000 0b001000000000000000 0b001000000000000000 0 0 0b0010000000000000 # termios.c_oflag
|
||
syscon termios VTDLY 0b0100000000000000 0b010000000000000000 0b010000000000000000 0 0 0b0100000000000000 # termios.c_oflag
|
||
syscon termios VT0 0b0000000000000000 0b000000000000000000 0b000000000000000000 0 0 0b0000000000000000 # termios.c_oflag
|
||
syscon termios VT1 0b0100000000000000 0b010000000000000000 0b010000000000000000 0 0 0b0100000000000000 # termios.c_oflag
|
||
syscon termios FFDLY 0b1000000000000000 0b000100000000000000 0b000100000000000000 0 0 0b1000000000000000 # termios.c_oflag
|
||
syscon termios FF0 0b0000000000000000 0b000000000000000000 0b000000000000000000 0 0 0b0000000000000000 # termios.c_oflag
|
||
syscon termios FF1 0b1000000000000000 0b000100000000000000 0b000100000000000000 0 0 0b1000000000000000 # termios.c_oflag
|
||
|
||
# Teletypewriter Special Control Character Assignments
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon termios VMIN 6+1 16 16 16 16 6 # termios.c_cc[VMIN]=𝑥 in non-canonical mode can be set to 0 for non-blocking reads, 1 for single character raw mode reads, or higher to buffer
|
||
syscon termios VTIME 5+1 17 17 17 17 5 # termios.c_cc[VTIME]=𝑥 sets non-canonical read timeout to 𝑥×𝟷𝟶𝟶ms which is needed when entering escape sequences manually with the escape key
|
||
syscon termios NCCS 20 20 20 20 20 20 # ARRAYLEN(termios.c_cc); we schlep c_line into c_cc on linux
|
||
syscon termios VINTR 0+1 8 8 8 8 0 # termios.c_cc[VINTR]=𝑥
|
||
syscon termios VQUIT 1+1 9 9 9 9 1 # termios.c_cc[VQUIT]=𝑥
|
||
syscon termios VERASE 2+1 3 3 3 3 2 # termios.c_cc[VERASE]=𝑥
|
||
syscon termios VKILL 3+1 5 5 5 5 3 # termios.c_cc[VKILL]=𝑥
|
||
syscon termios VEOF 4+1 0 0 0 0 4 # termios.c_cc[VEOF]=𝑥
|
||
syscon termios VSWTC 7+1 0 0 0 0 7 # termios.c_cc[VSWTC]=𝑥
|
||
syscon termios VSTART 8+1 12 12 12 12 8 # termios.c_cc[VSTART]=𝑥
|
||
syscon termios VSTOP 9+1 13 13 13 13 9 # termios.c_cc[VSTOP]=𝑥
|
||
syscon termios VSUSP 10+1 10 10 10 10 10 # termios.c_cc[VSUSP]=𝑥 defines suspend, i.e. Ctrl-Z (a.k.a. →, ^Z, SUB, 26, 032, 0x1A, ord('Z')^0b01000000); unix consensus
|
||
syscon termios VEOL 11+1 1 1 1 1 11 # termios.c_cc[VEOL]=𝑥
|
||
syscon termios VREPRINT 12+1 6 6 6 6 12 # termios.c_cc[VREPRINT]=𝑥
|
||
syscon termios VDISCARD 13+1 15 15 15 15 13 # termios.c_cc[VDISCARD]=𝑥
|
||
syscon termios VWERASE 14+1 4 4 4 4 14 # termios.c_cc[VWERASE]=𝑥
|
||
syscon termios VLNEXT 15+1 14 14 14 14 15 # termios.c_cc[VLNEXT]=𝑥
|
||
syscon termios VEOL2 16+1 2 2 2 2 16 # termios.c_cc[VEOL2]=𝑥
|
||
|
||
syscon termios TIOCSERGETLSR 0x5459 0 0 0 0 0 #
|
||
syscon termios TIOCSERGETMULTI 0x545a 0 0 0 0 0 #
|
||
syscon termios TIOCSERSETMULTI 0x545b 0 0 0 0 0 #
|
||
syscon termios TIOCSER_TEMT 1 0 0 0 0 0 #
|
||
syscon termios VERIFY 47 0 0 0 0 0
|
||
syscon termios CIBAUD 0x100f0000 0 0 0 0 0
|
||
syscon termios CMSPAR 0x40000000 0 0 0 0 0
|
||
syscon termios BUSY 4 0 0 0 0 0
|
||
syscon termios CBAUD 0x100f 0 0 0 0 0
|
||
syscon termios CBAUDEX 0x1000 0 0 0 0 0
|
||
syscon termios EXTA 14 0x4b00 0x4b00 0x4b00 0x4b00 0 # bsd consensus
|
||
syscon termios EXTB 15 0x9600 0x9600 0x9600 0x9600 0 # bsd consensus
|
||
syscon termios ERA 0x02002c 45 45 0 0 0
|
||
syscon termios EMPTY 0 0 0 0 0 0 # consensus
|
||
|
||
syscon termios TCFLSH 0x540b 0x80047410 0x80047410 0x80047410 0x80047410 0 # see tcflush; TIOCFLUSH on BSD
|
||
syscon termios TIOCFLUSH 0x540b 0x80047410 0x80047410 0x80047410 0x80047410 0 # see tcflush; TCFLSH on Linux
|
||
syscon termios TCIFLUSH 0 1 1 1 1 0 # see tcflush; bsd consensus; faked nt
|
||
syscon termios TCOFLUSH 1 2 2 2 2 1 # see tcflush; bsd consensus; faked nt
|
||
syscon termios TCIOFLUSH 2 3 3 3 3 2 # see tcflush; bsd consensus; faked nt
|
||
|
||
syscon termios TCXONC 0x540A 0 0 0 0 0 # see tcflow
|
||
syscon termios TIOCSTOP 0x540A 0x2000746f 0x2000746f 0x2000746f 0x2000746f 0 # see tcflow
|
||
syscon termios TIOCSTART 0x540A 0x2000746e 0x2000746e 0x2000746e 0x2000746e 0 # see tcflow
|
||
syscon termios TCOOFF 0 1 1 1 1 0 # see tcflow; bsd consensus
|
||
syscon termios TCOON 1 2 2 2 2 1 # see tcflow; bsd consensus
|
||
syscon termios TCIOFF 2 3 3 3 3 2 # see tcflow; bsd consensus
|
||
syscon termios TCION 3 4 4 4 4 3 # see tcflow; bsd consensus
|
||
|
||
syscon termios CSTART 17 17 17 17 17 0 # unix consensus
|
||
syscon termios CSTOP 19 19 19 19 19 0 # unix consensus
|
||
|
||
# Pseudoteletypewriter Control
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon pty TIOCGPTN 0x80045430 0 0x4004740f 0 0 0 # boop
|
||
syscon pty TIOCSPTLCK 0x40045431 0 0 0 0 0 # boop
|
||
syscon pty TIOCPKT 0x5420 0x80047470 0x80047470 0x80047470 0x80047470 -1 # boop
|
||
syscon pty TIOCPKT_DATA 0 0 0 0 0 0 # consensus
|
||
syscon pty TIOCPKT_FLUSHREAD 1 1 1 1 1 1 # unix consensus
|
||
syscon pty TIOCPKT_FLUSHWRITE 2 2 2 2 2 2 # unix consensus
|
||
syscon pty TIOCPKT_STOP 4 4 4 4 4 4 # unix consensus
|
||
syscon pty TIOCPKT_START 8 8 8 8 8 8 # unix consensus
|
||
syscon pty TIOCPKT_NOSTOP 16 16 16 16 16 16 # unix consensus
|
||
syscon pty TIOCPKT_DOSTOP 32 32 32 32 32 32 # unix consensus
|
||
syscon pty TIOCPKT_IOCTL 64 64 64 64 64 64 # unix consensus
|
||
syscon pty PTMGET 0 0 0 0x40287401 0x40287401 -1 # for /dev/ptm
|
||
|
||
# Modem Control
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon modem TIOCMGET 0x5415 0x4004746a 0x4004746a 0x4004746a 0x4004746a -1 # get status of modem bits; ioctl(fd, TIOCMGET, int *argp)
|
||
syscon modem TIOCMSET 0x5418 0x8004746d 0x8004746d 0x8004746d 0x8004746d -1 # set status of modem bits; ioctl(fd, TIOCMSET, const int *argp)
|
||
syscon modem TIOCMBIC 0x5417 0x8004746b 0x8004746b 0x8004746b 0x8004746b -1 # clear indicated modem bits; ioctl(fd, TIOCMBIC, int *argp)
|
||
syscon modem TIOCMBIS 0x5416 0x8004746c 0x8004746c 0x8004746c 0x8004746c -1 # set indicated modem bits; ioctl(fd, TIOCMBIS, int *argp)
|
||
syscon modem TIOCM_LE 0b0000000000000001 0b0000000000000001 0b0000000000000001 0b0000000000000001 0b0000000000000001 0b0000000000000001 # consensus
|
||
syscon modem TIOCM_DTR 0b0000000000000010 0b0000000000000010 0b0000000000000010 0b0000000000000010 0b0000000000000010 0b0000000000000010 # consensus
|
||
syscon modem TIOCM_RTS 0b0000000000000100 0b0000000000000100 0b0000000000000100 0b0000000000000100 0b0000000000000100 0b0000000000000100 # consensus
|
||
syscon modem TIOCM_ST 0b0000000000001000 0b0000000000001000 0b0000000000001000 0b0000000000001000 0b0000000000001000 0b0000000000001000 # consensus
|
||
syscon modem TIOCM_SR 0b0000000000010000 0b0000000000010000 0b0000000000010000 0b0000000000010000 0b0000000000010000 0b0000000000010000 # consensus
|
||
syscon modem TIOCM_CTS 0b0000000000100000 0b0000000000100000 0b0000000000100000 0b0000000000100000 0b0000000000100000 0b0000000000100000 # consensus
|
||
syscon modem TIOCM_CAR 0b0000000001000000 0b0000000001000000 0b0000000001000000 0b0000000001000000 0b0000000001000000 0b0000000001000000 # consensus
|
||
syscon modem TIOCM_CD 0b0000000001000000 0b0000000001000000 0b0000000001000000 0b0000000001000000 0b0000000001000000 0b0000000001000000 # boop
|
||
syscon modem TIOCM_RI 0b0000000010000000 0b0000000010000000 0b0000000010000000 0b0000000010000000 0b0000000010000000 0b0000000010000000 # boop
|
||
syscon modem TIOCM_RNG 0b0000000010000000 0b0000000010000000 0b0000000010000000 0b0000000010000000 0b0000000010000000 0b0000000010000000 # boop
|
||
syscon modem TIOCM_DSR 0b0000000100000000 0b0000000100000000 0b0000000100000000 0b0000000100000000 0b0000000100000000 0b0000000100000000 # consensus
|
||
syscon modem TIOCM_DCD 0 0 0x40 0 0 -1 # wut
|
||
syscon modem TIOCMODG 0 0x40047403 0 0x4004746a 0x4004746a -1 # wut
|
||
syscon modem TIOCMODS 0 0x80047404 0 0x8004746d 0x8004746d -1 # wut
|
||
syscon modem TIOCMSDTRWAIT 0 0x8004745b 0x8004745b 0 0 -1 # wut
|
||
|
||
# ioctl(SIOCGIFFLAGS) Network Interface Flags
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon iff IFF_UP 1 1 1 1 1 1 # unix consensus
|
||
syscon iff IFF_BROADCAST 2 2 2 2 2 2 # valid broadcast address set; consensus
|
||
syscon iff IFF_DEBUG 4 4 4 4 4 4 # faked nt; consensus
|
||
syscon iff IFF_LOOPBACK 8 8 8 8 8 4 # is loopback device; consensus
|
||
syscon iff IFF_MULTICAST 0x1000 0x8000 0x8000 0x8000 0x8000 0x1000 # supports multicast; faked nt; bsd consensus
|
||
syscon iff IFF_ALLMULTI 0x0200 0x0200 0x0200 0x0200 0x0200 0x0200 # receive all multicast packets; faked nt; unix consensus
|
||
syscon iff IFF_NOARP 0x80 0x80 0x80 0x80 0x80 0x80 # faked nt as linux; unix consensus
|
||
syscon iff IFF_POINTOPOINT 0x10 0x10 0x10 0x10 0x10 0x10 # point-to-point; faked nt as linux; unix consensus
|
||
syscon iff IFF_PROMISC 0x100 0x100 0x100 0x100 0x100 0 # in packet capture mode; unix consensus
|
||
syscon iff IFF_RUNNING 0x40 0x40 0x40 0x40 0x40 0 # unix consensus
|
||
syscon iff IFF_NOTRAILERS 0x20 0x20 0 0 0 0
|
||
syscon iff IFF_AUTOMEDIA 0x4000 0 0 0 0 0
|
||
syscon iff IFF_DYNAMIC 0x8000 0 0 0 0 0
|
||
syscon iff IFF_MASTER 0x0400 0 0 0 0 0
|
||
syscon iff IFF_PORTSEL 0x2000 0 0 0 0 0
|
||
syscon iff IFF_SLAVE 0x0800 0 0 0 0 0
|
||
|
||
syscon misc CLOCKS_PER_SEC 1000000 1000000 0x80 100 100 10000000
|
||
|
||
syscon sock SOCK_STREAM 1 1 1 1 1 1 # consensus
|
||
syscon sock SOCK_DGRAM 2 2 2 2 2 2 # consensus
|
||
syscon sock SOCK_RAW 3 3 3 3 3 3 # consensus
|
||
syscon sock SOCK_RDM 4 4 4 4 4 4 # consensus
|
||
syscon sock SOCK_SEQPACKET 5 5 5 5 5 5 # consensus
|
||
syscon sock SOCK_CLOEXEC 0x080000 0x080000 0x10000000 0x8000 0x10000000 0x00080000 # faked xnu & faked nt to be some as O_CLOEXEC
|
||
syscon sock SOCK_NONBLOCK 0x0800 0x0800 0x20000000 0x4000 0x20000000 0x00000800 # faked xnu & faked nt to be same as O_NONBLOC and socket() will ioctl(FIONBIO=1)
|
||
syscon sock SOCK_DCCP 6 0 0 0 0 0 # what is it?
|
||
syscon sock SOCK_PACKET 10 0 0 0 0 0 # what is it?
|
||
|
||
syscon shm SHM_R 0x0100 0x0100 0x0100 0x0100 0x0100 0 # unix consensus
|
||
syscon shm SHM_RDONLY 0x1000 0x1000 0x1000 0x1000 0x1000 0 # unix consensus
|
||
syscon shm SHM_RND 0x2000 0x2000 0x2000 0x2000 0x2000 0 # unix consensus
|
||
syscon shm SHM_W 0x80 0x80 0x80 0x80 0x80 0 # unix consensus
|
||
syscon shm SHM_LOCK 11 0 11 3 3 0
|
||
syscon shm SHM_UNLOCK 12 0 12 4 4 0
|
||
syscon shm SHM_INFO 14 0 14 0 0 0
|
||
syscon shm SHM_STAT 13 0 13 0 0 0
|
||
syscon shm SHM_DEST 0x0200 0 0 0 0 0
|
||
syscon shm SHM_EXEC 0x8000 0 0 0 0 0
|
||
syscon shm SHM_HUGETLB 0x0800 0 0 0 0 0
|
||
syscon shm SHM_LOCKED 0x0400 0 0 0 0 0
|
||
syscon shm SHM_NORESERVE 0x1000 0 0 0 0 0
|
||
syscon shm SHM_REMAP 0x4000 0 0 0 0 0
|
||
|
||
syscon lock LOCK_UNLOCK_CACHE 54 0 0 0 0 0 # wut
|
||
|
||
syscon misc IP6F_MORE_FRAG 0x0100 0x0100 0x0100 0x0100 0x0100 0x0100 # consensus
|
||
syscon misc IP6F_OFF_MASK 0xf8ff 0xf8ff 0xf8ff 0xf8ff 0xf8ff 0xf8ff # consensus
|
||
syscon misc IP6F_RESERVED_MASK 0x0600 0x0600 0x0600 0x0600 0x0600 0x0600 # consensus
|
||
|
||
syscon misc NO_SENSE 0 0 0 0 0 0 # consensus
|
||
syscon misc NO_ADDRESS 4 4 4 4 4 0x2afc # unix consensus
|
||
|
||
syscon misc L_SET 0 0 0 0 0 0 # consensus
|
||
syscon misc L_INCR 1 1 1 1 1 0 # unix consensus
|
||
syscon misc L_XTND 2 2 2 2 2 0 # unix consensus
|
||
|
||
syscon misc SHUT_RD 0 0 0 0 0 0 # consensus (SD_RECEIVE)
|
||
syscon misc SHUT_WR 1 1 1 1 1 1 # consensus (SD_SEND)
|
||
syscon misc SHUT_RDWR 2 2 2 2 2 2 # consensus (SD_BOTH)
|
||
|
||
syscon misc Q_QUOTAOFF 0x800003 0x0200 0x0200 0x0200 0x0200 0 # bsd consensus
|
||
syscon misc Q_QUOTAON 0x800002 0x0100 0x0100 0x0100 0x0100 0 # bsd consensus
|
||
syscon misc Q_SYNC 0x800001 0x0600 0x0600 0x0600 0x0600 0 # bsd consensus
|
||
syscon misc Q_GETQUOTA 0x800007 768 0x0700 768 768 0
|
||
syscon misc Q_SETQUOTA 0x800008 0x0400 0x0800 0x0400 0x0400 0
|
||
syscon misc Q_GETFMT 0x800004 0 0 0 0 0
|
||
syscon misc Q_GETINFO 0x800005 0 0 0 0 0
|
||
syscon misc Q_SETINFO 0x800006 0 0 0 0 0
|
||
|
||
syscon misc RPM_PCO_ADD 1 1 1 1 1 0 # unix consensus
|
||
syscon misc RPM_PCO_CHANGE 2 2 2 2 2 0 # unix consensus
|
||
syscon misc RPM_PCO_SETGLOBAL 3 3 3 3 3 0 # unix consensus
|
||
|
||
syscon misc FSETLOCKING_QUERY 0 0 0 0 0 0 # consensus
|
||
syscon misc FSETLOCKING_BYCALLER 2 0 0 0 0 0
|
||
syscon misc FSETLOCKING_INTERNAL 1 0 0 0 0 0
|
||
|
||
syscon misc MAX_DQ_TIME 0x093a80 0x093a80 0x093a80 0x093a80 0x093a80 0 # unix consensus
|
||
syscon misc MAX_IQ_TIME 0x093a80 0x093a80 0x093a80 0x093a80 0x093a80 0 # unix consensus
|
||
syscon misc MAX_HANDLE_SZ 0x80 0 0 0 0 0
|
||
|
||
syscon mlock MCL_CURRENT 1 1 1 1 1 0 # unix consensus
|
||
syscon mlock MCL_FUTURE 2 2 2 2 2 0 # unix consensus
|
||
syscon mlock MCL_ONFAULT 4 0 0 0 0 0
|
||
|
||
syscon misc MLD_LISTENER_QUERY 130 130 130 130 130 0 # unix consensus
|
||
syscon misc MLD_LISTENER_REPORT 131 131 131 131 131 0 # unix consensus
|
||
syscon misc MLD_LISTENER_REDUCTION 132 132 132 0 0 0
|
||
|
||
syscon misc TTYDEF_CFLAG 0x05a0 0x4b00 0x4b00 0x4b00 0x4b00 0 # bsd consensus
|
||
syscon misc TTYDEF_IFLAG 0x2d22 0x2b02 0x2b02 0x2b02 0x2b02 0 # bsd consensus
|
||
syscon misc TTYDEF_LFLAG 0x8a1b 0x05cb 0x05cb 0x05cb 0x05cb 0 # bsd consensus
|
||
syscon misc TTYDEF_SPEED 13 0x2580 0x2580 0x2580 0x2580 0 # bsd consensus
|
||
syscon misc TTYDEF_OFLAG 0x1805 3 3 7 7 0
|
||
|
||
syscon misc ACCT_BYTEORDER 0 0 0 0 0 0 # consensus
|
||
syscon misc ACCT_COMM 0x10 0 0 0 0 0
|
||
|
||
syscon misc COMMAND_COMPLETE 0 0 0 0 0 0 # consensus
|
||
syscon misc COMMAND_TERMINATED 17 0 0 0 0 0
|
||
|
||
syscon select FD_SETSIZE 0x0400 0x0400 0x0400 0x0400 0x0400 0x0400 # forced consensus (0x40 on NT)
|
||
|
||
syscon misc MATH_ERREXCEPT 2 2 2 2 2 0 # unix consensus
|
||
syscon misc MATH_ERRNO 1 1 1 1 1 0 # unix consensus
|
||
|
||
syscon misc MCAST_BLOCK_SOURCE 43 84 84 0 0 43
|
||
syscon misc MCAST_JOIN_GROUP 42 80 80 0 0 41
|
||
syscon misc MCAST_JOIN_SOURCE_GROUP 46 82 82 0 0 45
|
||
syscon misc MCAST_LEAVE_GROUP 45 81 81 0 0 42
|
||
syscon misc MCAST_LEAVE_SOURCE_GROUP 47 83 83 0 0 46
|
||
syscon misc MCAST_UNBLOCK_SOURCE 44 85 85 0 0 44
|
||
syscon misc MCAST_INCLUDE 1 1 1 0 0 0
|
||
syscon misc MCAST_EXCLUDE 0 2 2 0 0 0
|
||
syscon misc MCAST_MSFILTER 48 0 0 0 0 0
|
||
|
||
syscon misc AREGTYPE 0 0 0 0 0 0 # consensus
|
||
syscon misc CTIME 0 0 0 0 0 0 # consensus
|
||
syscon misc EFD_CLOEXEC 0x080000 0 0 0 0 0
|
||
syscon misc EFD_NONBLOCK 0x0800 0 0 0 0 0
|
||
syscon misc EFD_SEMAPHORE 1 0 0 0 0 0
|
||
|
||
syscon misc SYNC_FILE_RANGE_WAIT_AFTER 4 0 0 0 0 0
|
||
syscon misc SYNC_FILE_RANGE_WAIT_BEFORE 1 0 0 0 0 0
|
||
syscon misc SYNC_FILE_RANGE_WRITE 2 0 0 0 0 0
|
||
|
||
syscon misc TEST_UNIT_READY 0 0 0 0 0 0
|
||
syscon misc TFD_CLOEXEC 0x080000 0 0 0 0 0
|
||
syscon misc TFD_NONBLOCK 0x0800 0 0 0 0 0
|
||
syscon misc TFD_TIMER_ABSTIME 1 0 0 0 0 0
|
||
|
||
syscon misc USRQUOTA 0 0 0 0 0 0
|
||
|
||
syscon misc HOST_NAME_MAX 0x40 0 0 255 255 0
|
||
|
||
syscon misc UDP_ENCAP_ESPINUDP_NON_IKE 1 0 1 0 0 0
|
||
syscon misc UDP_NO_CHECK6_RX 102 0 0 0 0 0
|
||
syscon misc UDP_NO_CHECK6_TX 101 0 0 0 0 0
|
||
|
||
syscon misc ACK 4 4 4 4 4 0 # unix consensus
|
||
syscon misc CDISCARD 15 15 15 15 15 0 # unix consensus
|
||
syscon misc CEOT 4 4 4 4 4 0 # unix consensus
|
||
syscon misc CERASE 127 127 127 127 127 0 # unix consensus
|
||
syscon misc CHRTYPE 51 51 51 51 51 0 # unix consensus
|
||
syscon misc CKILL 21 21 21 21 21 0 # unix consensus
|
||
syscon misc CLNEXT 22 22 22 22 22 0 # unix consensus
|
||
syscon misc CMIN 1 1 1 1 1 0 # unix consensus
|
||
syscon misc COMPLETE 2 2 2 2 2 0 # unix consensus
|
||
syscon misc CONTINUE 3 3 3 3 3 0 # unix consensus
|
||
syscon misc CONTTYPE 55 55 55 55 55 0 # unix consensus
|
||
syscon misc COPY_ABORTED 10 0 0 0 0 0
|
||
syscon misc COPY_VERIFY 58 0 0 0 0 0
|
||
|
||
syscon misc CQUIT 28 28 28 28 28 0 # unix consensus
|
||
syscon misc CREPRINT 18 18 18 18 18 0 # unix consensus
|
||
syscon misc CRPRNT 18 18 18 18 18 0 # unix consensus
|
||
syscon misc DATA 3 3 3 3 3 0 # unix consensus
|
||
syscon misc DEV_BSIZE 0x0200 0x0200 0x0200 0x0200 0x0200 0 # unix consensus
|
||
syscon misc DIRTYPE 53 53 53 53 53 0 # unix consensus
|
||
syscon misc ELF_NGREG 27 0 0 0 0 0
|
||
syscon misc ELF_PRARGSZ 80 0 0 0 0 0
|
||
|
||
syscon misc EM_ALTERA_NIOS2 113 0 0 0 0 0
|
||
syscon misc EM_LATTICEMICO32 138 0 0 0 0 0
|
||
|
||
syscon misc EXPR_NEST_MAX 0x20 0x20 0x20 0x20 0x20 0 # unix consensus
|
||
|
||
# linux fallocate() flags
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon misc FALLOC_FL_KEEP_SIZE 0x01 -1 -1 -1 -1 -1 # bsd consensus
|
||
syscon misc FALLOC_FL_PUNCH_HOLE 0x02 -1 -1 -1 -1 -1 # bsd consensus
|
||
syscon misc FALLOC_FL_NO_HIDE_STALE 0x04 -1 -1 -1 -1 -1 # bsd consensus
|
||
syscon misc FALLOC_FL_COLLAPSE_RANGE 0x08 -1 -1 -1 -1 -1 # bsd consensus
|
||
syscon misc FALLOC_FL_ZERO_RANGE 0x10 -1 -1 -1 -1 0x000980C8 # bsd consensus & kNtFsctlSetZeroData
|
||
syscon misc FALLOC_FL_INSERT_RANGE 0x20 -1 -1 -1 -1 -1 # bsd consensus
|
||
syscon misc FALLOC_FL_UNSHARE_RANGE 0x40 -1 -1 -1 -1 -1 # bsd consensus
|
||
|
||
# System Call Numbers.
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology
|
||
syscon nr __NR_exit 0x003c 0x2000169 0x01af 0x012e 0x136 0xfff # __bsdthread_terminate() on XNU, thr_exit() on FreeBSD, __threxit() on OpenBSD, __lwp_exit() on NetBSD
|
||
syscon nr __NR_exit_group 0x00e7 0x2000001 0x0001 0x0001 0x001 0xfff
|
||
syscon nr __NR_read 0x0000 0x2000003 0x0003 0x0003 0x003 0xfff
|
||
syscon nr __NR_write 0x0001 0x2000004 0x0004 0x0004 0x004 0xfff
|
||
syscon nr __NR_open 0x0002 0x2000005 0x0005 0x0005 0x005 0xfff
|
||
syscon nr __NR_close 0x0003 0x2000006 0x0006 0x0006 0x006 0xfff
|
||
syscon nr __NR_stat 0x0004 0x2000152 0xfff 0x0026 0x1b7 0xfff
|
||
syscon nr __NR_fstat 0x0005 0x2000153 0x0227 0x0035 0x1b8 0xfff
|
||
syscon nr __NR_lstat 0x0006 0x2000154 0x0028 0x0028 0x1b9 0xfff
|
||
syscon nr __NR_poll 0x0007 0x20000e6 0x00d1 0x00fc 0x0d1 0xfff
|
||
syscon nr __NR_ppoll 0x010f 0xfff 0x0221 0x006d 0xfff 0xfff
|
||
syscon nr __NR_lseek 0x0008 0x20000c7 0x01de 0x00c7 0x0c7 0xfff
|
||
syscon nr __NR_mmap 0x0009 0x20000c5 0x01dd 0x00c5 0x0c5 0xfff
|
||
syscon nr __NR_msync 0x001a 0x2000041 0x0041 0x0100 0x115 0xfff
|
||
syscon nr __NR_mprotect 0x000a 0x200004a 0x004a 0x004a 0x04a 0xfff
|
||
syscon nr __NR_munmap 0x000b 0x2000049 0x0049 0x0049 0x049 0xfff
|
||
syscon nr __NR_sigaction 0x000d 0x200002e 0x01a0 0x002e 0x154 0xfff
|
||
syscon nr __NR_sigprocmask 0x000e 0x2000149 0x0154 0x0030 0x125 0xfff
|
||
syscon nr __NR_ioctl 0x0010 0x2000036 0x0036 0x0036 0x036 0xfff
|
||
syscon nr __NR_pread 0x0011 0x2000099 0x01db 0x00ad 0x0ad 0xfff
|
||
syscon nr __NR_pwrite 0x0012 0x200009a 0x01dc 0x00ae 0x0ae 0xfff
|
||
syscon nr __NR_readv 0x0013 0x2000078 0x0078 0x0078 0x078 0xfff
|
||
syscon nr __NR_writev 0x0014 0x2000079 0x0079 0x0079 0x079 0xfff
|
||
syscon nr __NR_access 0x0015 0x2000021 0x0021 0x0021 0x021 0xfff
|
||
syscon nr __NR_pipe 0x0016 0x200002a 0x021e 0x0107 0x02a 0xfff
|
||
syscon nr __NR_select 0x0017 0x200005d 0x005d 0x0047 0x1a1 0xfff
|
||
syscon nr __NR_pselect 0xfff 0x200018a 0x020a 0x006e 0x1b4 0xfff
|
||
syscon nr __NR_pselect6 0x010e 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_sched_yield 0x0018 0x200005d 0x014b 0x012a 0x15e 0xfff # select() on XNU (previously swtch() but removed in 12.4)
|
||
syscon nr __NR_mremap 0x0019 0xfff 0xfff 0xfff 0x19b 0xfff
|
||
syscon nr __NR_mincore 0x001b 0x200004e 0x004e 0x004e 0x04e 0xfff
|
||
syscon nr __NR_madvise 0x001c 0x200004b 0x004b 0x004b 0x04b 0xfff
|
||
syscon nr __NR_shmget 0x001d 0x2000109 0x00e7 0x0121 0x0e7 0xfff
|
||
syscon nr __NR_shmat 0x001e 0x2000106 0x00e4 0x00e4 0x0e4 0xfff
|
||
syscon nr __NR_shmctl 0x001f 0x2000107 0x0200 0x0128 0x1bb 0xfff
|
||
syscon nr __NR_dup 0x0020 0x2000029 0x0029 0x0029 0x029 0xfff
|
||
syscon nr __NR_dup2 0x0021 0x200005a 0x005a 0x005a 0x05a 0xfff
|
||
syscon nr __NR_pause 0x0022 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_nanosleep 0x0023 0xfff 0x00f0 0x005b 0x1ae 0xfff
|
||
syscon nr __NR_getitimer 0x0024 0x2000056 0x0056 0x0046 0x1aa 0xfff
|
||
syscon nr __NR_setitimer 0x0026 0x2000053 0x0053 0x0045 0x1a9 0xfff
|
||
syscon nr __NR_alarm 0x0025 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_getpid 0x0027 0x2000014 0x0014 0x0014 0x014 0xfff
|
||
syscon nr __NR_sendfile 0x0028 0x2000151 0x0189 0xfff 0xfff 0xfff
|
||
syscon nr __NR_socket 0x0029 0x2000061 0x0061 0x0061 0x18a 0xfff
|
||
syscon nr __NR_connect 0x002a 0x2000062 0x0062 0x0062 0x062 0xfff
|
||
syscon nr __NR_accept 0x002b 0x200001e 0x0063 0x001e 0x01e 0xfff
|
||
syscon nr __NR_sendto 0x002c 0x2000085 0x0085 0x0085 0x085 0xfff
|
||
syscon nr __NR_recvfrom 0x002d 0x200001d 0x001d 0x001d 0x01d 0xfff
|
||
syscon nr __NR_sendmsg 0x002e 0x200001c 0x001c 0x001c 0x01c 0xfff
|
||
syscon nr __NR_recvmsg 0x002f 0x200001b 0x001b 0x001b 0x01b 0xfff
|
||
syscon nr __NR_shutdown 0x0030 0x2000086 0x0086 0x0086 0x086 0xfff
|
||
syscon nr __NR_bind 0x0031 0x2000068 0x0068 0x0068 0x068 0xfff
|
||
syscon nr __NR_listen 0x0032 0x200006a 0x006a 0x006a 0x06a 0xfff
|
||
syscon nr __NR_getsockname 0x0033 0x2000020 0x0020 0x0020 0x020 0xfff
|
||
syscon nr __NR_getpeername 0x0034 0x200001f 0x008d 0x001f 0x01f 0xfff
|
||
syscon nr __NR_socketpair 0x0035 0x2000087 0x0087 0x0087 0x087 0xfff
|
||
syscon nr __NR_setsockopt 0x0036 0x2000069 0x0069 0x0069 0x069 0xfff
|
||
syscon nr __NR_getsockopt 0x0037 0x2000076 0x0076 0x0076 0x076 0xfff
|
||
syscon nr __NR_fork 0x0039 0x2000002 0x0002 0x0002 0x002 0xfff
|
||
syscon nr __NR_vfork 0x003a 0x2000042 0x0042 0x0042 0x042 0xfff
|
||
syscon nr __NR_posix_spawn 0xfff 0x20000f4 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_execve 0x003b 0x200003b 0x003b 0x003b 0x03b 0xfff # DING DING DING DING DING
|
||
syscon nr __NR_wait4 0x003d 0x2000007 0x0007 0x000b 0x1c1 0xfff
|
||
syscon nr __NR_kill 0x003e 0x2000025 0x0025 0x007a 0x025 0xfff
|
||
syscon nr __NR_killpg 0xfff 0xfff 0x0092 0xfff 0xfff 0xfff
|
||
syscon nr __NR_clone 0x0038 0xfff 0xfff 0xfff 0x11f 0xfff
|
||
syscon nr __NR_tkill 0x00c8 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_futex 0x00ca 0xfff 0xfff 0x0053 0x0a6 0xfff
|
||
syscon nr __NR_set_robust_list 0x0111 0xfff 0xfff 0xfff 0x0a7 0xfff
|
||
syscon nr __NR_get_robust_list 0x0112 0xfff 0xfff 0xfff 0x0a8 0xfff
|
||
syscon nr __NR_uname 0x003f 0xfff 0x00a4 0xfff 0xfff 0xfff
|
||
syscon nr __NR_semget 0x0040 0x20000ff 0x00dd 0x00dd 0x0dd 0xfff
|
||
syscon nr __NR_semop 0x0041 0x2000100 0x00de 0x0122 0x0de 0xfff
|
||
syscon nr __NR_semctl 0x0042 0x20000fe 0x01fe 0x0127 0xfff 0xfff
|
||
syscon nr __NR_shmdt 0x0043 0x2000108 0x00e6 0x00e6 0x0e6 0xfff
|
||
syscon nr __NR_msgget 0x0044 0x2000103 0x00e1 0x00e1 0x0e1 0xfff
|
||
syscon nr __NR_msgsnd 0x0045 0x2000104 0x00e2 0x00e2 0x0e2 0xfff
|
||
syscon nr __NR_msgrcv 0x0046 0x2000105 0x00e3 0x00e3 0x0e3 0xfff
|
||
syscon nr __NR_msgctl 0x0047 0x2000102 0x01ff 0x0129 0x1bc 0xfff
|
||
syscon nr __NR_fcntl 0x0048 0x200005c 0x005c 0x005c 0x05c 0xfff
|
||
syscon nr __NR_flock 0x0049 0x2000083 0x0083 0x0083 0x083 0xfff
|
||
syscon nr __NR_fsync 0x004a 0x200005f 0x005f 0x005f 0x05f 0xfff
|
||
syscon nr __NR_fdatasync 0x004b 0x20000bb 0x0226 0x005f 0x0f1 0xfff
|
||
syscon nr __NR_truncate 0x004c 0x20000c8 0x01df 0x00c8 0x0c8 0xfff
|
||
syscon nr __NR_ftruncate 0x004d 0x20000c9 0x01e0 0x00c9 0x0c9 0xfff
|
||
syscon nr __NR_getcwd 0x004f 0xfff 0x0146 0x0130 0x128 0xfff
|
||
syscon nr __NR_chdir 0x0050 0x200000c 0x000c 0x000c 0x00c 0xfff
|
||
syscon nr __NR_fchdir 0x0051 0x200000d 0x000d 0x000d 0x00d 0xfff
|
||
syscon nr __NR_rename 0x0052 0x2000080 0x0080 0x0080 0x080 0xfff
|
||
syscon nr __NR_mkdir 0x0053 0x2000088 0x0088 0x0088 0x088 0xfff
|
||
syscon nr __NR_rmdir 0x0054 0x2000089 0x0089 0x0089 0x089 0xfff
|
||
syscon nr __NR_creat 0x0055 0xfff 0x0008 0xfff 0x008 0xfff
|
||
syscon nr __NR_link 0x0056 0x2000009 0x0009 0x0009 0x009 0xfff
|
||
syscon nr __NR_unlink 0x0057 0x200000a 0x000a 0x000a 0x00a 0xfff
|
||
syscon nr __NR_symlink 0x0058 0x2000039 0x0039 0x0039 0x039 0xfff
|
||
syscon nr __NR_readlink 0x0059 0x200003a 0x003a 0x003a 0x03a 0xfff
|
||
syscon nr __NR_chmod 0x005a 0x200000f 0x000f 0x000f 0x00f 0xfff
|
||
syscon nr __NR_fchmod 0x005b 0x200007c 0x007c 0x007c 0x07c 0xfff
|
||
syscon nr __NR_chown 0x005c 0x2000010 0x0010 0x0010 0x010 0xfff
|
||
syscon nr __NR_fchown 0x005d 0x200007b 0x007b 0x007b 0x07b 0xfff
|
||
syscon nr __NR_lchown 0x005e 0x200016c 0x00fe 0x00fe 0x113 0xfff
|
||
syscon nr __NR_umask 0x005f 0x200003c 0x003c 0x003c 0x03c 0xfff
|
||
syscon nr __NR_gettimeofday 0x0060 0x2000074 0x0074 0x0043 0x1a2 0xfff
|
||
syscon nr __NR_getrlimit 0x0061 0x20000c2 0x00c2 0x00c2 0x0c2 0xfff
|
||
syscon nr __NR_getrusage 0x0062 0x2000075 0x0075 0x0013 0x1bd 0xfff
|
||
syscon nr __NR_sysinfo 0x0063 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_times 0x0064 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_ptrace 0x0065 0x200001a 0x001a 0x001a 0x01a 0xfff
|
||
syscon nr __NR_syslog 0x0067 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_getuid 0x0066 0x2000018 0x0018 0x0018 0x018 0xfff
|
||
syscon nr __NR_getgid 0x0068 0x200002f 0x002f 0x002f 0x02f 0xfff
|
||
syscon nr __NR_getppid 0x006e 0x2000027 0x0027 0x0027 0xfff 0xfff
|
||
syscon nr __NR_getpgrp 0x006f 0x2000051 0x0051 0x0051 0x051 0xfff
|
||
syscon nr __NR_setsid 0x0070 0x2000093 0x0093 0x0093 0x093 0xfff
|
||
syscon nr __NR_getsid 0x007c 0x2000136 0x0136 0x00ff 0x11e 0xfff
|
||
syscon nr __NR_getpgid 0x0079 0x2000097 0x00cf 0x00cf 0x0cf 0xfff
|
||
syscon nr __NR_setpgid 0x006d 0x2000052 0x0052 0x0052 0x052 0xfff
|
||
syscon nr __NR_geteuid 0x006b 0x2000019 0x0019 0x0019 0xfff 0xfff
|
||
syscon nr __NR_getegid 0x006c 0x200002b 0x002b 0x002b 0xfff 0xfff
|
||
syscon nr __NR_getgroups 0x0073 0x200004f 0x004f 0x004f 0x04f 0xfff
|
||
syscon nr __NR_setgroups 0x0074 0x2000050 0x0050 0x0050 0x050 0xfff
|
||
syscon nr __NR_setreuid 0x0071 0x200007e 0x007e 0x007e 0x07e 0xfff
|
||
syscon nr __NR_setregid 0x0072 0x200007f 0x007f 0x007f 0x07f 0xfff
|
||
syscon nr __NR_setuid 0x0069 0x2000017 0x0017 0x0017 0x017 0xfff
|
||
syscon nr __NR_setgid 0x006a 0x20000b5 0x00b5 0x00b5 0x0b5 0xfff
|
||
syscon nr __NR_setresuid 0x0075 0xfff 0x0137 0x011a 0xfff 0xfff
|
||
syscon nr __NR_setresgid 0x0077 0xfff 0x0138 0x011c 0xfff 0xfff
|
||
syscon nr __NR_getresuid 0x0076 0xfff 0x0168 0x0119 0xfff 0xfff
|
||
syscon nr __NR_getresgid 0x0078 0xfff 0x0169 0x011b 0xfff 0xfff
|
||
syscon nr __NR_sigpending 0x007f 0x2000034 0x0034 0x0034 0x124 0xfff
|
||
syscon nr __NR_sigsuspend 0x0082 0x200006f 0x0155 0x006f 0x126 0xfff
|
||
syscon nr __NR_sigaltstack 0x0083 0x2000035 0x0035 0x0120 0x119 0xfff
|
||
syscon nr __NR_mknod 0x0085 0x200000e 0x000e 0x000e 0x1c2 0xfff
|
||
syscon nr __NR_mknodat 0x0103 0xfff 0x22ff 0x0140 0x1cc 0xfff
|
||
syscon nr __NR_mkfifo 0xfff 0x2000084 0x0084 0x0084 0x084 0xfff
|
||
syscon nr __NR_mkfifoat 0xfff 0xfff 0x01f1 0x013f 0x1cb 0xfff
|
||
syscon nr __NR_statfs 0x0089 0x2000159 0x022b 0x003f 0xfff 0xfff
|
||
syscon nr __NR_fstatfs 0x008a 0x200015a 0x022c 0x0040 0xfff 0xfff
|
||
syscon nr __NR_getpriority 0x008c 0x2000064 0x0064 0x0064 0x064 0xfff
|
||
syscon nr __NR_setpriority 0x008d 0x2000060 0x0060 0x0060 0x060 0xfff
|
||
syscon nr __NR_mlock 0x0095 0x20000cb 0x00cb 0x00cb 0x0cb 0xfff
|
||
syscon nr __NR_munlock 0x0096 0x20000cc 0x00cc 0x00cc 0x0cc 0xfff
|
||
syscon nr __NR_mlockall 0x0097 0x2000144 0x0144 0x010f 0x0f2 0xfff
|
||
syscon nr __NR_munlockall 0x0098 0x2000145 0x0145 0x0110 0x0f3 0xfff
|
||
syscon nr __NR_setrlimit 0x00a0 0x20000c3 0x00c3 0x00c3 0x0c3 0xfff
|
||
syscon nr __NR_chroot 0x00a1 0x200003d 0x003d 0x003d 0x03d 0xfff
|
||
syscon nr __NR_sync 0x00a2 0x2000024 0x0024 0x0024 0x024 0xfff
|
||
syscon nr __NR_acct 0x00a3 0x2000033 0x0033 0x0033 0x033 0xfff
|
||
syscon nr __NR_settimeofday 0x00a4 0x200007a 0x007a 0x0044 0x1a3 0xfff
|
||
syscon nr __NR_mount 0x00a5 0x20000a7 0x0015 0x0015 0x19a 0xfff
|
||
syscon nr __NR_reboot 0x00a9 0x2000037 0x0037 0x0037 0x0d0 0xfff
|
||
syscon nr __NR_quotactl 0x00b3 0x20000a5 0x0094 0x0094 0xfff 0xfff
|
||
syscon nr __NR_setfsuid 0x007a 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_setfsgid 0x007b 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_capget 0x007d 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_capset 0x007e 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_sigtimedwait 0x0080 0xfff 0x0159 0xfff 0xfff 0xfff
|
||
syscon nr __NR_rt_sigqueueinfo 0x0081 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_personality 0x0087 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_ustat 0x0088 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_sysfs 0x008b 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_sched_setparam 0x008e 0xfff 0x0147 0xfff 0xfff 0xfff
|
||
syscon nr __NR_sched_getparam 0x008f 0xfff 0x0148 0xfff 0xfff 0xfff
|
||
syscon nr __NR_sched_setscheduler 0x0090 0xfff 0x0149 0xfff 0xfff 0xfff
|
||
syscon nr __NR_sched_getscheduler 0x0091 0xfff 0x014a 0xfff 0xfff 0xfff
|
||
syscon nr __NR_sched_get_priority_max 0x0092 0xfff 0x014c 0xfff 0xfff 0xfff
|
||
syscon nr __NR_sched_get_priority_min 0x0093 0xfff 0x014d 0xfff 0xfff 0xfff
|
||
syscon nr __NR_sched_rr_get_interval 0x0094 0xfff 0x014e 0xfff 0xfff 0xfff
|
||
syscon nr __NR_vhangup 0x0099 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_modify_ldt 0x009a 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_pivot_root 0x009b 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR__sysctl 0x009c 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_prctl 0x009d 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_arch_prctl 0x009e 0x3000003 0x00a5 0x149 0x13d 0xfff # sysarch on freebsd, _lwp_setprivate on netbsd, __set_tcb on openbsd, thread_fast_set_cthread_self on xnu
|
||
syscon nr __NR_adjtimex 0x009f 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_umount2 0x00a6 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_swapon 0x00a7 0x2000055 0x0055 0xfff 0xfff 0xfff
|
||
syscon nr __NR_swapoff 0x00a8 0xfff 0x01a8 0xfff 0xfff 0xfff
|
||
syscon nr __NR_sethostname 0x00aa 0xfff 0x0058 0xfff 0xfff 0xfff
|
||
syscon nr __NR_setdomainname 0x00ab 0xfff 0x00a3 0xfff 0xfff 0xfff
|
||
syscon nr __NR_iopl 0x00ac 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_ioperm 0x00ad 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_init_module 0x00af 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_delete_module 0x00b0 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_gettid 0x00ba 0x0100001b 432 299 311 0xfff # TODO(jart): thread_self_trap vs. gettid?
|
||
syscon nr __NR_readahead 0x00bb 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_setxattr 0x00bc 0x20000ec 0xfff 0xfff 0x177 0xfff
|
||
syscon nr __NR_fsetxattr 0x00be 0x20000ed 0xfff 0xfff 0x179 0xfff
|
||
syscon nr __NR_getxattr 0x00bf 0x20000ea 0xfff 0xfff 0x17a 0xfff
|
||
syscon nr __NR_fgetxattr 0x00c1 0x20000eb 0xfff 0xfff 0x17c 0xfff
|
||
syscon nr __NR_listxattr 0x00c2 0x20000f0 0xfff 0xfff 0x17d 0xfff
|
||
syscon nr __NR_flistxattr 0x00c4 0x20000f1 0xfff 0xfff 0x17f 0xfff
|
||
syscon nr __NR_removexattr 0x00c5 0x20000ee 0xfff 0xfff 0x180 0xfff
|
||
syscon nr __NR_fremovexattr 0x00c7 0x20000ef 0xfff 0xfff 0x182 0xfff
|
||
syscon nr __NR_lsetxattr 0x00bd 0xfff 0xfff 0xfff 0x178 0xfff
|
||
syscon nr __NR_lgetxattr 0x00c0 0xfff 0xfff 0xfff 0x17b 0xfff
|
||
syscon nr __NR_llistxattr 0x00c3 0xfff 0xfff 0xfff 0x17e 0xfff
|
||
syscon nr __NR_lremovexattr 0x00c6 0xfff 0xfff 0xfff 0x181 0xfff
|
||
syscon nr __NR_sched_setaffinity 0x00cb 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_sched_getaffinity 0x00cc 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_cpuset_getaffinity 0xfff 0xfff 0x01e7 0xfff 0xfff 0xfff
|
||
syscon nr __NR_cpuset_setaffinity 0xfff 0xfff 0x01e8 0xfff 0xfff 0xfff
|
||
syscon nr __NR_io_setup 0x00ce 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_io_destroy 0x00cf 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_io_getevents 0x00d0 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_io_submit 0x00d1 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_io_cancel 0x00d2 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_lookup_dcookie 0x00d4 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_epoll_create 0x00d5 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_epoll_wait 0x00e8 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_epoll_ctl 0x00e9 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_getdents 0x00d9 0xfff 0x0110 0x0063 0x186 0xfff
|
||
syscon nr __NR_set_tid_address 0x00da 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_restart_syscall 0x00db 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_semtimedop 0x00dc 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_fadvise 0x00dd 0xfff 0x0213 0xfff 0xfff 0xfff
|
||
syscon nr __NR_timer_create 0x00de 0xfff 0xfff 0xfff 0x0eb 0xfff
|
||
syscon nr __NR_timer_settime 0x00df 0xfff 0xfff 0xfff 0x1be 0xfff
|
||
syscon nr __NR_timer_gettime 0x00e0 0xfff 0xfff 0xfff 0x1bf 0xfff
|
||
syscon nr __NR_timer_getoverrun 0x00e1 0xfff 0xfff 0xfff 0x0ef 0xfff
|
||
syscon nr __NR_timer_delete 0x00e2 0xfff 0xfff 0xfff 0x0ec 0xfff
|
||
syscon nr __NR_clock_settime 0x00e3 0xfff 0x00e9 0x0058 0x1ac 0xfff
|
||
syscon nr __NR_clock_gettime 0x00e4 0xfff 0x00e8 0x0057 0x1ab 0xfff
|
||
syscon nr __NR_clock_getres 0x00e5 0xfff 0x00ea 0x0059 0x1ad 0xfff
|
||
syscon nr __NR_clock_nanosleep 0x00e6 0xfff 0x00f4 0xfff 0x1dd 0xfff
|
||
syscon nr __NR_tgkill 0x00ea 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_mbind 0x00ed 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_set_mempolicy 0x00ee 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_get_mempolicy 0x00ef 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_mq_open 0x00f0 0xfff 0xfff 0xfff 0x101 0xfff
|
||
syscon nr __NR_mq_unlink 0x00f1 0xfff 0xfff 0xfff 0x103 0xfff
|
||
syscon nr __NR_mq_timedsend 0x00f2 0xfff 0xfff 0xfff 0x1b0 0xfff
|
||
syscon nr __NR_mq_timedreceive 0x00f3 0xfff 0xfff 0xfff 0x1b1 0xfff
|
||
syscon nr __NR_mq_notify 0x00f4 0xfff 0xfff 0xfff 0x106 0xfff
|
||
syscon nr __NR_mq_getsetattr 0x00f5 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_kexec_load 0x00f6 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_waitid 0x00f7 0x20000ad 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_add_key 0x00f8 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_request_key 0x00f9 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_keyctl 0x00fa 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_ioprio_set 0x00fb 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_ioprio_get 0x00fc 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_inotify_init 0x00fd 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_inotify_add_watch 0x00fe 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_inotify_rm_watch 0x00ff 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_openat 0x0101 0x20001cf 0x01f3 0x0141 0x1d4 0xfff
|
||
syscon nr __NR_mkdirat 0x0102 0x20001db 0x01f0 0x013e 0x1cd 0xfff
|
||
syscon nr __NR_fchownat 0x0104 0x20001d4 0x01eb 0x013b 0x1d0 0xfff
|
||
syscon nr __NR_utime 0x0084 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_utimes 0x00eb 0x200008a 0x008a 0x004c 0x1a4 0xfff
|
||
syscon nr __NR_futimesat 0x0105 0xfff 0x01ee 0xfff 0xfff 0xfff
|
||
syscon nr __NR_futimes 0xfff 0x200008b 0x00ce 0x004d 0x1a7 0xfff
|
||
syscon nr __NR_futimens 0xfff 0xfff 0x0222 0x0055 0x1d8 0xfff
|
||
syscon nr __NR_fstatat 0x0106 0x20001d6 0x0228 0x002a 0x1d2 0xfff
|
||
syscon nr __NR_unlinkat 0x0107 0x20001d8 0x01f7 0x0145 0x1d7 0xfff
|
||
syscon nr __NR_renameat 0x0108 0x20001d1 0x01f5 0x0143 0x1ca 0xfff
|
||
syscon nr __NR_linkat 0x0109 0x20001d7 0x01ef 0x013d 0x1c9 0xfff
|
||
syscon nr __NR_symlinkat 0x010a 0x20001da 0x01f6 0x0144 0x1d6 0xfff
|
||
syscon nr __NR_readlinkat 0x010b 0x20001d9 0x01f4 0x0142 0x1d5 0xfff
|
||
syscon nr __NR_fchmodat 0x010c 0x20001d3 0x01ea 0x013a 0x1cf 0xfff
|
||
syscon nr __NR_faccessat 0x010d 0x20001d2 0x01e9 0x0139 0x1ce 0xfff
|
||
syscon nr __NR_unshare 0x0110 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_splice 0x0113 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_tee 0x0114 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_sync_file_range 0x0115 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_vmsplice 0x0116 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_migrate_pages 0x0100 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_move_pages 0x0117 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_preadv 0x0127 0xfff 0x0121 0x010b 0x121 0xfff
|
||
syscon nr __NR_pwritev 0x0128 0xfff 0x0122 0x010c 0x122 0xfff
|
||
syscon nr __NR_utimensat 0x0118 0xfff 0x0223 0x0054 0x1d3 0xfff
|
||
syscon nr __NR_fallocate 0x011d 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_posix_fallocate 0xfff 0xfff 0x0212 0xfff 0x1df 0xfff
|
||
syscon nr __NR_accept4 0x0120 0xfff 0x021d 0x005d 0xfff 0xfff
|
||
syscon nr __NR_dup3 0x0124 0xfff 0xfff 0x0066 0x1c6 0xfff
|
||
syscon nr __NR_pipe2 0x0125 0xfff 0x021e 0x0065 0x1c5 0xfff
|
||
syscon nr __NR_epoll_pwait 0x0119 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_epoll_create1 0x0123 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_perf_event_open 0x012a 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_inotify_init1 0x0126 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_rt_tgsigqueueinfo 0x0129 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_signalfd 0x011a 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_signalfd4 0x0121 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_eventfd 0x011c 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_eventfd2 0x0122 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_timerfd_create 0x011b 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_timerfd_settime 0x011e 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_timerfd_gettime 0x011f 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_recvmmsg 0x012b 0xfff 0xfff 0xfff 0x1db 0xfff
|
||
syscon nr __NR_fanotify_init 0x012c 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_fanotify_mark 0x012d 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_prlimit 0x012e 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_name_to_handle_at 0x012f 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_open_by_handle_at 0x0130 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_clock_adjtime 0x0131 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_syncfs 0x0132 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_sendmmsg 0x0133 0xfff 0xfff 0xfff 0x1dc 0xfff
|
||
syscon nr __NR_setns 0x0134 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_getcpu 0x0135 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_process_vm_readv 0x0136 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_process_vm_writev 0x0137 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_kcmp 0x0138 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_finit_module 0x0139 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_sched_setattr 0x013a 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_sched_getattr 0x013b 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_renameat2 0x013c 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_seccomp 0x013d 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_getrandom 0x013e 0x20001f4 0x0233 0x0007 0x05b 0xfff
|
||
syscon nr __NR_memfd_create 0x013f 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_kexec_file_load 0x0140 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_bpf 0x0141 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_execveat 0x0142 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_userfaultfd 0x0143 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_membarrier 0x0144 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_mlock2 0x0145 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_copy_file_range 0x0146 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_preadv2 0x0147 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_pwritev2 0x0148 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_pkey_mprotect 0x0149 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_pkey_alloc 0x014a 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_pkey_free 0x014b 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_statx 0x014c 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_io_pgetevents 0x014d 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_rseq 0x014e 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_pidfd_send_signal 0x01a8 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_io_uring_setup 0x01a9 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_io_uring_enter 0x01aa 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_io_uring_register 0x01ab 0xfff 0xfff 0xfff 0xfff 0xfff
|
||
syscon nr __NR_pledge 0xfff 0xfff 0xfff 0x006c 0xfff 0xfff
|
||
syscon nr __NR_msyscall 0xfff 0xfff 0xfff 0x0025 0xfff 0xfff
|
||
syscon nr __NR_ktrace 0xfff 0xfff 0x002d 0x002d 0x02d 0xfff
|
||
|
||
# unilateral undocumented errnos
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon junkerr ECHRNG 44 0 0 0 0 0
|
||
syscon junkerr EL2NSYNC 45 0 0 0 0 0
|
||
syscon junkerr EL3HLT 46 0 0 0 0 0
|
||
syscon junkerr EL3RST 47 0 0 0 0 0
|
||
syscon junkerr ELNRNG 48 0 0 0 0 0
|
||
syscon junkerr EUNATCH 49 0 0 0 0 0
|
||
syscon junkerr ENOCSI 50 0 0 0 0 0
|
||
syscon junkerr EL2HLT 51 0 0 0 0 0
|
||
syscon junkerr EBADE 52 0 0 0 0 0
|
||
syscon junkerr EBADR 53 0 0 0 0 0
|
||
syscon junkerr EXFULL 54 0 0 0 0 0
|
||
syscon junkerr ENOANO 55 0 0 0 0 0
|
||
syscon junkerr EBADRQC 56 0 0 0 0 0
|
||
syscon junkerr EBADSLT 57 0 0 0 0 0
|
||
syscon junkerr ENOPKG 65 0 0 0 0 0
|
||
syscon junkerr EADV 68 0 0 0 0 0
|
||
syscon junkerr ESRMNT 69 0 0 0 0 0
|
||
syscon junkerr ECOMM 70 0 0 0 0 0
|
||
syscon junkerr EDOTDOT 73 0 0 0 0 0
|
||
syscon junkerr ENOTUNIQ 76 0 0 0 0 0
|
||
syscon junkerr EREMCHG 78 0 0 0 0 0
|
||
syscon junkerr ELIBACC 79 0 0 0 0 0
|
||
syscon junkerr ELIBBAD 80 0 0 0 0 0
|
||
syscon junkerr ELIBSCN 81 0 0 0 0 0
|
||
syscon junkerr ELIBMAX 82 0 0 0 0 0
|
||
syscon junkerr ELIBEXEC 83 0 0 0 0 0
|
||
syscon junkerr ESTRPIPE 86 0 0 0 0 0
|
||
syscon junkerr EUCLEAN 117 0 0 0 0 0
|
||
syscon junkerr ENOTNAM 118 0 0 0 0 0
|
||
syscon junkerr ENAVAIL 119 0 0 0 0 0
|
||
syscon junkerr EISNAM 120 0 0 0 0 0
|
||
syscon junkerr EREMOTEIO 121 0 0 0 0 0
|
||
syscon junkerr ENOKEY 126 0 0 0 0 0
|
||
syscon junkerr EKEYEXPIRED 127 0 0 0 0 0
|
||
syscon junkerr EKEYREVOKED 128 0 0 0 0 0
|
||
syscon junkerr EKEYREJECTED 129 0 0 0 0 0
|
||
syscon junkerr ERFKILL 132 0 0 0 0 0
|
||
syscon junkerr EHWPOISON 133 0 0 0 0 0
|
||
|
||
# arpanet fork combating human-induced exhaustion of our ipv4 address space
|
||
#
|
||
# group name GNU/Systemd XNU's Not UNIX! FreeBSD OpenBSD NetBSD The New Technology Commentary
|
||
syscon ipv6 IPV6_PMTUDISC_DONT 0 0 0 0 0 0 # consensus
|
||
syscon ipv6 IPV6_RTHDR_LOOSE 0 0 0 0 0 0 # consensus
|
||
syscon ipv6 IPV6_RTHDR_TYPE_0 0 0 0 0 0 0 # consensus
|
||
syscon ipv6 IPV6_CHECKSUM 7 26 26 26 26 26 # bsd consensus
|
||
syscon ipv6 IPV6_JOIN_GROUP 20 12 12 12 12 12 # bsd consensus
|
||
syscon ipv6 IPV6_LEAVE_GROUP 21 13 13 13 13 13 # bsd consensus
|
||
syscon ipv6 IPV6_MULTICAST_HOPS 18 10 10 10 10 10 # bsd consensus
|
||
syscon ipv6 IPV6_MULTICAST_IF 17 9 9 9 9 9 # bsd consensus
|
||
syscon ipv6 IPV6_MULTICAST_LOOP 19 11 11 11 11 11 # bsd consensus
|
||
syscon ipv6 IPV6_UNICAST_HOPS 0x10 4 4 4 4 4 # bsd consensus
|
||
syscon ipv6 IPV6_V6ONLY 26 27 27 27 27 27 # bsd consensus
|
||
syscon ipv6 IPV6_RECVTCLASS 66 35 57 57 57 40
|
||
syscon ipv6 IPV6_TCLASS 67 36 61 61 61 39
|
||
syscon ipv6 IPV6_DONTFRAG 62 0 62 62 62 14
|
||
syscon ipv6 IPV6_HOPLIMIT 52 0 47 47 47 21
|
||
syscon ipv6 IPV6_HOPOPTS 54 0 49 49 49 1
|
||
syscon ipv6 IPV6_PKTINFO 50 0 46 46 46 19
|
||
syscon ipv6 IPV6_RECVRTHDR 56 0 38 38 38 38
|
||
syscon ipv6 IPV6_RTHDR 57 0 51 51 51 0x20
|
||
syscon ipv6 IPV6_DSTOPTS 59 0 50 50 50 0
|
||
syscon ipv6 IPV6_IPSEC_POLICY 34 28 28 0 0 0
|
||
syscon ipv6 IPV6_NEXTHOP 9 0 48 48 48 0
|
||
syscon ipv6 IPV6_PATHMTU 61 0 44 44 44 0
|
||
syscon ipv6 IPV6_RECVDSTOPTS 58 0 40 40 40 0
|
||
syscon ipv6 IPV6_RECVHOPLIMIT 51 0 37 37 37 0
|
||
syscon ipv6 IPV6_RECVHOPOPTS 53 0 39 39 39 0
|
||
syscon ipv6 IPV6_RECVPATHMTU 60 0 43 43 43 0
|
||
syscon ipv6 IPV6_RECVPKTINFO 49 0 36 36 36 0
|
||
syscon ipv6 IPV6_RTHDRDSTOPTS 55 0 35 35 35 0
|
||
syscon ipv6 IPV6_RTHDR_STRICT 1 1 1 0 0 0
|
||
syscon ipv6 IPV6_ADD_MEMBERSHIP 20 0 0 0 0 12 # bsd consensus
|
||
syscon ipv6 IPV6_DROP_MEMBERSHIP 21 0 0 0 0 13 # bsd consensus
|
||
syscon ipv6 IPV6_HDRINCL 36 0 0 0 0 2 # bsd consensus
|
||
syscon ipv6 IPV6_MTU 24 0 0 0 0 72 # bsd consensus
|
||
syscon ipv6 IPV6_MTU_DISCOVER 23 0 0 0 0 71 # bsd consensus
|
||
syscon ipv6 IPV6_RECVERR 25 0 0 0 0 75 # bsd consensus
|
||
syscon ipv6 IPV6_2292DSTOPTS 4 23 0 0 0 0
|
||
syscon ipv6 IPV6_2292HOPLIMIT 8 20 0 0 0 0
|
||
syscon ipv6 IPV6_2292HOPOPTS 3 22 0 0 0 0
|
||
syscon ipv6 IPV6_2292PKTINFO 2 19 0 0 0 0
|
||
syscon ipv6 IPV6_2292PKTOPTIONS 6 25 0 0 0 0
|
||
syscon ipv6 IPV6_2292RTHDR 5 24 0 0 0 0
|
||
syscon ipv6 IPV6_AUTOFLOWLABEL 0 0 59 59 59 0
|
||
syscon ipv6 IPV6_ADDRFORM 1 0 0 0 0 0
|
||
syscon ipv6 IPV6_AUTHHDR 10 0 0 0 0 0
|
||
syscon ipv6 IPV6_JOIN_ANYCAST 27 0 0 0 0 0
|
||
syscon ipv6 IPV6_LEAVE_ANYCAST 28 0 0 0 0 0
|
||
syscon ipv6 IPV6_PMTUDISC_DO 2 0 0 0 0 0
|
||
syscon ipv6 IPV6_PMTUDISC_INTERFACE 4 0 0 0 0 0
|
||
syscon ipv6 IPV6_PMTUDISC_OMIT 5 0 0 0 0 0
|
||
syscon ipv6 IPV6_PMTUDISC_PROBE 3 0 0 0 0 0
|
||
syscon ipv6 IPV6_PMTUDISC_WANT 1 0 0 0 0 0
|
||
syscon ipv6 IPV6_ROUTER_ALERT 22 0 0 0 0 0
|
||
syscon ipv6 IPV6_RXDSTOPTS 59 0 0 0 0 0
|
||
syscon ipv6 IPV6_RXHOPOPTS 54 0 0 0 0 0
|
||
syscon ipv6 IPV6_XFRM_POLICY 35 0 0 0 0 0
|
||
syscon ipv6 IPV6_MINHOPCOUNT 0 0 0 65 65 0
|
||
syscon ipv6 IPV6_ORIGDSTADDR 0 0 72 0 0 0
|
||
syscon ipv6 IPV6_RECVORIGDSTADDR 0 0 72 0 0 0
|
||
syscon ipv6 INET6_ADDRSTRLEN 46 46 46 46 46 65 # unix consensus
|
||
syscon icmp6 ICMP6_DST_UNREACH_NOROUTE 0 0 0 0 0 0 # consensus
|
||
syscon icmp6 ICMP6_PARAMPROB_HEADER 0 0 0 0 0 0 # consensus
|
||
syscon icmp6 ICMP6_TIME_EXCEED_TRANSIT 0 0 0 0 0 0 # consensus
|
||
syscon icmp6 ICMP6_DST_UNREACH_ADMIN 1 1 1 1 1 1 # consensus
|
||
syscon icmp6 ICMP6_PARAMPROB_NEXTHEADER 1 1 1 1 1 1 # consensus
|
||
syscon icmp6 ICMP6_TIME_EXCEED_REASSEMBLY 1 1 1 1 1 1 # consensus
|
||
syscon icmp6 ICMP6_DST_UNREACH 1 1 1 1 1 0 # unix consensus
|
||
syscon icmp6 ICMP6_FILTER 1 18 18 18 18 0 # bsd consensus
|
||
syscon icmp6 ICMP6_DST_UNREACH_BEYONDSCOPE 2 2 2 2 2 2 # consensus
|
||
syscon icmp6 ICMP6_PARAMPROB_OPTION 2 2 2 2 2 2 # consensus
|
||
syscon icmp6 ICMP6_PACKET_TOO_BIG 2 2 2 2 2 0 # unix consensus
|
||
syscon icmp6 ICMP6_DST_UNREACH_ADDR 3 3 3 3 3 3 # consensus
|
||
syscon icmp6 ICMP6_TIME_EXCEEDED 3 3 3 3 3 0 # unix consensus
|
||
syscon icmp6 ICMP6_DST_UNREACH_NOPORT 4 4 4 4 4 4 # consensus
|
||
syscon icmp6 ICMP6_PARAM_PROB 4 4 4 4 4 0 # unix consensus
|
||
syscon icmp6 ICMP6_RR_FLAGS_PREVDONE 8 8 8 8 8 0 # unix consensus
|
||
syscon icmp6 ICMP6_RR_FLAGS_SPECSITE 0x10 0x10 0x10 0x10 0x10 0 # unix consensus
|
||
syscon icmp6 ICMP6_RR_PCOUSE_RAFLAGS_AUTO 0x10 0x40 0x40 0x40 0x40 0 # bsd consensus
|
||
syscon icmp6 ICMP6_RR_FLAGS_FORCEAPPLY 0x20 0x20 0x20 0x20 0x20 0 # unix consensus
|
||
syscon icmp6 ICMP6_RR_PCOUSE_RAFLAGS_ONLINK 0x20 0x80 0x80 0x80 0x80 0 # bsd consensus
|
||
syscon icmp6 ICMP6_RR_FLAGS_REQRESULT 0x40 0x40 0x40 0x40 0x40 0 # unix consensus
|
||
syscon icmp6 ICMP6_RR_PCOUSE_FLAGS_DECRPLTIME 0x40 0x40 0x40 0x40 0x40 0 # unix consensus
|
||
syscon icmp6 ICMP6_INFOMSG_MASK 0x80 0x80 0x80 0x80 0x80 0x80 # consensus
|
||
syscon icmp6 ICMP6_ECHO_REQUEST 0x80 0x80 0x80 0x80 0x80 0 # unix consensus
|
||
syscon icmp6 ICMP6_RR_FLAGS_TEST 0x80 0x80 0x80 0x80 0x80 0 # unix consensus
|
||
syscon icmp6 ICMP6_RR_PCOUSE_FLAGS_DECRVLTIME 0x80 0x80 0x80 0x80 0x80 0 # unix consensus
|
||
syscon icmp6 ICMP6_ECHO_REPLY 129 129 129 129 129 0 # unix consensus
|
||
syscon icmp6 ICMP6_ROUTER_RENUMBERING 138 138 138 138 138 0 # unix consensus
|
||
syscon icmp6 ICMP6_RR_RESULT_FLAGS_FORBIDDEN 0x0100 0x0100 0x0100 0x0100 0x0100 0 # unix consensus
|
||
syscon icmp6 ICMP6_RR_RESULT_FLAGS_OOB 0x0200 0x0200 0x0200 0x0200 0x0200 0 # unix consensus
|
||
|
||
syscon misc FIFOTYPE 54 54 54 54 54 0 # unix consensus
|
||
syscon misc GRPQUOTA 1 1 1 1 1 0 # unix consensus
|
||
syscon misc IF_NAMESIZE 0x10 0x10 0x10 0x10 0x10 0 # unix consensus
|
||
syscon misc INTERMEDIATE_C_GOOD 10 0 0 0 0 0
|
||
syscon misc INTERMEDIATE_GOOD 8 0 0 0 0 0
|
||
|
||
syscon misc IOV_MAX 0x0400 0x0400 0x0400 0x0400 0x0400 16 # unix consensus & MSG_MAXIOVLEN
|
||
syscon misc LINE_MAX 0x0800 0x0800 0x0800 0x0800 0x0800 0 # unix consensus
|
||
syscon misc LINKED_CMD_COMPLETE 10 0 0 0 0 0
|
||
syscon misc LINKED_FLG_CMD_COMPLETE 11 0 0 0 0 0
|
||
|
||
syscon misc LNKTYPE 49 49 49 49 49 0 # unix consensus
|
||
syscon misc MAXNAMLEN 255 255 255 255 255 0 # unix consensus
|
||
syscon misc MAXQUOTAS 2 2 2 2 2 0 # unix consensus
|
||
syscon misc MEDIUM_ERROR 3 0 0 0 0 0
|
||
syscon misc MEDIUM_SCAN 56 0 0 0 0 0
|
||
|
||
syscon misc NBBY 8 8 8 8 8 0 # unix consensus
|
||
syscon misc NR_DQHASH 43 0 0 0 0 0
|
||
syscon misc NR_DQUOTS 0x0100 0 0 0 0 0
|
||
|
||
syscon misc PERSISTENT_RESERVE_IN 94 0 0 0 0 0
|
||
syscon misc PERSISTENT_RESERVE_OUT 95 0 0 0 0 0
|
||
|
||
syscon misc PRELIM 1 1 1 1 1 0 # unix consensus
|
||
syscon misc REGTYPE 48 48 48 48 48 0 # unix consensus
|
||
syscon misc RES_PRF_CLASS 4 4 4 4 4 0 # unix consensus
|
||
syscon misc RHF_GUARANTEE_START_INIT 0x80 0 0 0 0 0
|
||
syscon misc RHF_NO_LIBRARY_REPLACEMENT 4 0 0 0 0 0
|
||
|
||
syscon misc RRQ 1 1 1 1 1 0 # unix consensus
|
||
syscon misc RTF_NOFORWARD 0x1000 0 0 0 0 0
|
||
syscon misc RTF_NOPMTUDISC 0x4000 0 0 0 0 0
|
||
|
||
syscon misc SARMAG 8 8 8 8 8 0 # unix consensus
|
||
syscon misc SEGSIZE 0x0200 0x0200 0x0200 0x0200 0x0200 0 # unix consensus
|
||
syscon misc SEND_DIAGNOSTIC 29 0 0 0 0 0
|
||
syscon misc SEND_VOLUME_TAG 182 0 0 0 0 0
|
||
|
||
syscon misc SET_LIMITS 51 0 0 0 0 0
|
||
syscon misc SET_WINDOW 36 0 0 0 0 0
|
||
|
||
syscon misc SFD_CLOEXEC 0x080000 0 0 0 0 0
|
||
syscon misc SFD_NONBLOCK 0x0800 0 0 0 0 0
|
||
|
||
syscon misc SOMAXCONN 0x80 0x80 0x80 0x80 0x80 0x7fffffff # unix consensus
|
||
syscon misc SUBCMDMASK 255 255 255 255 255 0 # unix consensus
|
||
syscon misc SUBCMDSHIFT 8 8 8 8 8 0 # unix consensus
|
||
syscon misc SYMTYPE 50 50 50 50 50 0 # unix consensus
|
||
syscon misc TGEXEC 8 8 8 8 8 0 # unix consensus
|
||
syscon misc TGREAD 0x20 0x20 0x20 0x20 0x20 0 # unix consensus
|
||
syscon misc TGWRITE 0x10 0x10 0x10 0x10 0x10 0 # unix consensus
|
||
syscon misc TMAGLEN 6 6 6 6 6 0 # unix consensus
|
||
syscon misc TOEXEC 1 1 1 1 1 0 # unix consensus
|
||
syscon misc TOREAD 4 4 4 4 4 0 # unix consensus
|
||
syscon misc TOWRITE 2 2 2 2 2 0 # unix consensus
|
||
syscon misc TRANSIENT 4 4 4 4 4 0 # unix consensus
|
||
syscon misc TSGID 0x0400 0x0400 0x0400 0x0400 0x0400 0 # unix consensus
|
||
syscon misc TSUID 0x0800 0x0800 0x0800 0x0800 0x0800 0 # unix consensus
|
||
syscon misc TSVTX 0x0200 0x0200 0x0200 0x0200 0x0200 0 # unix consensus
|
||
syscon misc TUEXEC 0x40 0x40 0x40 0x40 0x40 0 # unix consensus
|
||
syscon misc TUREAD 0x0100 0x0100 0x0100 0x0100 0x0100 0 # unix consensus
|
||
syscon misc TUWRITE 0x80 0x80 0x80 0x80 0x80 0 # unix consensus
|
||
syscon misc TVERSLEN 2 2 2 2 2 0 # unix consensus
|
||
syscon misc WORD_BIT 0x20 0x20 0x20 0x20 0x20 0 # unix consensus
|
||
syscon misc WRQ 2 2 2 2 2 0 # unix consensus
|
||
syscon misc SIGEV_THREAD 2 3 2 0 2 0
|
||
syscon misc SIGEV_SIGNAL 0 1 1 0 1 0
|
||
syscon misc SIGEV_NONE 1 0 0 0 0 0
|
||
|
||
syscon misc BC_BASE_MAX 99 99 99 0x7fffffff 0x7fffffff 0
|
||
syscon misc BC_DIM_MAX 0x0800 0x0800 0x0800 0xffff 0xffff 0
|
||
syscon misc BC_SCALE_MAX 99 99 99 0x7fffffff 0x7fffffff 0
|
||
syscon misc BC_STRING_MAX 0x03e8 0x03e8 0x03e8 0x7fffffff 0x7fffffff 0
|
||
|
||
syscon misc ABORTED_COMMAND 11 0 0 0 0 0
|
||
syscon misc ACORE 0 8 8 8 8 0 # bsd consensus
|
||
syscon misc AFORK 0 1 1 1 1 0 # bsd consensus
|
||
syscon misc AIO_ALLDONE 2 1 3 0 0 0
|
||
syscon misc AIO_NOTCANCELED 1 4 2 0 0 0
|
||
syscon misc AIO_CANCELED 0 2 1 0 0 0
|
||
|
||
syscon baud B0 0 0 0 0 0 0 # consensus
|
||
syscon baud B50 1 50 50 50 50 0 # bsd consensus
|
||
syscon baud B75 2 75 75 75 75 0 # bsd consensus
|
||
syscon baud B110 3 110 110 110 110 0 # bsd consensus
|
||
syscon baud B134 4 134 134 134 134 0 # bsd consensus
|
||
syscon baud B150 5 150 150 150 150 0 # bsd consensus
|
||
syscon baud B200 6 200 200 200 200 0 # bsd consensus
|
||
syscon baud B300 7 300 300 300 300 0 # bsd consensus
|
||
syscon baud B600 8 600 600 600 600 0 # bsd consensus
|
||
syscon baud B1200 9 0x04b0 0x04b0 0x04b0 0x04b0 0 # bsd consensus
|
||
syscon baud B1800 10 0x0708 0x0708 0x0708 0x0708 0 # bsd consensus
|
||
syscon baud B2400 11 0x0960 0x0960 0x0960 0x0960 0 # bsd consensus
|
||
syscon baud B4800 12 0x12c0 0x12c0 0x12c0 0x12c0 0 # bsd consensus
|
||
syscon baud B9600 13 0x2580 0x2580 0x2580 0x2580 0 # bsd consensus
|
||
syscon baud B19200 14 0x4b00 0x4b00 0x4b00 0x4b00 0 # bsd consensus
|
||
syscon baud B38400 15 0x9600 0x9600 0x9600 0x9600 0 # bsd consensus
|
||
syscon baud B57600 0x1001 0xe100 0xe100 0xe100 0xe100 0 # bsd consensus
|
||
syscon baud B115200 0x1002 0x01c200 0x01c200 0x01c200 0x01c200 0 # bsd consensus
|
||
syscon baud B230400 0x1003 0x038400 0x038400 0x038400 0x038400 0 # bsd consensus
|
||
syscon baud B500000 0x1005 0 0 0 0 0
|
||
syscon baud B576000 0x1006 0 0 0 0 0
|
||
syscon baud B1000000 0x1008 0 0 0 0 0
|
||
syscon baud B1152000 0x1009 0 0 0 0 0
|
||
syscon baud B1500000 0x100a 0 0 0 0 0
|
||
syscon baud B2000000 0x100b 0 0 0 0 0
|
||
syscon baud B2500000 0x100c 0 0 0 0 0
|
||
syscon baud B3000000 0x100d 0 0 0 0 0
|
||
syscon baud B3500000 0x100e 0 0 0 0 0
|
||
syscon baud B4000000 0x100f 0 0 0 0 0
|
||
|
||
syscon misc WEOF 0xffffffff -1 -1 -1 -1 -1 # bsd consensus (win fake)
|
||
syscon misc _LINUX_QUOTA_VERSION 2 0 0 0 0 0
|
||
syscon misc _SEM_SEMUN_UNDEFINED 1 0 0 0 0 0
|
||
syscon misc D_FMT 0x020029 2 2 1 1 0
|
||
syscon misc D_T_FMT 0x020028 1 1 0 0 0
|
||
|
||
syscon misc LOGIN_PROCESS 6 6 6 0 0 0
|
||
syscon misc LOGIN_NAME_MAX 0x0100 0 0 0x20 0x20 0
|
||
|
||
syscon misc T_FMT 0x02002a 3 3 2 2 0
|
||
syscon misc T_FMT_AMPM 0x02002b 4 4 3 3 0
|
||
|
||
syscon misc UL_GETFSIZE 1 1 1 0 0 0
|
||
syscon misc UL_SETFSIZE 2 2 2 0 0 0
|
||
|
||
syscon misc XATTR_CREATE 1 2 0 0 0 0
|
||
syscon misc XATTR_REPLACE 2 4 0 0 0 0
|
||
|
||
# https://youtu.be/GUQUD3IMbb4?t=85
|