📄 syscalls.c
字号:
return(__syscall_sched_setscheduler(pid, policy, p));}#endif#endif//#define __NR_sched_getscheduler 157#ifdef __NR_sched_getscheduler#ifdef L___syscall_sched_getscheduler#include <sched.h>#define __NR___syscall_sched_getscheduler __NR_sched_getschedulerstatic inline_syscall1(int, __syscall_sched_getscheduler, __kernel_pid_t, pid);int sched_getscheduler(pid_t pid){ return(__syscall_sched_getscheduler(pid));}#endif#endif//#define __NR_sched_yield 158#ifdef __NR_sched_yield#ifdef L_sched_yield#include <sched.h>_syscall0(int, sched_yield);#endif#endif//#define __NR_sched_get_priority_max 159#ifdef __NR_sched_get_priority_max#ifdef L_sched_get_priority_max#include <sched.h>_syscall1(int, sched_get_priority_max, int, policy);#endif#endif//#define __NR_sched_get_priority_min 160#ifdef __NR_sched_get_priority_min#ifdef L_sched_get_priority_min#include <sched.h>_syscall1(int, sched_get_priority_min, int, policy);#endif#endif//#define __NR_sched_rr_get_interval 161#ifdef __NR_sched_rr_get_interval#ifdef L___syscall_sched_rr_get_interval#include <sched.h>#define __NR___syscall_sched_rr_get_interval __NR_sched_rr_get_intervalstatic inline_syscall2(int, __syscall_sched_rr_get_interval, __kernel_pid_t, pid, struct timespec *, tp);int sched_rr_get_interval(pid_t pid, struct timespec * tp){ return(__syscall_sched_rr_get_interval(pid, tp));}#endif#endif//#define __NR_nanosleep 162#ifdef L___libc_nanosleep#include <time.h>#define __NR___libc_nanosleep __NR_nanosleep_syscall2(int, __libc_nanosleep, const struct timespec *, req, struct timespec *, rem);weak_alias(__libc_nanosleep, nanosleep)#endif//#define __NR_mremap 163#ifdef L_mremap#include <unistd.h>#include <sys/mman.h>_syscall4(__ptr_t, mremap, __ptr_t, old_address, size_t, old_size, size_t, new_size, int, may_move);#endif//#define __NR_setresuid 164#ifdef __NR_setresuid#ifdef L___syscall_setresuid#define __NR___syscall_setresuid __NR_setresuidstatic inline_syscall3(int, __syscall_setresuid, __kernel_uid_t, rgid, __kernel_uid_t, egid, __kernel_uid_t, sgid);int setresuid(uid_t ruid, uid_t euid, uid_t suid){ return(__syscall_setresuid(ruid, euid, suid));}#endif#endif//#define __NR_getresuid 165#ifdef __NR_getresuid#ifdef L___syscall_getresuid#define __NR___syscall_getresuid __NR_getresuidstatic inline_syscall3(int, __syscall_getresuid, __kernel_uid_t *, ruid, __kernel_uid_t *, euid, __kernel_uid_t *, suid);int getresuid (uid_t *ruid, uid_t *euid, uid_t *suid){ int result; __kernel_uid_t k_ruid, k_euid, k_suid; result = __syscall_getresuid(&k_ruid, &k_euid, &k_suid); if (result == 0) { *ruid = (uid_t) k_ruid; *euid = (uid_t) k_euid; *suid = (uid_t) k_suid; } return result;}#endif#endif//#define __NR_vm86 166//#define __NR_query_module 167#ifdef L_query_module# ifdef __NR_query_module _syscall5(int, query_module, const char *, name, int, which, void *, buf, size_t, bufsize, size_t*, ret);# else int query_module(const char * name, int which, void * buf, size_t bufsize, size_t* ret) { __set_errno(ENOSYS); return -1; }# endif #endif //#define __NR_poll 168#if defined(L_poll) && defined(__NR_poll) /* uClinux 2.0 doesn't have poll */#include <sys/poll.h>_syscall3(int, poll, struct pollfd *, fds, unsigned long int, nfds, int, timeout);#endif//#define __NR_nfsservctl 169//nfsservctl EXTRA nfsservctl i:ipp nfsservctl//#define __NR_setresgid 170#ifdef __NR_setresgid#ifdef L___syscall_setresgid#define __NR___syscall_setresgid __NR_setresgidstatic inline_syscall3(int, __syscall_setresgid, __kernel_gid_t, rgid, __kernel_gid_t, egid, __kernel_gid_t, sgid);int setresgid(gid_t rgid, gid_t egid, gid_t sgid){ return(__syscall_setresgid(rgid, egid, sgid));}#endif#endif//#define __NR_getresgid 171#ifdef __NR_getresgid#ifdef L___syscall_getresgid#define __NR___syscall_getresgid __NR_getresgidstatic inline_syscall3(int, __syscall_getresgid, __kernel_gid_t *, egid, __kernel_gid_t *, rgid, __kernel_gid_t *, sgid);int getresgid(gid_t *rgid, gid_t *egid, gid_t *sgid){ int result; __kernel_gid_t k_rgid, k_egid, k_sgid; result = __syscall_getresgid(&k_rgid, &k_egid, &k_sgid); if (result == 0) { *rgid = (gid_t) k_rgid; *egid = (gid_t) k_egid; *sgid = (gid_t) k_sgid; } return result;}#endif#endif//#define __NR_prctl 172//#define __NR_rt_sigreturn 173//#define __NR_rt_sigaction 174#ifdef __NR_rt_sigaction#define __NR___syscall_rt_sigaction __NR_rt_sigaction#ifdef L___syscall_rt_sigaction#include <signal.h>#undef sigaction_syscall4(int, __syscall_rt_sigaction, int, signum, const struct sigaction *, act, struct sigaction *, oldact, size_t, size); #endif#endif//#define __NR_rt_sigprocmask 175#ifdef __NR_rt_sigprocmask#define __NR___rt_sigprocmask __NR_rt_sigprocmask#ifdef L___rt_sigprocmask#include <signal.h>#undef sigprocmask_syscall4(int, __rt_sigprocmask, int, how, const sigset_t *, set, sigset_t *, oldset, size_t, size);int sigprocmask(int how, const sigset_t *set, sigset_t *oldset) { return __rt_sigprocmask(how, set, oldset, _NSIG/8);}#endif#endif//#define __NR_rt_sigpending 176#ifdef __NR_rt_sigpending#define __NR___rt_sigpending __NR_rt_sigpending#ifdef L___rt_sigpending#include <signal.h>#undef sigpending_syscall2(int, __rt_sigpending, sigset_t *, set, size_t, size);int sigpending(sigset_t *set) { return __rt_sigpending(set, _NSIG/8);}#endif#endif//#define __NR_rt_sigtimedwait 177#ifdef L___rt_sigtimedwait#include <signal.h>#define __need_NULL#include <stddef.h>#ifdef __NR_rt_sigtimedwait#define __NR___rt_sigtimedwait __NR_rt_sigtimedwait_syscall4(int, __rt_sigtimedwait, const sigset_t *, set, siginfo_t *, info, const struct timespec *, timeout, size_t, setsize);int sigwaitinfo(const sigset_t *set, siginfo_t *info){ return __rt_sigtimedwait (set, info, NULL, _NSIG/8);}int sigtimedwait (const sigset_t *set, siginfo_t *info, const struct timespec *timeout){ return __rt_sigtimedwait (set, info, timeout, _NSIG/8);}#elseint sigwaitinfo(const sigset_t *set, siginfo_t *info){ if (set==NULL) __set_errno (EINVAL); else __set_errno (ENOSYS); return -1;}int sigtimedwait (const sigset_t *set, siginfo_t *info, const struct timespec *timeout){ if (set==NULL) __set_errno (EINVAL); else __set_errno (ENOSYS); return -1;}#endif#endif//#define __NR_rt_sigqueueinfo 178//#define __NR_rt_sigsuspend 179#ifdef __NR_rt_sigsuspend#define __NR___rt_sigsuspend __NR_rt_sigsuspend#ifdef L___rt_sigsuspend#include <signal.h>#undef _sigsuspend_syscall2(int, __rt_sigsuspend, const sigset_t *, mask, size_t, size);int sigsuspend (const sigset_t *mask){ return __rt_sigsuspend(mask, _NSIG/8);}#endif#endif//#define __NR_pread 180// See pread_write.c//#define __NR_pwrite 181// See pread_write.c//#define __NR_chown 182#ifdef L___syscall_chown#include <unistd.h>#define __NR___syscall_chown __NR_chownstatic inline_syscall3(int, __syscall_chown, const char *, path, __kernel_uid_t, owner, __kernel_gid_t, group);int chown(const char * path, uid_t owner, gid_t group){ return(__syscall_chown(path, owner, group));}#endif//#define __NR_getcwd 183// See getcwd.c in this directory//#define __NR_capget 184#ifdef L_capget# ifdef __NR_capget _syscall2(int, capget, void*, header, void*, data);# else int capget(void* header, void* data) { __set_errno(ENOSYS); return -1; }# endif#endif//#define __NR_capset 185#ifdef L_capset# ifdef __NR_capset _syscall2(int, capset, void*, header, const void*, data);# else int capset(void* header, const void* data) { __set_errno(ENOSYS); return -1; }# endif#endif//#define __NR_sigaltstack 186#ifdef __NR_sigaltstack#ifdef L_sigaltstack#include <signal.h>_syscall2(int, sigaltstack, const struct sigaltstack *, ss, struct sigaltstack *, oss);#endif#endif//#define __NR_sendfile 187#ifdef __NR_sendfile#ifdef L_sendfile#include <unistd.h>#include <sys/sendfile.h>_syscall4(ssize_t,sendfile, int, out_fd, int, in_fd, __off_t *, offset, size_t, count);#endif#endif//#define __NR_getpmsg 188//#define __NR_putpmsg 189//#define __NR_vfork 190//See sysdeps/linux/<arch>vfork.[cS] for architecture specific implementation...//#define __NR_ugetrlimit 191 /* SuS compliant getrlimit */#ifdef L___ugetrlimit#ifdef __NR_ugetrlimit#define __NR___ugetrlimit __NR_ugetrlimit#include <unistd.h>#include <sys/resource.h>_syscall2(int, __ugetrlimit, enum __rlimit_resource, resource, struct rlimit *, rlim);int getrlimit (__rlimit_resource_t resource, struct rlimit *rlimits){ return(__ugetrlimit(resource, rlimits));}#endif /* __NR_ugetrlimit */#endif//#define __NR_mmap2 192//#define __NR_truncate64 193//See libc/sysdeps/linux/common/truncate64.c//#define __NR_ftruncate64 194//See libc/sysdeps/linux/common/ftruncate64.c//#define __NR_stat64 195#ifdef L___syscall_stat64#if defined __NR_stat64 && defined __UCLIBC_HAS_LFS__#define __NR___syscall_stat64 __NR_stat64#include <unistd.h>#include <sys/stat.h>#include <bits/kernel_stat.h>#include "xstatconv.h"_syscall2(int, __syscall_stat64, const char *, file_name, struct kernel_stat64 *, buf);int stat64(const char * file_name, struct stat64 * buf){ int result; struct kernel_stat64 kbuf; result = __syscall_stat64(file_name, &kbuf); if (result == 0) { __xstat64_conv(&kbuf, buf); } return result;}#endif /* __UCLIBC_HAS_LFS__ */#endif//#define __NR_lstat64 196#ifdef L___syscall_lstat64#if defined __NR_lstat64 && defined __UCLIBC_HAS_LFS__#define __NR___syscall_lstat64 __NR_lstat64#include <unistd.h>#include <sys/stat.h>#include <bits/kernel_stat.h>#include "xstatconv.h"_syscall2(int, __syscall_lstat64, const char *, file_name, struct kernel_stat64 *, buf);int lstat64(const char * file_name, struct stat64 * buf){ int result; struct kernel_stat64 kbuf; result = __syscall_lstat64(file_name, &kbuf); if (result == 0) { __xstat64_conv(&kbuf, buf); } return result;}#endif /* __UCLIBC_HAS_LFS__ */#endif//#define __NR_fstat64 197#ifdef L___syscall_fstat64#if defined __NR_fstat64 && defined __UCLIBC_HAS_LFS__#define __NR___syscall_fstat64 __NR_fstat64#include <unistd.h>#include <sys/stat.h>#include <bits/kernel_stat.h>#include "xstatconv.h"_syscall2(int, __syscall_fstat64, int, filedes, struct kernel_stat64 *, buf);int fstat64(int fd, struct stat64 * buf){ int result; struct kernel_stat64 kbuf; result = __syscall_fstat64(fd, &kbuf); if (result == 0) { __xstat64_conv(&kbuf, buf); } return result;}#endif /* __UCLIBC_HAS_LFS__ */#endif//#define __NR_lchown32 198//#define __NR_getuid32 199//#define __NR_getgid32 200//#define __NR_geteuid32 201//#define __NR_getegid32 202//#define __NR_setreuid32 203//#define __NR_setregid32 204//#define __NR_getgroups32 205//#define __NR_setgroups32 206//#define __NR_fchown32 207//#define __NR_setresuid32 208//#define __NR_getresuid32 209//#define __NR_setresgid32 210//#define __NR_getresgid32 211//#define __NR_chown32 212//#define __NR_setuid32 213//#define __NR_setgid32 214//#define __NR_setfsuid32 215//#define __NR_setfsgid32 216//#define __NR_pivot_root 217#ifdef __NR_pivot_root#ifdef L_pivot_root_syscall2(int, pivot_root, const char *, new_root, const char *, put_old);#endif#endif//#define __NR_mincore 218//#define __NR_madvise 219//#define __NR_madvise1 219 /* delete when C lib stub is removed *///#define __NR_getdents64 220// See getdents64.c//#define __NR_fcntl64 221#ifdef L__fcntl64#ifdef __UCLIBC_HAS_LFS__#include <stdarg.h>#include <fcntl.h>#ifdef __NR_fcntl64#define __NR__fcntl64 __NR_fcntl64extern int _fcntl64(int fd, int cmd, long arg);_syscall3(int, _fcntl64, int, fd, int, cmd, long, arg);int fcntl64(int fd, int command, ...){ long arg; va_list list; va_start(list, command); arg = va_arg(list, long); va_end(list); return _fcntl64(fd, command, arg);}#elseextern int _fcntl(int fd, int cmd, long arg);int fcntl64(int fd, int command, ...){ long arg; va_list list; va_start(list, command); arg = va_arg(list, long); va_end(list); return _fcntl(fd, command, arg);}#endif#endif#endif//#define __NR_security 223 /* syscall for security modules *///#define __NR_gettid 224//#define __NR_readahead 225
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -