⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 syscalls.c

📁 linux下用PCMCIA无线网卡虚拟无线AP的程序源码
💻 C
📖 第 1 页 / 共 2 页
字号:
//#define __NR_reboot           88#ifdef L__reboot#define __NR__reboot __NR_reboot#ifdef __STR_NR_reboot#define __STR_NR__reboot __STR_NR_reboot#endifextern int _reboot(int magic, int magic2, int flag);_syscall3(int, _reboot, int, magic, int, magic2, int, flag);int reboot(int flag){	return (_reboot((int) 0xfee1dead, 672274793, flag));}#endif//#define __NR_readdir          89//#define __NR_mmap             90#ifdef L_mmap#define __NR__mmap __NR_mmap#ifdef __STR_NR_mmap#define __STR_NR__mmap __STR_NR_mmap#endif#include <unistd.h>#include <sys/mman.h>#if __UCLIBC_OLD_STYLE_MMAP__extern __ptr_t _mmap(unsigned long *buffer);_syscall1(__ptr_t, _mmap, unsigned long *, buffer);__ptr_t mmap(__ptr_t addr, size_t len, int prot,			 int flags, int fd, __off_t offset){	unsigned long buffer[6];	buffer[0] = (unsigned long) addr;	buffer[1] = (unsigned long) len;	buffer[2] = (unsigned long) prot;	buffer[3] = (unsigned long) flags;	buffer[4] = (unsigned long) fd;	buffer[5] = (unsigned long) offset;	return (__ptr_t) _mmap(buffer);}#else /* !__UCLIBC_OLD_STYLE_MMAP__ */_syscall6(__ptr_t, mmap,	  __ptr_t, addr, size_t, len, int, prot,	  int, flags, int, fd, __off_t, offset);#endif /* __UCLIBC_OLD_STYLE_MMAP__ */#endif//#define __NR_munmap           91#ifdef L_munmap#include <unistd.h>#include <sys/mman.h>_syscall2(int, munmap, void *, start, size_t, length);#endif//#define __NR_truncate         92#ifdef L_truncate#include <unistd.h>_syscall2(int, truncate, const char *, path, off_t, length);#endif//#define __NR_ftruncate        93#ifdef L_ftruncate#include <unistd.h>_syscall2(int, ftruncate, int, fd, off_t, length);#endif//#define __NR_fchmod           94#ifdef L_fchmod#include <sys/stat.h>_syscall2(int, fchmod, int, fildes, mode_t, mode);#endif//#define __NR_fchown           95#ifdef L_fchown#include <unistd.h>_syscall3(int, fchown, int, fd, uid_t, owner, gid_t, group);#endif//#define __NR_getpriority      96#ifdef L_getpriority#include <sys/resource.h>_syscall2(int, getpriority, __priority_which_t, which, id_t, who);#endif//#define __NR_setpriority      97#ifdef L_setpriority#include <sys/resource.h>_syscall3(int, setpriority, __priority_which_t, which, id_t, who, int, prio);#endif//#define __NR_profil           98//#define __NR_statfs           99#ifdef L_statfs#include <sys/vfs.h>_syscall2(int, statfs, const char *, path, struct statfs *, buf);#endif//#define __NR_fstatfs          100#ifdef L_fstatfs#include <sys/vfs.h>_syscall2(int, fstatfs, int, fd, struct statfs *, buf);#endif//#define __NR_ioperm           101#ifdef L_ioperm#include <sys/io.h>#	if defined __UCLIBC_HAS_MMU__ && defined __NR_ioperm		_syscall3(int, ioperm, unsigned long, from, unsigned long, num, int, turn_on);#	else		int ioperm(unsigned long from, unsigned long num, int turn_on)		{			__set_errno(ENOSYS);			return -1;		}#	endif#endif//#define __NR_socketcall       102#ifdef L_socketcall_syscall2(int, socketcall, int, call, unsigned long *, args);#endif//#define __NR_syslog           103#ifdef L__syslog#include <unistd.h>#define __NR__syslog		__NR_syslog#ifdef __STR_NR_syslog#define __STR_NR__syslog	__STR_NR_syslog#endifextern int _syslog(int type, char *buf, int len);_syscall3(int, _syslog, int, type, char *, buf, int, len);int klogctl(int type, char *buf, int len){	return (_syslog(type, buf, len));}#endif//#define __NR_setitimer        104#ifdef L_setitimer#include <sys/time.h>_syscall3(int, setitimer, __itimer_which_t, which,		  const struct itimerval *, new, struct itimerval *, old);#endif//#define __NR_getitimer        105#ifdef L_getitimer#include <sys/time.h>_syscall2(int, getitimer, __itimer_which_t, which, struct itimerval *, value);#endif//#define __NR_stat             106#ifdef L___stat#include <unistd.h>#include "statfix.h"#define __NR___stat	__NR_stat#ifdef __STR_NR_stat#define __STR_NR___stat	__STR_NR_stat#endifextern int __stat(const char *file_name, struct kernel_stat *buf);_syscall2(int, __stat, const char *, file_name, struct kernel_stat *, buf);int __xstat(int version, const char * file_name, struct libc_stat * cstat){	struct kernel_stat kstat;	int result = __stat(file_name, &kstat);	if (result == 0) { 		statfix(cstat, &kstat);	}	return result;}int stat(const char *file_name, struct libc_stat *buf){	return(__xstat(0, file_name, buf));}#endif//#define __NR_lstat            107#ifdef L___lstat#include <unistd.h>#include "statfix.h"#define __NR___lstat	__NR_lstat#ifdef __STR_NR_lstat#define __STR_NR___lstat	__STR_NR_lstat#endifextern int __lstat(const char *file_name, struct kernel_stat *buf);_syscall2(int, __lstat, const char *, file_name, struct kernel_stat *, buf);int __lxstat(int version, const char * file_name, struct libc_stat * cstat){	struct kernel_stat kstat;	int result = __lstat(file_name, &kstat);	if (result == 0) { 		statfix(cstat, &kstat);	}	return result;}int lstat(const char *file_name, struct libc_stat *buf){	return(__lxstat(0, file_name, buf));}#endif//#define __NR_fstat            108#ifdef L___fstat#include <unistd.h>#include "statfix.h"#define __NR___fstat	__NR_fstat#ifdef __STR_NR_fstat#define __STR_NR___fstat	__STR_NR_fstat#endifextern int __fstat(int filedes, struct kernel_stat *buf);_syscall2(int, __fstat, int, filedes, struct kernel_stat *, buf);int __fxstat(int version, int fd, struct libc_stat * cstat){	struct kernel_stat kstat;	int result = __fstat(fd, &kstat);	if (result == 0) { 		statfix(cstat, &kstat);	}	return result;}int fstat(int filedes, struct libc_stat *buf){	return(__fxstat(0, filedes, buf));}#endif//#define __NR_olduname         109//#define __NR_iopl             110#ifdef L_iopl#include <sys/io.h>#	if defined __UCLIBC_HAS_MMU__ && defined __NR_iopl		_syscall1(int, iopl, int, level);#	else		int iopl(int level)		{			__set_errno(ENOSYS);			return -1;		}#	endif#endif//#define __NR_vhangup          111#ifdef L_vhangup#include <unistd.h>_syscall0(int, vhangup);#endif//#define __NR_idle             112//int idle(void);//#define __NR_vm86old          113//#define __NR_wait4            114#ifdef L_wait4_syscall4(int, wait4, pid_t, pid, int *, status, int, opts, void *, rusage);#endif//#define __NR_swapoff          115#ifdef L_swapoff#include <sys/swap.h>_syscall1(int, swapoff, const char *, path);#endif//#define __NR_sysinfo          116#ifdef L_sysinfo#include <sys/sysinfo.h>_syscall1(int, sysinfo, struct sysinfo *, info);#endif//#define __NR_ipc              117#ifdef L___ipc#define __NR___ipc __NR_ipc#ifdef __STR_NR_ipc#define __STR_NR___ipc __STR_NR_ipc#endif_syscall5(int, __ipc, unsigned int, call, int, first, int, second, int, third, void *, ptr);#endif//#define __NR_fsync            118#ifdef L_fsync#include <unistd.h>_syscall1(int, fsync, int, fd);#endif//#define __NR_sigreturn        119//int sigreturn(unsigned long __unused);//#define __NR_clone            120//See architecture specific implementation...//#define __NR_setdomainname    121#ifdef L_setdomainname#include <unistd.h>_syscall2(int, setdomainname, const char *, name, size_t, len);#endif//#define __NR_uname            122#ifdef L_uname#include <sys/utsname.h>_syscall1(int, uname, struct utsname *, buf);#endif//#define __NR_modify_ldt       123//#define __NR_adjtimex         124#ifdef L_adjtimex#include <sys/timex.h>_syscall1(int, adjtimex, struct timex *, buf);#endif//#define __NR_mprotect         125#ifdef L_mprotect#include <sys/mman.h>_syscall3(int, mprotect, void *, addr, size_t, len, int, prot);#endif//#define __NR_sigprocmask      126#ifdef L_sigprocmask#include <signal.h>#undef sigprocmask_syscall3(int, sigprocmask, int, how, const sigset_t *, set, sigset_t *,		  oldset);#endif//#define __NR_create_module    127//See sysdeps/linux/commom/create_module.c//#define __NR_init_module      128#ifdef L_init_module/* This may have 5 arguments (for old 2.0 kernels) or 2 arguments * (for 2.2 and 2.4 kernels).  Use the greatest common denominator, * and let the kernel cope with whatever it gets.  It's good at that. */_syscall5(int, init_module, void *, first, void *, second, void *, third, 			void *, fourth, void *, fifth);#endif//#define __NR_delete_module    129#ifdef L_delete_module#	ifdef __NR_delete_module		_syscall1(int, delete_module, const char *, name);#	else		int delete_module(const char * name)		{			__set_errno(ENOSYS);			return -1;		}#	endif#endif//#define __NR_get_kernel_syms  130//#define __NR_quotactl         131//#define __NR_getpgid          132#ifdef L_getpgid_syscall1(pid_t, getpgid, pid_t, pid);#endif//#define __NR_fchdir           133#ifdef L_fchdir#include <unistd.h>_syscall1(int, fchdir, int, fd);#endif//#define __NR_bdflush          134#ifdef L_bdflush#include <sys/kdaemon.h>_syscall2(int, bdflush, int, __func, long int, __data);#endif//#define __NR_sysfs            135//#define __NR_personality      136//#define __NR_afs_syscall      137//#define __NR_setfsuid         138//#define __NR_setfsgid         139//#define __NR__llseek          140#ifdef L__llseekextern int _llseek(int fd, off_t hoff, off_t loff, loff_t *res, int whence);_syscall5(int, _llseek, int, fd, off_t, hoff, off_t, loff, loff_t *, res,		  int, whence);loff_t llseek(int fd, loff_t offset, int whence){	int ret;	loff_t result;	ret = _llseek(fd, (off_t) (offset >> 32),				  (off_t) (offset & 0xffffffff), &result, whence);	return ret ? (loff_t) ret : result;}#endif//#define __NR_getdents         141#ifdef L_getdents#include <unistd.h>#include <dirent.h>_syscall3(int, getdents, int, fd, char *, dirp, size_t, count);#endif//#define __NR__newselect       142#ifdef L__newselect#include <unistd.h>extern int _newselect(int n, fd_set *readfds, fd_set *writefds,					  fd_set *exceptfds, struct timeval *timeout);_syscall5(int, _newselect, int, n, fd_set *, readfds, fd_set *, writefds,		  fd_set *, exceptfds, struct timeval *, timeout);int select(int n, fd_set * readfds, fd_set * writefds, fd_set * exceptfds,		   struct timeval *timeout){	return (_newselect(n, readfds, writefds, exceptfds, timeout));}#endif//#define __NR_flock            143#ifdef L_flock#include <sys/file.h>_syscall2(int,flock,int,fd, int,operation);#endif//#define __NR_msync            144//#define __NR_readv            145#ifdef L_readv#include <sys/uio.h>_syscall3(ssize_t, readv, int, filedes, const struct iovec *, vector, int,		  count);#endif//#define __NR_writev           146#ifdef L_writev#include <sys/uio.h>_syscall3(ssize_t, writev, int, filedes, const struct iovec *, vector, int,		  count);#endif//#define __NR_getsid           147#ifdef L_getsid#include <unistd.h>_syscall1(pid_t, getsid, pid_t, pid);#endif//#define __NR_fdatasync        148//#define __NR__sysctl          149//#define __NR_mlock            150#ifdef L_mlock#include <sys/mman.h>#	if defined __UCLIBC_HAS_MMU__ && defined __NR_mlock		_syscall2(int, mlock, const void *, addr, size_t, len);#	endif	#endif	//#define __NR_munlock          151#ifdef L_munlock#include <sys/mman.h>#	if defined __UCLIBC_HAS_MMU__ && defined __NR_munlock		_syscall2(int, munlock, const void *, addr, size_t, len);#	endif	#endif	//#define __NR_mlockall         152#ifdef L_mlockall#include <sys/mman.h>#	if defined __UCLIBC_HAS_MMU__ && defined __NR_mlockall		_syscall1(int, mlockall, int, flags);#	endif	#endif	//#define __NR_munlockall       153#ifdef L_munlockall#include <sys/mman.h>#	if defined __UCLIBC_HAS_MMU__ && defined L_munlockall		_syscall0(int, munlockall);#	endif	#endif	//#define __NR_sched_setparam   154//#define __NR_sched_getparam   155//#define __NR_sched_setscheduler       156//#define __NR_sched_getscheduler       157//#define __NR_sched_yield              158//#define __NR_sched_get_priority_max   159//#define __NR_sched_get_priority_min   160//#define __NR_sched_rr_get_interval    161//#define __NR_nanosleep                162#ifdef L_nanosleep#include <time.h>_syscall2(int, nanosleep, const struct timespec *, req, struct timespec *, rem);#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//#define __NR_getresuid                165//#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//#define __NR_setresgid                170//#define __NR_getresgid                171//#define __NR_prctl                    172//#define __NR_rt_sigreturn             173//#define __NR_rt_sigaction             174//#define __NR_rt_sigprocmask           175//#define __NR_rt_sigpending            176//#define __NR_rt_sigtimedwait          177//#define __NR_rt_sigqueueinfo          178//#define __NR_rt_sigsuspend            179//#define __NR_pread                    180//#define __NR_pwrite                   181//#define __NR_chown                    182#ifdef L_chown#include <unistd.h>_syscall3(int, chown, const char *, path, uid_t, owner, gid_t, group);#endif//#define __NR_getcwd                   183// See unistd/getcwd.c -- we don't use this syscall, even when it is available...//#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//#define __NR_sendfile                 187//#define __NR_getpmsg                  188//#define __NR_putpmsg                  189//#define __NR_vfork                    190//See sysdeps/linux/<arch>vfork.[cS] for architecture specific implementation...

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -