1e06f534bSDavid du Colombier #include "/sys/src/libc/9syscall/sys.h" 2e06f534bSDavid du Colombier 3e06f534bSDavid du Colombier typedef long Syscall(ulong*); 4e06f534bSDavid du Colombier 5e06f534bSDavid du Colombier Syscall sysr1; 6e06f534bSDavid du Colombier Syscall sys_errstr; 7e06f534bSDavid du Colombier Syscall sysbind; 8e06f534bSDavid du Colombier Syscall syschdir; 9e06f534bSDavid du Colombier Syscall sysclose; 10e06f534bSDavid du Colombier Syscall sysdup; 11e06f534bSDavid du Colombier Syscall sysalarm; 12e06f534bSDavid du Colombier Syscall sysexec; 13e06f534bSDavid du Colombier Syscall sysexits; 14e06f534bSDavid du Colombier Syscall sys_fsession; 15e06f534bSDavid du Colombier Syscall sysfauth; 16e06f534bSDavid du Colombier Syscall sys_fstat; 17e06f534bSDavid du Colombier Syscall syssegbrk; 18e06f534bSDavid du Colombier Syscall sys_mount; 19e06f534bSDavid du Colombier Syscall sysopen; 20e06f534bSDavid du Colombier Syscall sys_read; 21e06f534bSDavid du Colombier Syscall sysoseek; 22e06f534bSDavid du Colombier Syscall syssleep; 23e06f534bSDavid du Colombier Syscall sys_stat; 24e06f534bSDavid du Colombier Syscall sysrfork; 25e06f534bSDavid du Colombier Syscall sys_write; 26e06f534bSDavid du Colombier Syscall syspipe; 27e06f534bSDavid du Colombier Syscall syscreate; 28e06f534bSDavid du Colombier Syscall sysfd2path; 29e06f534bSDavid du Colombier Syscall sysbrk_; 30e06f534bSDavid du Colombier Syscall sysremove; 31e06f534bSDavid du Colombier Syscall sys_wstat; 32e06f534bSDavid du Colombier Syscall sys_fwstat; 33e06f534bSDavid du Colombier Syscall sysnotify; 34e06f534bSDavid du Colombier Syscall sysnoted; 35e06f534bSDavid du Colombier Syscall syssegattach; 36e06f534bSDavid du Colombier Syscall syssegdetach; 37e06f534bSDavid du Colombier Syscall syssegfree; 38e06f534bSDavid du Colombier Syscall syssegflush; 39e06f534bSDavid du Colombier Syscall sysrendezvous; 40e06f534bSDavid du Colombier Syscall sysunmount; 41e06f534bSDavid du Colombier Syscall sys_wait; 42e06f534bSDavid du Colombier Syscall syssemacquire; 43e06f534bSDavid du Colombier Syscall syssemrelease; 44e06f534bSDavid du Colombier Syscall sysseek; 45e06f534bSDavid du Colombier Syscall sysfversion; 46e06f534bSDavid du Colombier Syscall syserrstr; 47e06f534bSDavid du Colombier Syscall sysstat; 48e06f534bSDavid du Colombier Syscall sysfstat; 49e06f534bSDavid du Colombier Syscall syswstat; 50e06f534bSDavid du Colombier Syscall sysfwstat; 51e06f534bSDavid du Colombier Syscall sysmount; 52e06f534bSDavid du Colombier Syscall sysawait; 53e06f534bSDavid du Colombier Syscall syspread; 54e06f534bSDavid du Colombier Syscall syspwrite; 5509525e75SDavid du Colombier Syscall systsemacquire; 56*fac6300fSDavid du Colombier Syscall sysnsec; 57e06f534bSDavid du Colombier Syscall sysdeath; 58e06f534bSDavid du Colombier 59e06f534bSDavid du Colombier Syscall *systab[]={ 60e06f534bSDavid du Colombier [SYSR1] sysr1, 61e06f534bSDavid du Colombier [_ERRSTR] sys_errstr, 62e06f534bSDavid du Colombier [BIND] sysbind, 63e06f534bSDavid du Colombier [CHDIR] syschdir, 64e06f534bSDavid du Colombier [CLOSE] sysclose, 65e06f534bSDavid du Colombier [DUP] sysdup, 66e06f534bSDavid du Colombier [ALARM] sysalarm, 67e06f534bSDavid du Colombier [EXEC] sysexec, 68e06f534bSDavid du Colombier [EXITS] sysexits, 69e06f534bSDavid du Colombier [_FSESSION] sys_fsession, 70e06f534bSDavid du Colombier [FAUTH] sysfauth, 71e06f534bSDavid du Colombier [_FSTAT] sys_fstat, 72e06f534bSDavid du Colombier [SEGBRK] syssegbrk, 73e06f534bSDavid du Colombier [_MOUNT] sys_mount, 74e06f534bSDavid du Colombier [OPEN] sysopen, 75e06f534bSDavid du Colombier [_READ] sys_read, 76e06f534bSDavid du Colombier [OSEEK] sysoseek, 77e06f534bSDavid du Colombier [SLEEP] syssleep, 78e06f534bSDavid du Colombier [_STAT] sys_stat, 79e06f534bSDavid du Colombier [RFORK] sysrfork, 80e06f534bSDavid du Colombier [_WRITE] sys_write, 81e06f534bSDavid du Colombier [PIPE] syspipe, 82e06f534bSDavid du Colombier [CREATE] syscreate, 83e06f534bSDavid du Colombier [FD2PATH] sysfd2path, 84e06f534bSDavid du Colombier [BRK_] sysbrk_, 85e06f534bSDavid du Colombier [REMOVE] sysremove, 86e06f534bSDavid du Colombier [_WSTAT] sys_wstat, 87e06f534bSDavid du Colombier [_FWSTAT] sys_fwstat, 88e06f534bSDavid du Colombier [NOTIFY] sysnotify, 89e06f534bSDavid du Colombier [NOTED] sysnoted, 90e06f534bSDavid du Colombier [SEGATTACH] syssegattach, 91e06f534bSDavid du Colombier [SEGDETACH] syssegdetach, 92e06f534bSDavid du Colombier [SEGFREE] syssegfree, 93e06f534bSDavid du Colombier [SEGFLUSH] syssegflush, 94e06f534bSDavid du Colombier [RENDEZVOUS] sysrendezvous, 95e06f534bSDavid du Colombier [UNMOUNT] sysunmount, 96e06f534bSDavid du Colombier [_WAIT] sys_wait, 97e06f534bSDavid du Colombier [SEMACQUIRE] syssemacquire, 98e06f534bSDavid du Colombier [SEMRELEASE] syssemrelease, 99e06f534bSDavid du Colombier [SEEK] sysseek, 100e06f534bSDavid du Colombier [FVERSION] sysfversion, 101e06f534bSDavid du Colombier [ERRSTR] syserrstr, 102e06f534bSDavid du Colombier [STAT] sysstat, 103e06f534bSDavid du Colombier [FSTAT] sysfstat, 104e06f534bSDavid du Colombier [WSTAT] syswstat, 105e06f534bSDavid du Colombier [FWSTAT] sysfwstat, 106e06f534bSDavid du Colombier [MOUNT] sysmount, 107e06f534bSDavid du Colombier [AWAIT] sysawait, 108e06f534bSDavid du Colombier [PREAD] syspread, 109e06f534bSDavid du Colombier [PWRITE] syspwrite, 11009525e75SDavid du Colombier [TSEMACQUIRE] systsemacquire, 111*fac6300fSDavid du Colombier [NSEC] sysnsec, 112e06f534bSDavid du Colombier }; 113e06f534bSDavid du Colombier 114e06f534bSDavid du Colombier char *sysctab[]={ 115e06f534bSDavid du Colombier [SYSR1] "Running", 116e06f534bSDavid du Colombier [_ERRSTR] "_errstr", 117e06f534bSDavid du Colombier [BIND] "Bind", 118e06f534bSDavid du Colombier [CHDIR] "Chdir", 119e06f534bSDavid du Colombier [CLOSE] "Close", 120e06f534bSDavid du Colombier [DUP] "Dup", 121e06f534bSDavid du Colombier [ALARM] "Alarm", 122e06f534bSDavid du Colombier [EXEC] "Exec", 123e06f534bSDavid du Colombier [EXITS] "Exits", 124e06f534bSDavid du Colombier [_FSESSION] "_fsession", 125e06f534bSDavid du Colombier [FAUTH] "Fauth", 126e06f534bSDavid du Colombier [_FSTAT] "_fstat", 127e06f534bSDavid du Colombier [SEGBRK] "Segbrk", 128e06f534bSDavid du Colombier [_MOUNT] "_mount", 129e06f534bSDavid du Colombier [OPEN] "Open", 130e06f534bSDavid du Colombier [_READ] "_read", 131e06f534bSDavid du Colombier [OSEEK] "Oseek", 132e06f534bSDavid du Colombier [SLEEP] "Sleep", 133e06f534bSDavid du Colombier [_STAT] "_stat", 134e06f534bSDavid du Colombier [RFORK] "Rfork", 135e06f534bSDavid du Colombier [_WRITE] "_write", 136e06f534bSDavid du Colombier [PIPE] "Pipe", 137e06f534bSDavid du Colombier [CREATE] "Create", 138e06f534bSDavid du Colombier [FD2PATH] "Fd2path", 139e06f534bSDavid du Colombier [BRK_] "Brk", 140e06f534bSDavid du Colombier [REMOVE] "Remove", 141e06f534bSDavid du Colombier [_WSTAT] "_wstat", 142e06f534bSDavid du Colombier [_FWSTAT] "_fwstat", 143e06f534bSDavid du Colombier [NOTIFY] "Notify", 144e06f534bSDavid du Colombier [NOTED] "Noted", 145e06f534bSDavid du Colombier [SEGATTACH] "Segattach", 146e06f534bSDavid du Colombier [SEGDETACH] "Segdetach", 147e06f534bSDavid du Colombier [SEGFREE] "Segfree", 148e06f534bSDavid du Colombier [SEGFLUSH] "Segflush", 149e06f534bSDavid du Colombier [RENDEZVOUS] "Rendez", 150e06f534bSDavid du Colombier [UNMOUNT] "Unmount", 151e06f534bSDavid du Colombier [_WAIT] "_wait", 152e06f534bSDavid du Colombier [SEMACQUIRE] "Semacquire", 153e06f534bSDavid du Colombier [SEMRELEASE] "Semrelease", 154e06f534bSDavid du Colombier [SEEK] "Seek", 155e06f534bSDavid du Colombier [FVERSION] "Fversion", 156e06f534bSDavid du Colombier [ERRSTR] "Errstr", 157e06f534bSDavid du Colombier [STAT] "Stat", 158e06f534bSDavid du Colombier [FSTAT] "Fstat", 159e06f534bSDavid du Colombier [WSTAT] "Wstat", 160e06f534bSDavid du Colombier [FWSTAT] "Fwstat", 161e06f534bSDavid du Colombier [MOUNT] "Mount", 162e06f534bSDavid du Colombier [AWAIT] "Await", 163e06f534bSDavid du Colombier [PREAD] "Pread", 164e06f534bSDavid du Colombier [PWRITE] "Pwrite", 16509525e75SDavid du Colombier [TSEMACQUIRE] "Tsemacquire", 166*fac6300fSDavid du Colombier [NSEC] "Nsec", 167e06f534bSDavid du Colombier }; 168e06f534bSDavid du Colombier 169e06f534bSDavid du Colombier int nsyscall = (sizeof systab/sizeof systab[0]); 170