#pragma once #include #include #include #define syscall0(n) _syscall0(n) #define syscall1(n,a1) _syscall1(n,sysarg(a1)) #define syscall2(n,a1,a2) _syscall2(n,sysarg(a1),sysarg(a2)) #define syscall3(n,a1,a2,a3) _syscall3(n,sysarg(a1),sysarg(a2),sysarg(a3)) #define syscall4(n,a1,a2,a3,a4) _syscall4(n,sysarg(a1),sysarg(a2),sysarg(a3),sysarg(a4)) #define syscall5(n,a1,a2,a3,a4,a5) _syscall5(n,sysarg(a1),sysarg(a2),sysarg(a3),sysarg(a4),sysarg(a5)) #define syscall6(n,a1,a2,a3,a4,a5,a6) _syscall6(n,sysarg(a1),sysarg(a2),sysarg(a3),sysarg(a4),sysarg(a5),sysarg(a6)) #define syscall7(n,a1,a2,a3,a4,a5,a6,a7) _syscall7(n,sysarg(a1),sysarg(a2),sysarg(a3),sysarg(a4),sysarg(a5),sysarg(a6),sysarg(a7)) #define __SYSCALL_NARGS_X(a,b,c,d,e,f,g,h,n,...) n #define __SYSCALL_NARGS(...) __SYSCALL_NARGS_X(__VA_ARGS__,7,6,5,4,3,2,1,0,) #define __SYSCALL_CONCAT_X(a,b) a##b #define __SYSCALL_CONCAT(a,b) __SYSCALL_CONCAT_X(a,b) #define __SYSCALL_DISP(b,...) __SYSCALL_CONCAT(b,__SYSCALL_NARGS(__VA_ARGS__))(__VA_ARGS__) #define syscall(...) __SYSCALL_DISP(syscall,__VA_ARGS__) #ifndef sysarg # define sysarg(x) ((long)(x)) #endif #define error(ret) ((ret) < 0 && (ret) > -4096) ? (-(ret)) : 0 /********************************************* * XXX: below this line is computer generated *********************************************/ /* legacy cleanup */ #ifdef ·SocketCall #endif #ifdef ·GetUid32 # undef ·LChown # undef ·GetUid # undef ·GetGid # undef ·GetEUid # undef ·GetEGid # undef ·SetReUid # undef ·SetReGid # undef ·GetGroups # undef ·SetGroups # undef ·FChown # undef ·SetResUid # undef ·GetResUid # undef ·SetResGid # undef ·GetResGid # undef ·Chown # undef ·SetUid # undef ·SetGid # undef ·SetFsUid # undef ·SetFsGid # define ·LChown ·LChown32 # define ·GetUid ·GetUid32 # define ·GetGid ·GetGid32 # define ·GetEUid ·GetEUid32 # define ·GetEGid ·GetEGid32 # define ·SetReUid ·SetReUid32 # define ·SetReGid ·SetReGid32 # define ·GetGroups ·GetGroups32 # define ·SetGroups ·SetGroups32 # define ·FChown ·FChown32 # define ·SetResUid ·SetResUid32 # define ·GetResUid ·GetResUid32 # define ·SetResGid ·SetResGid32 # define ·GetResGid ·GetResGid32 # define ·Chown ·Chown32 # define ·SetUid ·SetUid32 # define ·SetGid ·SetGid32 # define ·SetFsUid ·SetFsUid32 # define ·SetFsGid ·SetFsGid32 #endif #ifdef ·FCntl64 # undef ·FCntl # define ·FCntl ·FCntl64 #endif #ifdef ·GetDents64 # undef ·GetDents # define ·GetDents ·GetDents64 #endif #ifdef ·FTruncate64 # undef ·FTruncate # undef ·Truncate # define ·FTruncate ·FTruncate64 # define ·Truncate ·Truncate64 #endif #ifdef ·Stat64 # undef ·Stat # define ·Stat ·Stat64 #endif #ifdef ·FStat64 # undef ·FStat # define ·FStat ·FStat64 #endif #ifdef ·LStat64 # undef ·LStat # define ·LStat ·LStat64 #endif #ifdef ·StatFs64 # undef ·StatFs # define ·StatFs ·StatFs64 #endif #ifdef ·FStatFs64 # undef ·FStatFs # define ·FStatFs ·FStatFs64 #endif #ifdef ·NewFStatAt # undef ·FStatAt # define ·FStatAt ·NewFStatAt # undef ·FStatAt # define ·FStatAt ·FStatAt64 #endif #ifdef ·UGetRLimit # undef ·GetRLimit # define ·GetRLimit ·UGetRLimit #endif #ifdef ·NewSelect # undef ·Select # define ·Select ·NewSelect #endif #ifdef ·PRead64 # undef ·PRead # undef ·PWrite # define ·PRead ·PRead64 # define ·PWrite ·PWrite64 #endif #ifdef ·FAdvise6464 # undef ·FAdvise # define ·FAdvise ·FAdvise6464 # undef ·FAdvise # define ·FAdvise ·FAdvise64 #endif #ifdef ·SendFile64 # undef ·SendFile # define ·SendFile ·SendFile64 #endif #ifndef ·TimerSetTime # define ·TimerSetTime ·TimerSetTime32 #endif #ifndef ·TimerGetTime # define ·TimerGetTime ·TimerGetTime32 #endif #ifndef ·TimerFdSetTime # define ·TimerFdSetTime ·TimerFdSetTime32 #endif #ifndef ·TimerFdGetTime # define ·TimerFdGetTime ·TimerFdGetTime32 #endif #ifndef ·ClockSetTime # define ·ClockSetTime ·ClockSetTime32 #endif #ifndef ·ClockGetTime # define ·ClockGetTime ·ClockGetTime32 #endif #ifndef ·ClockGetRes # define ·ClockGetRes ·ClockGetResTime32 #endif #ifndef ·ClockNanoSleep # define ·ClockNanoSleep ·ClockNanoSleepTime32 #endif #ifndef ·GetTimeOfDay # define ·GetTimeOfDay ·GetTimeOfDayTime32 #endif #ifndef ·SetTimeOfDay # define ·SetTimeOfDay ·SetTimeOfDayTime32 #endif #ifndef ·ClockGetTime # define ·ClockGetTime ·ClockGetTime64 #endif #ifndef ·ClockSetTime # define ·ClockSetTime ·ClockSetTime64 #endif #ifndef ·ClockAdjTime # define ·ClockAdjTime ·ClockAdjTime64 #endif #ifndef ·ClockGetRes # define ·ClockGetRes ·ClockGetResTime64 #endif #ifndef ·ClockNanoSleep # define ·ClockNanoSleep ·ClockNanoSleepTime64 #endif #ifndef ·TimerGetTime # define ·TimerGetTime ·TimerGetTime64 #endif #ifndef ·TimerSetTime # define ·TimerSetTime ·TimerSetTime64 #endif #ifndef ·TimerFdGetTime # define ·TimerFdGetTime ·TimerFdGetTime64 #endif #ifndef ·TimerFdSetTime # define ·TimerFdSetTime ·TimerFdSetTime64 #endif #ifndef ·UTimeNsAt # define ·UTimeNsAt ·UTimeNsAtTime64 #endif #ifndef ·PSelect6 # define ·PSelect6 ·PSelect6Time64 #endif #ifndef ·PPoll # define ·PPoll ·PPollTime64 #endif #ifndef ·RecvMMsg # define ·RecvMMsg ·RecvMMsgTime64 #endif #ifndef ·MQTimedSend # define ·MQTimedSend ·MQTimedSendTime64 #endif #ifndef ·MQTimedReceive # define ·MQTimedReceive ·MQTimedReceiveTime64 #endif #ifndef ·RtSigTimedWait # define ·RtSigTimedWait ·RtSigTimedWaitTime64 #endif #ifndef ·Futex # define ·Futex ·FutexTime64 #endif #ifndef ·SchedRrGetInterval # define ·SchedRrGetInterval ·SchedRrGetIntervalTime64 #endif #ifndef ·Accept # define ·Accept ·Accept4 #endif