1 #define _BSD_SOURCE 2 #include <unistd.h> 3 #include "syscall.h" 4 #include <stdarg.h> 5 6 #undef syscall 7 syscall(long n,...)8long syscall(long n, ...) 9 { 10 va_list ap; 11 syscall_arg_t a,b,c,d,e,f; 12 va_start(ap, n); 13 a=va_arg(ap, syscall_arg_t); 14 b=va_arg(ap, syscall_arg_t); 15 c=va_arg(ap, syscall_arg_t); 16 d=va_arg(ap, syscall_arg_t); 17 e=va_arg(ap, syscall_arg_t); 18 f=va_arg(ap, syscall_arg_t); 19 va_end(ap); 20 return __syscall_ret(__syscall(n,a,b,c,d,e,f)); 21 } 22