From f6710005c7b5cbaa57962878278d7b6ee1bd22e2 Mon Sep 17 00:00:00 2001 From: rstone Date: Fri, 11 Nov 2011 03:49:42 +0000 Subject: Correct the types of the arguments to return probes of the syscall provider. Previously we were erroneously supplying the argument types of the corresponding entry probe. Reviewed by: rpaulo MFC after: 1 week --- sys/amd64/linux32/linux32_systrace_args.c | 1167 ++++++++++++++- sys/cddl/dev/systrace/systrace.c | 9 +- sys/compat/freebsd32/freebsd32_systrace_args.c | 1739 +++++++++++++++++++++- sys/i386/linux/linux_systrace_args.c | 1229 +++++++++++++++- sys/kern/makesyscalls.sh | 24 +- sys/kern/systrace_args.c | 1870 +++++++++++++++++++++++- 6 files changed, 6028 insertions(+), 10 deletions(-) (limited to 'sys') diff --git a/sys/amd64/linux32/linux32_systrace_args.c b/sys/amd64/linux32/linux32_systrace_args.c index 42f0b33..3f8c40c 100644 --- a/sys/amd64/linux32/linux32_systrace_args.c +++ b/sys/amd64/linux32/linux32_systrace_args.c @@ -2095,7 +2095,7 @@ systrace_args(int sysnum, void *params, uint64_t *uarg, int *n_args) }; } static void -systrace_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) +systrace_entry_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) { const char *p = NULL; switch (sysnum) { @@ -5124,3 +5124,1168 @@ systrace_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) if (p != NULL) strlcpy(desc, p, descsz); } +static void +systrace_return_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) +{ + const char *p = NULL; + switch (sysnum) { +#define nosys linux_nosys + /* sys_exit */ + case 1: + if (ndx == 0 || ndx == 1) + p = "void"; + break; + /* linux_fork */ + case 2: + /* read */ + case 3: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* write */ + case 4: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_open */ + case 5: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* close */ + case 6: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_waitpid */ + case 7: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_creat */ + case 8: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_link */ + case 9: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_unlink */ + case 10: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_execve */ + case 11: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_chdir */ + case 12: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_time */ + case 13: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_mknod */ + case 14: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_chmod */ + case 15: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_lchown16 */ + case 16: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_stat */ + case 18: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_lseek */ + case 19: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_getpid */ + case 20: + /* linux_mount */ + case 21: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_oldumount */ + case 22: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_setuid16 */ + case 23: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_getuid16 */ + case 24: + /* linux_stime */ + case 25: + /* linux_ptrace */ + case 26: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_alarm */ + case 27: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_pause */ + case 29: + /* linux_utime */ + case 30: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_access */ + case 33: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_nice */ + case 34: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sync */ + case 36: + /* linux_kill */ + case 37: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_rename */ + case 38: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_mkdir */ + case 39: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_rmdir */ + case 40: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* dup */ + case 41: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_pipe */ + case 42: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_times */ + case 43: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_brk */ + case 45: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_setgid16 */ + case 46: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_getgid16 */ + case 47: + /* linux_signal */ + case 48: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_geteuid16 */ + case 49: + /* linux_getegid16 */ + case 50: + /* acct */ + case 51: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_umount */ + case 52: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_ioctl */ + case 54: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_fcntl */ + case 55: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* setpgid */ + case 57: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_olduname */ + case 59: + /* umask */ + case 60: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* chroot */ + case 61: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_ustat */ + case 62: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* dup2 */ + case 63: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_getppid */ + case 64: + /* getpgrp */ + case 65: + /* setsid */ + case 66: + /* linux_sigaction */ + case 67: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_sgetmask */ + case 68: + /* linux_ssetmask */ + case 69: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_setreuid16 */ + case 70: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_setregid16 */ + case 71: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_sigsuspend */ + case 72: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_sigpending */ + case 73: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_sethostname */ + case 74: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_setrlimit */ + case 75: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_old_getrlimit */ + case 76: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_getrusage */ + case 77: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_gettimeofday */ + case 78: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_settimeofday */ + case 79: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_getgroups16 */ + case 80: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_setgroups16 */ + case 81: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_old_select */ + case 82: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_symlink */ + case 83: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_lstat */ + case 84: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_readlink */ + case 85: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* swapon */ + case 87: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_reboot */ + case 88: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_readdir */ + case 89: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_mmap */ + case 90: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* munmap */ + case 91: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_truncate */ + case 92: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_ftruncate */ + case 93: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* fchmod */ + case 94: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* fchown */ + case 95: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_getpriority */ + case 96: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* setpriority */ + case 97: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_statfs */ + case 99: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_fstatfs */ + case 100: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_socketcall */ + case 102: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_syslog */ + case 103: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_setitimer */ + case 104: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_getitimer */ + case 105: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_newstat */ + case 106: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_newlstat */ + case 107: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_newfstat */ + case 108: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_uname */ + case 109: + /* linux_iopl */ + case 110: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_vhangup */ + case 111: + /* linux_wait4 */ + case 114: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_swapoff */ + case 115: + /* linux_sysinfo */ + case 116: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_ipc */ + case 117: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* fsync */ + case 118: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_sigreturn */ + case 119: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_clone */ + case 120: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_setdomainname */ + case 121: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_newuname */ + case 122: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_adjtimex */ + case 124: + /* linux_mprotect */ + case 125: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_sigprocmask */ + case 126: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_create_module */ + case 127: + /* linux_init_module */ + case 128: + /* linux_delete_module */ + case 129: + /* linux_get_kernel_syms */ + case 130: + /* linux_quotactl */ + case 131: + /* getpgid */ + case 132: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* fchdir */ + case 133: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_bdflush */ + case 134: + /* linux_sysfs */ + case 135: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_personality */ + case 136: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_setfsuid16 */ + case 138: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_setfsgid16 */ + case 139: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_llseek */ + case 140: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_getdents */ + case 141: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_select */ + case 142: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* flock */ + case 143: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_msync */ + case 144: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_readv */ + case 145: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_writev */ + case 146: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_getsid */ + case 147: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_fdatasync */ + case 148: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_sysctl */ + case 149: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* mlock */ + case 150: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* munlock */ + case 151: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* mlockall */ + case 152: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* munlockall */ + case 153: + /* sched_setparam */ + case 154: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sched_getparam */ + case 155: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_sched_setscheduler */ + case 156: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_sched_getscheduler */ + case 157: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sched_yield */ + case 158: + /* linux_sched_get_priority_max */ + case 159: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_sched_get_priority_min */ + case 160: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_sched_rr_get_interval */ + case 161: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_nanosleep */ + case 162: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_mremap */ + case 163: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_setresuid16 */ + case 164: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_getresuid16 */ + case 165: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_query_module */ + case 167: + /* poll */ + case 168: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_nfsservctl */ + case 169: + /* linux_setresgid16 */ + case 170: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_getresgid16 */ + case 171: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_prctl */ + case 172: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_rt_sigreturn */ + case 173: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_rt_sigaction */ + case 174: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_rt_sigprocmask */ + case 175: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_rt_sigpending */ + case 176: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_rt_sigtimedwait */ + case 177: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_rt_sigqueueinfo */ + case 178: + /* linux_rt_sigsuspend */ + case 179: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_pread */ + case 180: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_pwrite */ + case 181: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_chown16 */ + case 182: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_getcwd */ + case 183: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_capget */ + case 184: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_capset */ + case 185: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_sigaltstack */ + case 186: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_sendfile */ + case 187: + /* linux_vfork */ + case 190: + /* linux_getrlimit */ + case 191: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_mmap2 */ + case 192: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_truncate64 */ + case 193: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_ftruncate64 */ + case 194: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_stat64 */ + case 195: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_lstat64 */ + case 196: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_fstat64 */ + case 197: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_lchown */ + case 198: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_getuid */ + case 199: + /* linux_getgid */ + case 200: + /* geteuid */ + case 201: + /* getegid */ + case 202: + /* setreuid */ + case 203: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* setregid */ + case 204: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_getgroups */ + case 205: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_setgroups */ + case 206: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* fchown */ + case 207: + /* setresuid */ + case 208: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getresuid */ + case 209: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* setresgid */ + case 210: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getresgid */ + case 211: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_chown */ + case 212: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* setuid */ + case 213: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* setgid */ + case 214: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_setfsuid */ + case 215: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_setfsgid */ + case 216: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_pivot_root */ + case 217: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_mincore */ + case 218: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* madvise */ + case 219: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_getdents64 */ + case 220: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_fcntl64 */ + case 221: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_gettid */ + case 224: + /* linux_setxattr */ + case 226: + /* linux_lsetxattr */ + case 227: + /* linux_fsetxattr */ + case 228: + /* linux_getxattr */ + case 229: + /* linux_lgetxattr */ + case 230: + /* linux_fgetxattr */ + case 231: + /* linux_listxattr */ + case 232: + /* linux_llistxattr */ + case 233: + /* linux_flistxattr */ + case 234: + /* linux_removexattr */ + case 235: + /* linux_lremovexattr */ + case 236: + /* linux_fremovexattr */ + case 237: + /* linux_tkill */ + case 238: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_sys_futex */ + case 240: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_sched_setaffinity */ + case 241: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_sched_getaffinity */ + case 242: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_set_thread_area */ + case 243: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_fadvise64 */ + case 250: + /* linux_exit_group */ + case 252: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_lookup_dcookie */ + case 253: + /* linux_epoll_create */ + case 254: + /* linux_epoll_ctl */ + case 255: + /* linux_epoll_wait */ + case 256: + /* linux_remap_file_pages */ + case 257: + /* linux_set_tid_address */ + case 258: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_timer_create */ + case 259: + /* linux_timer_settime */ + case 260: + /* linux_timer_gettime */ + case 261: + /* linux_timer_getoverrun */ + case 262: + /* linux_timer_delete */ + case 263: + /* linux_clock_settime */ + case 264: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_clock_gettime */ + case 265: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_clock_getres */ + case 266: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_clock_nanosleep */ + case 267: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_statfs64 */ + case 268: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_fstatfs64 */ + case 269: + /* linux_tgkill */ + case 270: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_utimes */ + case 271: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_fadvise64_64 */ + case 272: + /* linux_mbind */ + case 274: + /* linux_get_mempolicy */ + case 275: + /* linux_set_mempolicy */ + case 276: + /* linux_mq_open */ + case 277: + /* linux_mq_unlink */ + case 278: + /* linux_mq_timedsend */ + case 279: + /* linux_mq_timedreceive */ + case 280: + /* linux_mq_notify */ + case 281: + /* linux_mq_getsetattr */ + case 282: + /* linux_kexec_load */ + case 283: + /* linux_waitid */ + case 284: + /* linux_add_key */ + case 286: + /* linux_request_key */ + case 287: + /* linux_keyctl */ + case 288: + /* linux_ioprio_set */ + case 289: + /* linux_ioprio_get */ + case 290: + /* linux_inotify_init */ + case 291: + /* linux_inotify_add_watch */ + case 292: + /* linux_inotify_rm_watch */ + case 293: + /* linux_migrate_pages */ + case 294: + /* linux_openat */ + case 295: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_mkdirat */ + case 296: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_mknodat */ + case 297: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_fchownat */ + case 298: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_futimesat */ + case 299: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_fstatat64 */ + case 300: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_unlinkat */ + case 301: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_renameat */ + case 302: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_linkat */ + case 303: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_symlinkat */ + case 304: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_readlinkat */ + case 305: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_fchmodat */ + case 306: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_faccessat */ + case 307: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_pselect6 */ + case 308: + /* linux_ppoll */ + case 309: + /* linux_unshare */ + case 310: + /* linux_set_robust_list */ + case 311: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_get_robust_list */ + case 312: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_splice */ + case 313: + /* linux_sync_file_range */ + case 314: + /* linux_tee */ + case 315: + /* linux_vmsplice */ + case 316: + default: + break; + }; + if (p != NULL) + strlcpy(desc, p, descsz); +} diff --git a/sys/cddl/dev/systrace/systrace.c b/sys/cddl/dev/systrace/systrace.c index cc48747..ff63129 100644 --- a/sys/cddl/dev/systrace/systrace.c +++ b/sys/cddl/dev/systrace/systrace.c @@ -213,6 +213,7 @@ systrace_probe(u_int32_t id, int sysnum, struct sysent *sysent, void *params, /* Process the probe using the converted argments. */ dtrace_probe(id, uargs[0], uargs[1], uargs[2], uargs[3], uargs[4]); } + #endif static void @@ -220,8 +221,12 @@ systrace_getargdesc(void *arg, dtrace_id_t id, void *parg, dtrace_argdesc_t *des { int sysnum = SYSTRACE_SYSNUM((uintptr_t)parg); - systrace_setargdesc(sysnum, desc->dtargd_ndx, desc->dtargd_native, - sizeof(desc->dtargd_native)); + if (SYSTRACE_ISENTRY((uintptr_t)parg)) + systrace_entry_setargdesc(sysnum, desc->dtargd_ndx, + desc->dtargd_native, sizeof(desc->dtargd_native)); + else + systrace_return_setargdesc(sysnum, desc->dtargd_ndx, + desc->dtargd_native, sizeof(desc->dtargd_native)); if (desc->dtargd_native[0] == '\0') desc->dtargd_ndx = DTRACE_ARGNONE; diff --git a/sys/compat/freebsd32/freebsd32_systrace_args.c b/sys/compat/freebsd32/freebsd32_systrace_args.c index 88bdc70..faf2277 100644 --- a/sys/compat/freebsd32/freebsd32_systrace_args.c +++ b/sys/compat/freebsd32/freebsd32_systrace_args.c @@ -3052,7 +3052,7 @@ systrace_args(int sysnum, void *params, uint64_t *uarg, int *n_args) }; } static void -systrace_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) +systrace_entry_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) { const char *p = NULL; switch (sysnum) { @@ -8136,3 +8136,1740 @@ systrace_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) if (p != NULL) strlcpy(desc, p, descsz); } +static void +systrace_return_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) +{ + const char *p = NULL; + switch (sysnum) { +#if !defined(PAD64_REQUIRED) && defined(__powerpc__) +#define PAD64_REQUIRED +#endif + /* nosys */ + case 0: + /* sys_exit */ + case 1: + if (ndx == 0 || ndx == 1) + p = "void"; + break; + /* fork */ + case 2: + /* read */ + case 3: + if (ndx == 0 || ndx == 1) + p = "ssize_t"; + break; + /* write */ + case 4: + if (ndx == 0 || ndx == 1) + p = "ssize_t"; + break; + /* open */ + case 5: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* close */ + case 6: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_wait4 */ + case 7: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* link */ + case 9: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* unlink */ + case 10: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* chdir */ + case 12: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* fchdir */ + case 13: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* mknod */ + case 14: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* chmod */ + case 15: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* chown */ + case 16: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* obreak */ + case 17: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getpid */ + case 20: + /* mount */ + case 21: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* unmount */ + case 22: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* setuid */ + case 23: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getuid */ + case 24: + /* geteuid */ + case 25: + /* ptrace */ + case 26: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_recvmsg */ + case 27: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_sendmsg */ + case 28: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_recvfrom */ + case 29: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* accept */ + case 30: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getpeername */ + case 31: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getsockname */ + case 32: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* access */ + case 33: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* chflags */ + case 34: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* fchflags */ + case 35: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sync */ + case 36: + /* kill */ + case 37: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getppid */ + case 39: + /* dup */ + case 41: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* pipe */ + case 42: + /* getegid */ + case 43: + /* profil */ + case 44: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* ktrace */ + case 45: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getgid */ + case 47: + /* getlogin */ + case 49: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* setlogin */ + case 50: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* acct */ + case 51: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_sigaltstack */ + case 53: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_ioctl */ + case 54: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* reboot */ + case 55: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* revoke */ + case 56: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* symlink */ + case 57: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* readlink */ + case 58: + if (ndx == 0 || ndx == 1) + p = "ssize_t"; + break; + /* freebsd32_execve */ + case 59: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* umask */ + case 60: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* chroot */ + case 61: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* msync */ + case 65: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* vfork */ + case 66: + /* sbrk */ + case 69: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sstk */ + case 70: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* ovadvise */ + case 72: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* munmap */ + case 73: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_mprotect */ + case 74: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* madvise */ + case 75: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* mincore */ + case 78: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getgroups */ + case 79: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* setgroups */ + case 80: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getpgrp */ + case 81: + /* setpgid */ + case 82: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_setitimer */ + case 83: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* swapon */ + case 85: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_getitimer */ + case 86: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getdtablesize */ + case 89: + /* dup2 */ + case 90: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* fcntl */ + case 92: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_select */ + case 93: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* fsync */ + case 95: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* setpriority */ + case 96: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* socket */ + case 97: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* connect */ + case 98: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getpriority */ + case 100: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* bind */ + case 104: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* setsockopt */ + case 105: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* listen */ + case 106: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_gettimeofday */ + case 116: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_getrusage */ + case 117: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getsockopt */ + case 118: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_readv */ + case 120: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_writev */ + case 121: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_settimeofday */ + case 122: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* fchown */ + case 123: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* fchmod */ + case 124: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* setreuid */ + case 126: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* setregid */ + case 127: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* rename */ + case 128: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* flock */ + case 131: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* mkfifo */ + case 132: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sendto */ + case 133: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* shutdown */ + case 134: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* socketpair */ + case 135: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* mkdir */ + case 136: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* rmdir */ + case 137: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_utimes */ + case 138: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_adjtime */ + case 140: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* setsid */ + case 147: + /* quotactl */ + case 148: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getfh */ + case 161: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_sysarch */ + case 165: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* rtprio */ + case 166: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_semsys */ + case 169: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_msgsys */ + case 170: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_shmsys */ + case 171: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* ntp_adjtime */ + case 176: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* setgid */ + case 181: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* setegid */ + case 182: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* seteuid */ + case 183: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_stat */ + case 188: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_fstat */ + case 189: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_lstat */ + case 190: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* pathconf */ + case 191: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* fpathconf */ + case 192: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getrlimit */ + case 194: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* setrlimit */ + case 195: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_getdirentries */ + case 196: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* nosys */ + case 198: + /* freebsd32_sysctl */ + case 202: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* mlock */ + case 203: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* munlock */ + case 204: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* undelete */ + case 205: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_futimes */ + case 206: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getpgid */ + case 207: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* poll */ + case 209: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* lkmnosys */ + case 210: + /* lkmnosys */ + case 211: + /* lkmnosys */ + case 212: + /* lkmnosys */ + case 213: + /* lkmnosys */ + case 214: + /* lkmnosys */ + case 215: + /* lkmnosys */ + case 216: + /* lkmnosys */ + case 217: + /* lkmnosys */ + case 218: + /* lkmnosys */ + case 219: + /* semget */ + case 221: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* semop */ + case 222: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* msgget */ + case 225: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_msgsnd */ + case 226: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_msgrcv */ + case 227: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* shmat */ + case 228: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* shmdt */ + case 230: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* shmget */ + case 231: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_clock_gettime */ + case 232: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_clock_settime */ + case 233: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_clock_getres */ + case 234: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_nanosleep */ + case 240: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* minherit */ + case 250: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* rfork */ + case 251: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* openbsd_poll */ + case 252: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* issetugid */ + case 253: + /* lchown */ + case 254: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_aio_read */ + case 255: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_aio_write */ + case 256: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_lio_listio */ + case 257: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getdents */ + case 272: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* lchmod */ + case 274: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* lchown */ + case 275: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_lutimes */ + case 276: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* msync */ + case 277: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* nstat */ + case 278: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* nfstat */ + case 279: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* nlstat */ + case 280: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_preadv */ + case 289: + if (ndx == 0 || ndx == 1) + p = "ssize_t"; + break; + /* freebsd32_pwritev */ + case 290: + if (ndx == 0 || ndx == 1) + p = "ssize_t"; + break; + /* fhopen */ + case 298: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* fhstat */ + case 299: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* modnext */ + case 300: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_modstat */ + case 301: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* modfnext */ + case 302: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* modfind */ + case 303: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* kldload */ + case 304: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* kldunload */ + case 305: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* kldfind */ + case 306: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* kldnext */ + case 307: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_kldstat */ + case 308: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* kldfirstmod */ + case 309: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getsid */ + case 310: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* setresuid */ + case 311: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* setresgid */ + case 312: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_aio_return */ + case 314: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_aio_suspend */ + case 315: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_aio_cancel */ + case 316: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_aio_error */ + case 317: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_oaio_read */ + case 318: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_oaio_write */ + case 319: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_olio_listio */ + case 320: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* yield */ + case 321: + /* mlockall */ + case 324: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* munlockall */ + case 325: + /* __getcwd */ + case 326: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sched_setparam */ + case 327: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sched_getparam */ + case 328: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sched_setscheduler */ + case 329: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sched_getscheduler */ + case 330: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sched_yield */ + case 331: + /* sched_get_priority_max */ + case 332: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sched_get_priority_min */ + case 333: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sched_rr_get_interval */ + case 334: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* utrace */ + case 335: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* kldsym */ + case 337: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_jail */ + case 338: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sigprocmask */ + case 340: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sigsuspend */ + case 341: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sigpending */ + case 343: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_sigtimedwait */ + case 345: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_sigwaitinfo */ + case 346: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* __acl_get_file */ + case 347: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* __acl_set_file */ + case 348: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* __acl_get_fd */ + case 349: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* __acl_set_fd */ + case 350: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* __acl_delete_file */ + case 351: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* __acl_delete_fd */ + case 352: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* __acl_aclcheck_file */ + case 353: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* __acl_aclcheck_fd */ + case 354: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* extattrctl */ + case 355: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* extattr_set_file */ + case 356: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* extattr_get_file */ + case 357: + if (ndx == 0 || ndx == 1) + p = "ssize_t"; + break; + /* extattr_delete_file */ + case 358: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_aio_waitcomplete */ + case 359: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getresuid */ + case 360: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getresgid */ + case 361: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* kqueue */ + case 362: + /* freebsd32_kevent */ + case 363: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* extattr_set_fd */ + case 371: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* extattr_get_fd */ + case 372: + if (ndx == 0 || ndx == 1) + p = "ssize_t"; + break; + /* extattr_delete_fd */ + case 373: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* __setugid */ + case 374: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* eaccess */ + case 376: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_nmount */ + case 378: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* kenv */ + case 390: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* lchflags */ + case 391: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* uuidgen */ + case 392: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_sendfile */ + case 393: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getfsstat */ + case 395: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* statfs */ + case 396: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* fstatfs */ + case 397: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* fhstatfs */ + case 398: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* ksem_close */ + case 400: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* ksem_post */ + case 401: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* ksem_wait */ + case 402: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* ksem_trywait */ + case 403: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_ksem_init */ + case 404: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_ksem_open */ + case 405: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* ksem_unlink */ + case 406: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* ksem_getvalue */ + case 407: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* ksem_destroy */ + case 408: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* extattr_set_link */ + case 412: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* extattr_get_link */ + case 413: + if (ndx == 0 || ndx == 1) + p = "ssize_t"; + break; + /* extattr_delete_link */ + case 414: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_sigaction */ + case 416: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_sigreturn */ + case 417: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_getcontext */ + case 421: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_setcontext */ + case 422: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_swapcontext */ + case 423: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* __acl_get_link */ + case 425: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* __acl_set_link */ + case 426: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* __acl_delete_link */ + case 427: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* __acl_aclcheck_link */ + case 428: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sigwait */ + case 429: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* thr_exit */ + case 431: + if (ndx == 0 || ndx == 1) + p = "void"; + break; + /* thr_self */ + case 432: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* thr_kill */ + case 433: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_umtx_lock */ + case 434: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_umtx_unlock */ + case 435: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* jail_attach */ + case 436: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* extattr_list_fd */ + case 437: + if (ndx == 0 || ndx == 1) + p = "ssize_t"; + break; + /* extattr_list_file */ + case 438: + if (ndx == 0 || ndx == 1) + p = "ssize_t"; + break; + /* extattr_list_link */ + case 439: + if (ndx == 0 || ndx == 1) + p = "ssize_t"; + break; + /* freebsd32_ksem_timedwait */ + case 441: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_thr_suspend */ + case 442: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* thr_wake */ + case 443: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* kldunloadf */ + case 444: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* audit */ + case 445: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* auditon */ + case 446: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getauid */ + case 447: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* setauid */ + case 448: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getaudit */ + case 449: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* setaudit */ + case 450: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getaudit_addr */ + case 451: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* setaudit_addr */ + case 452: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* auditctl */ + case 453: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_umtx_op */ + case 454: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_thr_new */ + case 455: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sigqueue */ + case 456: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_kmq_open */ + case 457: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_kmq_setattr */ + case 458: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_kmq_timedreceive */ + case 459: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_kmq_timedsend */ + case 460: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* kmq_notify */ + case 461: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* kmq_unlink */ + case 462: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* abort2 */ + case 463: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* thr_set_name */ + case 464: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_aio_fsync */ + case 465: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* rtprio_thread */ + case 466: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sctp_peeloff */ + case 471: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sctp_generic_sendmsg */ + case 472: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sctp_generic_sendmsg_iov */ + case 473: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sctp_generic_recvmsg */ + case 474: + if (ndx == 0 || ndx == 1) + p = "int"; + break; +#ifdef PAD64_REQUIRED + /* freebsd32_pread */ + case 475: + if (ndx == 0 || ndx == 1) + p = "ssize_t"; + break; + /* freebsd32_pwrite */ + case 476: + if (ndx == 0 || ndx == 1) + p = "ssize_t"; + break; + /* freebsd32_mmap */ + case 477: + if (ndx == 0 || ndx == 1) + p = "caddr_t"; + break; + /* freebsd32_lseek */ + case 478: + if (ndx == 0 || ndx == 1) + p = "off_t"; + break; + /* freebsd32_truncate */ + case 479: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_ftruncate */ + case 480: + if (ndx == 0 || ndx == 1) + p = "int"; + break; +#else + /* freebsd32_pread */ + case 475: + if (ndx == 0 || ndx == 1) + p = "ssize_t"; + break; + /* freebsd32_pwrite */ + case 476: + if (ndx == 0 || ndx == 1) + p = "ssize_t"; + break; + /* freebsd32_mmap */ + case 477: + if (ndx == 0 || ndx == 1) + p = "caddr_t"; + break; + /* freebsd32_lseek */ + case 478: + if (ndx == 0 || ndx == 1) + p = "off_t"; + break; + /* freebsd32_truncate */ + case 479: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_ftruncate */ + case 480: + if (ndx == 0 || ndx == 1) + p = "int"; + break; +#endif + /* thr_kill2 */ + case 481: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* shm_open */ + case 482: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* shm_unlink */ + case 483: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* cpuset */ + case 484: + if (ndx == 0 || ndx == 1) + p = "int"; + break; +#ifdef PAD64_REQUIRED + /* freebsd32_cpuset_setid */ + case 485: + if (ndx == 0 || ndx == 1) + p = "int"; + break; +#else + /* freebsd32_cpuset_setid */ + case 485: + if (ndx == 0 || ndx == 1) + p = "int"; + break; +#endif + /* freebsd32_cpuset_getid */ + case 486: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_cpuset_getaffinity */ + case 487: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_cpuset_setaffinity */ + case 488: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* faccessat */ + case 489: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* fchmodat */ + case 490: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* fchownat */ + case 491: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_fexecve */ + case 492: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_fstatat */ + case 493: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_futimesat */ + case 494: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linkat */ + case 495: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* mkdirat */ + case 496: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* mkfifoat */ + case 497: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* mknodat */ + case 498: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* openat */ + case 499: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* readlinkat */ + case 500: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* renameat */ + case 501: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* symlinkat */ + case 502: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* unlinkat */ + case 503: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* posix_openpt */ + case 504: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_jail_get */ + case 506: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_jail_set */ + case 507: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* jail_remove */ + case 508: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* closefrom */ + case 509: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_semctl */ + case 510: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_msgctl */ + case 511: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_shmctl */ + case 512: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* lpathconf */ + case 513: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* cap_new */ + case 514: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* cap_getrights */ + case 515: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* cap_enter */ + case 516: + /* cap_getmode */ + case 517: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_pselect */ + case 522: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getloginclass */ + case 523: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* setloginclass */ + case 524: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* rctl_get_racct */ + case 525: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* rctl_get_rules */ + case 526: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* rctl_get_limits */ + case 527: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* rctl_add_rule */ + case 528: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* rctl_remove_rule */ + case 529: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_posix_fallocate */ + case 530: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd32_posix_fadvise */ + case 531: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + default: + break; + }; + if (p != NULL) + strlcpy(desc, p, descsz); +} diff --git a/sys/i386/linux/linux_systrace_args.c b/sys/i386/linux/linux_systrace_args.c index ce45424..1d79259 100644 --- a/sys/i386/linux/linux_systrace_args.c +++ b/sys/i386/linux/linux_systrace_args.c @@ -2186,7 +2186,7 @@ systrace_args(int sysnum, void *params, uint64_t *uarg, int *n_args) }; } static void -systrace_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) +systrace_entry_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) { const char *p = NULL; switch (sysnum) { @@ -5420,3 +5420,1230 @@ systrace_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) if (p != NULL) strlcpy(desc, p, descsz); } +static void +systrace_return_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) +{ + const char *p = NULL; + switch (sysnum) { +#define nosys linux_nosys + /* sys_exit */ + case 1: + if (ndx == 0 || ndx == 1) + p = "void"; + break; + /* linux_fork */ + case 2: + /* read */ + case 3: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* write */ + case 4: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_open */ + case 5: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* close */ + case 6: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_waitpid */ + case 7: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_creat */ + case 8: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_link */ + case 9: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_unlink */ + case 10: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_execve */ + case 11: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_chdir */ + case 12: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_time */ + case 13: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_mknod */ + case 14: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_chmod */ + case 15: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_lchown16 */ + case 16: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_stat */ + case 18: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_lseek */ + case 19: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_getpid */ + case 20: + /* linux_mount */ + case 21: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_oldumount */ + case 22: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_setuid16 */ + case 23: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_getuid16 */ + case 24: + /* linux_stime */ + case 25: + /* linux_ptrace */ + case 26: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_alarm */ + case 27: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_fstat */ + case 28: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_pause */ + case 29: + /* linux_utime */ + case 30: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_access */ + case 33: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_nice */ + case 34: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sync */ + case 36: + /* linux_kill */ + case 37: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_rename */ + case 38: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_mkdir */ + case 39: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_rmdir */ + case 40: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* dup */ + case 41: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_pipe */ + case 42: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_times */ + case 43: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_brk */ + case 45: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_setgid16 */ + case 46: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_getgid16 */ + case 47: + /* linux_signal */ + case 48: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_geteuid16 */ + case 49: + /* linux_getegid16 */ + case 50: + /* acct */ + case 51: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_umount */ + case 52: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_ioctl */ + case 54: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_fcntl */ + case 55: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* setpgid */ + case 57: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_olduname */ + case 59: + /* umask */ + case 60: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* chroot */ + case 61: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_ustat */ + case 62: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* dup2 */ + case 63: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_getppid */ + case 64: + /* getpgrp */ + case 65: + /* setsid */ + case 66: + /* linux_sigaction */ + case 67: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_sgetmask */ + case 68: + /* linux_ssetmask */ + case 69: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_setreuid16 */ + case 70: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_setregid16 */ + case 71: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_sigsuspend */ + case 72: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_sigpending */ + case 73: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_sethostname */ + case 74: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_setrlimit */ + case 75: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_old_getrlimit */ + case 76: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getrusage */ + case 77: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* gettimeofday */ + case 78: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* settimeofday */ + case 79: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_getgroups16 */ + case 80: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_setgroups16 */ + case 81: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_old_select */ + case 82: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_symlink */ + case 83: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_lstat */ + case 84: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_readlink */ + case 85: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_uselib */ + case 86: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* swapon */ + case 87: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_reboot */ + case 88: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_readdir */ + case 89: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_mmap */ + case 90: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* munmap */ + case 91: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_truncate */ + case 92: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_ftruncate */ + case 93: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* fchmod */ + case 94: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* fchown */ + case 95: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_getpriority */ + case 96: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* setpriority */ + case 97: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_statfs */ + case 99: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_fstatfs */ + case 100: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_ioperm */ + case 101: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_socketcall */ + case 102: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_syslog */ + case 103: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_setitimer */ + case 104: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_getitimer */ + case 105: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_newstat */ + case 106: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_newlstat */ + case 107: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_newfstat */ + case 108: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_uname */ + case 109: + /* linux_iopl */ + case 110: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_vhangup */ + case 111: + /* linux_vm86old */ + case 113: + /* linux_wait4 */ + case 114: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_swapoff */ + case 115: + /* linux_sysinfo */ + case 116: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_ipc */ + case 117: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* fsync */ + case 118: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_sigreturn */ + case 119: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_clone */ + case 120: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_setdomainname */ + case 121: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_newuname */ + case 122: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_modify_ldt */ + case 123: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_adjtimex */ + case 124: + /* linux_mprotect */ + case 125: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_sigprocmask */ + case 126: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_create_module */ + case 127: + /* linux_init_module */ + case 128: + /* linux_delete_module */ + case 129: + /* linux_get_kernel_syms */ + case 130: + /* linux_quotactl */ + case 131: + /* getpgid */ + case 132: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* fchdir */ + case 133: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_bdflush */ + case 134: + /* linux_sysfs */ + case 135: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_personality */ + case 136: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_setfsuid16 */ + case 138: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_setfsgid16 */ + case 139: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_llseek */ + case 140: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_getdents */ + case 141: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_select */ + case 142: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* flock */ + case 143: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_msync */ + case 144: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* readv */ + case 145: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* writev */ + case 146: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_getsid */ + case 147: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_fdatasync */ + case 148: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_sysctl */ + case 149: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* mlock */ + case 150: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* munlock */ + case 151: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* mlockall */ + case 152: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* munlockall */ + case 153: + /* sched_setparam */ + case 154: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sched_getparam */ + case 155: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_sched_setscheduler */ + case 156: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_sched_getscheduler */ + case 157: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sched_yield */ + case 158: + /* linux_sched_get_priority_max */ + case 159: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_sched_get_priority_min */ + case 160: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sched_rr_get_interval */ + case 161: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_nanosleep */ + case 162: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_mremap */ + case 163: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_setresuid16 */ + case 164: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_getresuid16 */ + case 165: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_vm86 */ + case 166: + /* linux_query_module */ + case 167: + /* poll */ + case 168: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_nfsservctl */ + case 169: + /* linux_setresgid16 */ + case 170: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_getresgid16 */ + case 171: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_prctl */ + case 172: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_rt_sigreturn */ + case 173: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_rt_sigaction */ + case 174: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_rt_sigprocmask */ + case 175: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_rt_sigpending */ + case 176: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_rt_sigtimedwait */ + case 177: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_rt_sigqueueinfo */ + case 178: + /* linux_rt_sigsuspend */ + case 179: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_pread */ + case 180: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_pwrite */ + case 181: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_chown16 */ + case 182: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_getcwd */ + case 183: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_capget */ + case 184: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_capset */ + case 185: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_sigaltstack */ + case 186: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_sendfile */ + case 187: + /* linux_vfork */ + case 190: + /* linux_getrlimit */ + case 191: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_mmap2 */ + case 192: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_truncate64 */ + case 193: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_ftruncate64 */ + case 194: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_stat64 */ + case 195: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_lstat64 */ + case 196: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_fstat64 */ + case 197: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_lchown */ + case 198: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_getuid */ + case 199: + /* linux_getgid */ + case 200: + /* geteuid */ + case 201: + /* getegid */ + case 202: + /* setreuid */ + case 203: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* setregid */ + case 204: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_getgroups */ + case 205: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_setgroups */ + case 206: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* fchown */ + case 207: + /* setresuid */ + case 208: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getresuid */ + case 209: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* setresgid */ + case 210: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getresgid */ + case 211: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_chown */ + case 212: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* setuid */ + case 213: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* setgid */ + case 214: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_setfsuid */ + case 215: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_setfsgid */ + case 216: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_pivot_root */ + case 217: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_mincore */ + case 218: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* madvise */ + case 219: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_getdents64 */ + case 220: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_fcntl64 */ + case 221: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_gettid */ + case 224: + /* linux_setxattr */ + case 226: + /* linux_lsetxattr */ + case 227: + /* linux_fsetxattr */ + case 228: + /* linux_getxattr */ + case 229: + /* linux_lgetxattr */ + case 230: + /* linux_fgetxattr */ + case 231: + /* linux_listxattr */ + case 232: + /* linux_llistxattr */ + case 233: + /* linux_flistxattr */ + case 234: + /* linux_removexattr */ + case 235: + /* linux_lremovexattr */ + case 236: + /* linux_fremovexattr */ + case 237: + /* linux_tkill */ + case 238: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_sys_futex */ + case 240: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_sched_setaffinity */ + case 241: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_sched_getaffinity */ + case 242: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_set_thread_area */ + case 243: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_get_thread_area */ + case 244: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_fadvise64 */ + case 250: + /* linux_exit_group */ + case 252: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_lookup_dcookie */ + case 253: + /* linux_epoll_create */ + case 254: + /* linux_epoll_ctl */ + case 255: + /* linux_epoll_wait */ + case 256: + /* linux_remap_file_pages */ + case 257: + /* linux_set_tid_address */ + case 258: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_timer_create */ + case 259: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_timer_settime */ + case 260: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_timer_gettime */ + case 261: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_timer_getoverrun */ + case 262: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_timer_delete */ + case 263: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_clock_settime */ + case 264: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_clock_gettime */ + case 265: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_clock_getres */ + case 266: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_clock_nanosleep */ + case 267: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_statfs64 */ + case 268: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_fstatfs64 */ + case 269: + /* linux_tgkill */ + case 270: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_utimes */ + case 271: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_fadvise64_64 */ + case 272: + /* linux_mbind */ + case 274: + /* linux_get_mempolicy */ + case 275: + /* linux_set_mempolicy */ + case 276: + /* linux_mq_open */ + case 277: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_mq_unlink */ + case 278: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_mq_timedsend */ + case 279: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_mq_timedreceive */ + case 280: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_mq_notify */ + case 281: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_mq_getsetattr */ + case 282: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_kexec_load */ + case 283: + /* linux_waitid */ + case 284: + /* linux_add_key */ + case 286: + /* linux_request_key */ + case 287: + /* linux_keyctl */ + case 288: + /* linux_ioprio_set */ + case 289: + /* linux_ioprio_get */ + case 290: + /* linux_inotify_init */ + case 291: + /* linux_inotify_add_watch */ + case 292: + /* linux_inotify_rm_watch */ + case 293: + /* linux_migrate_pages */ + case 294: + /* linux_openat */ + case 295: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_mkdirat */ + case 296: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_mknodat */ + case 297: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_fchownat */ + case 298: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_futimesat */ + case 299: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_fstatat64 */ + case 300: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_unlinkat */ + case 301: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_renameat */ + case 302: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_linkat */ + case 303: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_symlinkat */ + case 304: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_readlinkat */ + case 305: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_fchmodat */ + case 306: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_faccessat */ + case 307: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_pselect6 */ + case 308: + /* linux_ppoll */ + case 309: + /* linux_unshare */ + case 310: + /* linux_set_robust_list */ + case 311: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_get_robust_list */ + case 312: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_splice */ + case 313: + /* linux_sync_file_range */ + case 314: + /* linux_tee */ + case 315: + /* linux_vmsplice */ + case 316: + default: + break; + }; + if (p != NULL) + strlcpy(desc, p, descsz); +} diff --git a/sys/kern/makesyscalls.sh b/sys/kern/makesyscalls.sh index d1162b5..1f081ce 100644 --- a/sys/kern/makesyscalls.sh +++ b/sys/kern/makesyscalls.sh @@ -38,6 +38,7 @@ sysinc="sysinc.switch.$$" sysarg="sysarg.switch.$$" sysprotoend="sysprotoend.$$" systracetmp="systrace.$$" +systraceret="systraceret.$$" if [ -r capabilities.conf ]; then capenabled=`cat capabilities.conf | grep -v "^#" | grep -v "^$"` @@ -46,9 +47,9 @@ else capenabled="" fi -trap "rm $sysaue $sysdcl $syscompat $syscompatdcl $syscompat4 $syscompat4dcl $syscompat6 $syscompat6dcl $syscompat7 $syscompat7dcl $sysent $sysinc $sysarg $sysprotoend $systracetmp" 0 +trap "rm $sysaue $sysdcl $syscompat $syscompatdcl $syscompat4 $syscompat4dcl $syscompat6 $syscompat6dcl $syscompat7 $syscompat7dcl $sysent $sysinc $sysarg $sysprotoend $systracetmp $systraceret" 0 -touch $sysaue $sysdcl $syscompat $syscompatdcl $syscompat4 $syscompat4dcl $syscompat6 $syscompat6dcl $syscompat7 $syscompat7dcl $sysent $sysinc $sysarg $sysprotoend $systracetmp +touch $sysaue $sysdcl $syscompat $syscompatdcl $syscompat4 $syscompat4dcl $syscompat6 $syscompat6dcl $syscompat7 $syscompat7dcl $sysent $sysinc $sysarg $sysprotoend $systracetmp $systraceret case $# in 0) echo "usage: $0 input-file " 1>&2 @@ -96,6 +97,7 @@ s/\$//g sysmk = \"$sysmk\" systrace = \"$systrace\" systracetmp = \"$systracetmp\" + systraceret = \"$systraceret\" compat = \"$compat\" compat4 = \"$compat4\" compat6 = \"$compat6\" @@ -179,9 +181,12 @@ s/\$//g printf "\tint64_t *iarg = (int64_t *) uarg;\n" > systrace printf "\tswitch (sysnum) {\n" > systrace - printf "static void\nsystrace_setargdesc(int sysnum, int ndx, char *desc, size_t descsz)\n{\n\tconst char *p = NULL;\n" > systracetmp + printf "static void\nsystrace_entry_setargdesc(int sysnum, int ndx, char *desc, size_t descsz)\n{\n\tconst char *p = NULL;\n" > systracetmp printf "\tswitch (sysnum) {\n" > systracetmp + printf "static void\nsystrace_return_setargdesc(int sysnum, int ndx, char *desc, size_t descsz)\n{\n\tconst char *p = NULL;\n" > systraceret + printf "\tswitch (sysnum) {\n" > systraceret + next } NF == 0 || $1 ~ /^;/ { @@ -202,6 +207,7 @@ s/\$//g print > sysnames print > systrace print > systracetmp + print > systraceret savesyscall = syscall next } @@ -216,6 +222,7 @@ s/\$//g print > sysnames print > systrace print > systracetmp + print > systraceret syscall = savesyscall next } @@ -230,6 +237,7 @@ s/\$//g print > sysnames print > systrace print > systracetmp + print > systraceret next } syscall != $1 { @@ -303,7 +311,8 @@ s/\$//g parserr($end, ")") end-- - f++ #function return type + syscallret=$f + f++ funcname=$f @@ -387,6 +396,7 @@ s/\$//g parseline() printf("\t/* %s */\n\tcase %d: {\n", funcname, syscall) > systrace printf("\t/* %s */\n\tcase %d:\n", funcname, syscall) > systracetmp + printf("\t/* %s */\n\tcase %d:\n", funcname, syscall) > systraceret if (argc > 0) { printf("\t\tswitch(ndx) {\n") > systracetmp printf("\t\tstruct %s *p = params;\n", argalias) > systrace @@ -406,6 +416,10 @@ s/\$//g argname[i], argtype[i]) > systrace } printf("\t\tdefault:\n\t\t\tbreak;\n\t\t};\n") > systracetmp + + printf("\t\tif (ndx == 0 || ndx == 1)\n") > systraceret + printf("\t\t\tp = \"%s\";\n", syscallret) > systraceret + printf("\t\tbreak;\n") > systraceret } printf("\t\t*n_args = %d;\n\t\tbreak;\n\t}\n", argc) > systrace printf("\t\tbreak;\n") > systracetmp @@ -623,6 +637,7 @@ s/\$//g > syshdr printf "\tdefault:\n\t\t*n_args = 0;\n\t\tbreak;\n\t};\n}\n" > systrace printf "\tdefault:\n\t\tbreak;\n\t};\n\tif (p != NULL)\n\t\tstrlcpy(desc, p, descsz);\n}\n" > systracetmp + printf "\tdefault:\n\t\tbreak;\n\t};\n\tif (p != NULL)\n\t\tstrlcpy(desc, p, descsz);\n}\n" > systraceret } ' cat $sysinc $sysent >> $syssw @@ -633,4 +648,5 @@ cat $sysarg $sysdcl \ $syscompat7 $syscompat7dcl \ $sysaue $sysprotoend > $sysproto cat $systracetmp >> $systrace +cat $systraceret >> $systrace diff --git a/sys/kern/systrace_args.c b/sys/kern/systrace_args.c index 1d5586f..5bf734c 100644 --- a/sys/kern/systrace_args.c +++ b/sys/kern/systrace_args.c @@ -3250,7 +3250,7 @@ systrace_args(int sysnum, void *params, uint64_t *uarg, int *n_args) }; } static void -systrace_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) +systrace_entry_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) { const char *p = NULL; switch (sysnum) { @@ -8638,3 +8638,1871 @@ systrace_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) if (p != NULL) strlcpy(desc, p, descsz); } +static void +systrace_return_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) +{ + const char *p = NULL; + switch (sysnum) { + /* nosys */ + case 0: + /* sys_exit */ + case 1: + if (ndx == 0 || ndx == 1) + p = "void"; + break; + /* fork */ + case 2: + /* read */ + case 3: + if (ndx == 0 || ndx == 1) + p = "ssize_t"; + break; + /* write */ + case 4: + if (ndx == 0 || ndx == 1) + p = "ssize_t"; + break; + /* open */ + case 5: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* close */ + case 6: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* wait4 */ + case 7: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* link */ + case 9: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* unlink */ + case 10: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* chdir */ + case 12: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* fchdir */ + case 13: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* mknod */ + case 14: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* chmod */ + case 15: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* chown */ + case 16: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* obreak */ + case 17: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getpid */ + case 20: + /* mount */ + case 21: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* unmount */ + case 22: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* setuid */ + case 23: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getuid */ + case 24: + /* geteuid */ + case 25: + /* ptrace */ + case 26: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* recvmsg */ + case 27: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sendmsg */ + case 28: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* recvfrom */ + case 29: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* accept */ + case 30: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getpeername */ + case 31: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getsockname */ + case 32: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* access */ + case 33: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* chflags */ + case 34: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* fchflags */ + case 35: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sync */ + case 36: + /* kill */ + case 37: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getppid */ + case 39: + /* dup */ + case 41: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* pipe */ + case 42: + /* getegid */ + case 43: + /* profil */ + case 44: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* ktrace */ + case 45: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getgid */ + case 47: + /* getlogin */ + case 49: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* setlogin */ + case 50: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* acct */ + case 51: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sigaltstack */ + case 53: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* ioctl */ + case 54: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* reboot */ + case 55: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* revoke */ + case 56: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* symlink */ + case 57: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* readlink */ + case 58: + if (ndx == 0 || ndx == 1) + p = "ssize_t"; + break; + /* execve */ + case 59: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* umask */ + case 60: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* chroot */ + case 61: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* msync */ + case 65: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* vfork */ + case 66: + /* sbrk */ + case 69: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sstk */ + case 70: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* ovadvise */ + case 72: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* munmap */ + case 73: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* mprotect */ + case 74: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* madvise */ + case 75: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* mincore */ + case 78: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getgroups */ + case 79: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* setgroups */ + case 80: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getpgrp */ + case 81: + /* setpgid */ + case 82: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* setitimer */ + case 83: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* swapon */ + case 85: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getitimer */ + case 86: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getdtablesize */ + case 89: + /* dup2 */ + case 90: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* fcntl */ + case 92: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* select */ + case 93: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* fsync */ + case 95: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* setpriority */ + case 96: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* socket */ + case 97: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* connect */ + case 98: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getpriority */ + case 100: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* bind */ + case 104: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* setsockopt */ + case 105: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* listen */ + case 106: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* gettimeofday */ + case 116: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getrusage */ + case 117: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getsockopt */ + case 118: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* readv */ + case 120: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* writev */ + case 121: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* settimeofday */ + case 122: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* fchown */ + case 123: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* fchmod */ + case 124: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* setreuid */ + case 126: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* setregid */ + case 127: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* rename */ + case 128: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* flock */ + case 131: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* mkfifo */ + case 132: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sendto */ + case 133: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* shutdown */ + case 134: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* socketpair */ + case 135: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* mkdir */ + case 136: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* rmdir */ + case 137: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* utimes */ + case 138: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* adjtime */ + case 140: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* setsid */ + case 147: + /* quotactl */ + case 148: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* nlm_syscall */ + case 154: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* nfssvc */ + case 155: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* lgetfh */ + case 160: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getfh */ + case 161: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sysarch */ + case 165: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* rtprio */ + case 166: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* semsys */ + case 169: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* msgsys */ + case 170: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* shmsys */ + case 171: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd6_pread */ + case 173: + if (ndx == 0 || ndx == 1) + p = "ssize_t"; + break; + /* freebsd6_pwrite */ + case 174: + if (ndx == 0 || ndx == 1) + p = "ssize_t"; + break; + /* setfib */ + case 175: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* ntp_adjtime */ + case 176: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* setgid */ + case 181: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* setegid */ + case 182: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* seteuid */ + case 183: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* stat */ + case 188: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* fstat */ + case 189: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* lstat */ + case 190: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* pathconf */ + case 191: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* fpathconf */ + case 192: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getrlimit */ + case 194: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* setrlimit */ + case 195: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getdirentries */ + case 196: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd6_mmap */ + case 197: + if (ndx == 0 || ndx == 1) + p = "caddr_t"; + break; + /* nosys */ + case 198: + /* freebsd6_lseek */ + case 199: + if (ndx == 0 || ndx == 1) + p = "off_t"; + break; + /* freebsd6_truncate */ + case 200: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* freebsd6_ftruncate */ + case 201: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* __sysctl */ + case 202: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* mlock */ + case 203: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* munlock */ + case 204: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* undelete */ + case 205: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* futimes */ + case 206: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getpgid */ + case 207: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* poll */ + case 209: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* lkmnosys */ + case 210: + /* lkmnosys */ + case 211: + /* lkmnosys */ + case 212: + /* lkmnosys */ + case 213: + /* lkmnosys */ + case 214: + /* lkmnosys */ + case 215: + /* lkmnosys */ + case 216: + /* lkmnosys */ + case 217: + /* lkmnosys */ + case 218: + /* lkmnosys */ + case 219: + /* semget */ + case 221: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* semop */ + case 222: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* msgget */ + case 225: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* msgsnd */ + case 226: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* msgrcv */ + case 227: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* shmat */ + case 228: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* shmdt */ + case 230: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* shmget */ + case 231: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* clock_gettime */ + case 232: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* clock_settime */ + case 233: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* clock_getres */ + case 234: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* ktimer_create */ + case 235: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* ktimer_delete */ + case 236: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* ktimer_settime */ + case 237: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* ktimer_gettime */ + case 238: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* ktimer_getoverrun */ + case 239: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* nanosleep */ + case 240: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* ntp_gettime */ + case 248: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* minherit */ + case 250: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* rfork */ + case 251: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* openbsd_poll */ + case 252: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* issetugid */ + case 253: + /* lchown */ + case 254: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* aio_read */ + case 255: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* aio_write */ + case 256: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* lio_listio */ + case 257: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getdents */ + case 272: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* lchmod */ + case 274: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* lchown */ + case 275: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* lutimes */ + case 276: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* msync */ + case 277: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* nstat */ + case 278: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* nfstat */ + case 279: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* nlstat */ + case 280: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* preadv */ + case 289: + if (ndx == 0 || ndx == 1) + p = "ssize_t"; + break; + /* pwritev */ + case 290: + if (ndx == 0 || ndx == 1) + p = "ssize_t"; + break; + /* fhopen */ + case 298: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* fhstat */ + case 299: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* modnext */ + case 300: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* modstat */ + case 301: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* modfnext */ + case 302: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* modfind */ + case 303: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* kldload */ + case 304: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* kldunload */ + case 305: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* kldfind */ + case 306: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* kldnext */ + case 307: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* kldstat */ + case 308: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* kldfirstmod */ + case 309: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getsid */ + case 310: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* setresuid */ + case 311: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* setresgid */ + case 312: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* aio_return */ + case 314: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* aio_suspend */ + case 315: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* aio_cancel */ + case 316: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* aio_error */ + case 317: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* oaio_read */ + case 318: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* oaio_write */ + case 319: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* olio_listio */ + case 320: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* yield */ + case 321: + /* mlockall */ + case 324: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* munlockall */ + case 325: + /* __getcwd */ + case 326: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sched_setparam */ + case 327: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sched_getparam */ + case 328: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sched_setscheduler */ + case 329: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sched_getscheduler */ + case 330: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sched_yield */ + case 331: + /* sched_get_priority_max */ + case 332: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sched_get_priority_min */ + case 333: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sched_rr_get_interval */ + case 334: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* utrace */ + case 335: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* kldsym */ + case 337: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* jail */ + case 338: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* nnpfs_syscall */ + case 339: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sigprocmask */ + case 340: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sigsuspend */ + case 341: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sigpending */ + case 343: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sigtimedwait */ + case 345: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sigwaitinfo */ + case 346: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* __acl_get_file */ + case 347: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* __acl_set_file */ + case 348: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* __acl_get_fd */ + case 349: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* __acl_set_fd */ + case 350: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* __acl_delete_file */ + case 351: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* __acl_delete_fd */ + case 352: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* __acl_aclcheck_file */ + case 353: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* __acl_aclcheck_fd */ + case 354: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* extattrctl */ + case 355: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* extattr_set_file */ + case 356: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* extattr_get_file */ + case 357: + if (ndx == 0 || ndx == 1) + p = "ssize_t"; + break; + /* extattr_delete_file */ + case 358: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* aio_waitcomplete */ + case 359: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getresuid */ + case 360: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getresgid */ + case 361: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* kqueue */ + case 362: + /* kevent */ + case 363: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* extattr_set_fd */ + case 371: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* extattr_get_fd */ + case 372: + if (ndx == 0 || ndx == 1) + p = "ssize_t"; + break; + /* extattr_delete_fd */ + case 373: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* __setugid */ + case 374: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* eaccess */ + case 376: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* afs3_syscall */ + case 377: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* nmount */ + case 378: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* __mac_get_proc */ + case 384: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* __mac_set_proc */ + case 385: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* __mac_get_fd */ + case 386: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* __mac_get_file */ + case 387: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* __mac_set_fd */ + case 388: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* __mac_set_file */ + case 389: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* kenv */ + case 390: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* lchflags */ + case 391: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* uuidgen */ + case 392: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sendfile */ + case 393: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* mac_syscall */ + case 394: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getfsstat */ + case 395: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* statfs */ + case 396: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* fstatfs */ + case 397: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* fhstatfs */ + case 398: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* ksem_close */ + case 400: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* ksem_post */ + case 401: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* ksem_wait */ + case 402: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* ksem_trywait */ + case 403: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* ksem_init */ + case 404: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* ksem_open */ + case 405: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* ksem_unlink */ + case 406: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* ksem_getvalue */ + case 407: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* ksem_destroy */ + case 408: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* __mac_get_pid */ + case 409: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* __mac_get_link */ + case 410: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* __mac_set_link */ + case 411: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* extattr_set_link */ + case 412: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* extattr_get_link */ + case 413: + if (ndx == 0 || ndx == 1) + p = "ssize_t"; + break; + /* extattr_delete_link */ + case 414: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* __mac_execve */ + case 415: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sigaction */ + case 416: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sigreturn */ + case 417: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getcontext */ + case 421: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* setcontext */ + case 422: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* swapcontext */ + case 423: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* swapoff */ + case 424: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* __acl_get_link */ + case 425: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* __acl_set_link */ + case 426: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* __acl_delete_link */ + case 427: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* __acl_aclcheck_link */ + case 428: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sigwait */ + case 429: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* thr_create */ + case 430: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* thr_exit */ + case 431: + if (ndx == 0 || ndx == 1) + p = "void"; + break; + /* thr_self */ + case 432: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* thr_kill */ + case 433: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* _umtx_lock */ + case 434: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* _umtx_unlock */ + case 435: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* jail_attach */ + case 436: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* extattr_list_fd */ + case 437: + if (ndx == 0 || ndx == 1) + p = "ssize_t"; + break; + /* extattr_list_file */ + case 438: + if (ndx == 0 || ndx == 1) + p = "ssize_t"; + break; + /* extattr_list_link */ + case 439: + if (ndx == 0 || ndx == 1) + p = "ssize_t"; + break; + /* ksem_timedwait */ + case 441: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* thr_suspend */ + case 442: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* thr_wake */ + case 443: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* kldunloadf */ + case 444: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* audit */ + case 445: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* auditon */ + case 446: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getauid */ + case 447: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* setauid */ + case 448: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getaudit */ + case 449: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* setaudit */ + case 450: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getaudit_addr */ + case 451: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* setaudit_addr */ + case 452: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* auditctl */ + case 453: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* _umtx_op */ + case 454: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* thr_new */ + case 455: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sigqueue */ + case 456: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* kmq_open */ + case 457: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* kmq_setattr */ + case 458: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* kmq_timedreceive */ + case 459: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* kmq_timedsend */ + case 460: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* kmq_notify */ + case 461: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* kmq_unlink */ + case 462: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* abort2 */ + case 463: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* thr_set_name */ + case 464: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* aio_fsync */ + case 465: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* rtprio_thread */ + case 466: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sctp_peeloff */ + case 471: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sctp_generic_sendmsg */ + case 472: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sctp_generic_sendmsg_iov */ + case 473: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sctp_generic_recvmsg */ + case 474: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* pread */ + case 475: + if (ndx == 0 || ndx == 1) + p = "ssize_t"; + break; + /* pwrite */ + case 476: + if (ndx == 0 || ndx == 1) + p = "ssize_t"; + break; + /* mmap */ + case 477: + if (ndx == 0 || ndx == 1) + p = "caddr_t"; + break; + /* lseek */ + case 478: + if (ndx == 0 || ndx == 1) + p = "off_t"; + break; + /* truncate */ + case 479: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* ftruncate */ + case 480: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* thr_kill2 */ + case 481: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* shm_open */ + case 482: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* shm_unlink */ + case 483: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* cpuset */ + case 484: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* cpuset_setid */ + case 485: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* cpuset_getid */ + case 486: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* cpuset_getaffinity */ + case 487: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* cpuset_setaffinity */ + case 488: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* faccessat */ + case 489: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* fchmodat */ + case 490: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* fchownat */ + case 491: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* fexecve */ + case 492: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* fstatat */ + case 493: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* futimesat */ + case 494: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linkat */ + case 495: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* mkdirat */ + case 496: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* mkfifoat */ + case 497: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* mknodat */ + case 498: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* openat */ + case 499: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* readlinkat */ + case 500: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* renameat */ + case 501: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* symlinkat */ + case 502: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* unlinkat */ + case 503: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* posix_openpt */ + case 504: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* gssd_syscall */ + case 505: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* jail_get */ + case 506: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* jail_set */ + case 507: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* jail_remove */ + case 508: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* closefrom */ + case 509: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* __semctl */ + case 510: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* msgctl */ + case 511: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* shmctl */ + case 512: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* lpathconf */ + case 513: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* cap_new */ + case 514: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* cap_getrights */ + case 515: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* cap_enter */ + case 516: + /* cap_getmode */ + case 517: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* pdfork */ + case 518: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* pdkill */ + case 519: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* pdgetpid */ + case 520: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* pselect */ + case 522: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* getloginclass */ + case 523: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* setloginclass */ + case 524: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* rctl_get_racct */ + case 525: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* rctl_get_rules */ + case 526: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* rctl_get_limits */ + case 527: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* rctl_add_rule */ + case 528: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* rctl_remove_rule */ + case 529: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* posix_fallocate */ + case 530: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* posix_fadvise */ + case 531: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + default: + break; + }; + if (p != NULL) + strlcpy(desc, p, descsz); +} -- cgit v1.1