sys_ni.c 6.94 KB
Newer Older
Linus Torvalds's avatar
Linus Torvalds committed
1 2 3 4 5 6

#include <linux/linkage.h>
#include <linux/errno.h>

#include <asm/unistd.h>

7 8 9 10
/*  we can't #include <linux/syscalls.h> here,
    but tell gcc to not warn with -Wmissing-prototypes  */
asmlinkage long sys_ni_syscall(void);

Linus Torvalds's avatar
Linus Torvalds committed
11 12 13 14 15 16 17 18 19
/*
 * Non-implemented system calls get redirected here.
 */
asmlinkage long sys_ni_syscall(void)
{
	return -ENOSYS;
}

cond_syscall(sys_quotactl);
20
cond_syscall(sys32_quotactl);
Linus Torvalds's avatar
Linus Torvalds committed
21 22
cond_syscall(sys_acct);
cond_syscall(sys_lookup_dcookie);
Al Viro's avatar
Al Viro committed
23
cond_syscall(compat_sys_lookup_dcookie);
Linus Torvalds's avatar
Linus Torvalds committed
24 25
cond_syscall(sys_swapon);
cond_syscall(sys_swapoff);
26 27
cond_syscall(sys_kexec_load);
cond_syscall(compat_sys_kexec_load);
28
cond_syscall(sys_kexec_file_load);
Linus Torvalds's avatar
Linus Torvalds committed
29
cond_syscall(sys_init_module);
30
cond_syscall(sys_finit_module);
Linus Torvalds's avatar
Linus Torvalds committed
31 32 33 34 35
cond_syscall(sys_delete_module);
cond_syscall(sys_socketpair);
cond_syscall(sys_bind);
cond_syscall(sys_listen);
cond_syscall(sys_accept);
Ulrich Drepper's avatar
Ulrich Drepper committed
36
cond_syscall(sys_accept4);
Linus Torvalds's avatar
Linus Torvalds committed
37 38 39 40 41 42 43 44 45
cond_syscall(sys_connect);
cond_syscall(sys_getsockname);
cond_syscall(sys_getpeername);
cond_syscall(sys_sendto);
cond_syscall(sys_send);
cond_syscall(sys_recvfrom);
cond_syscall(sys_recv);
cond_syscall(sys_socket);
cond_syscall(sys_setsockopt);
46
cond_syscall(compat_sys_setsockopt);
Linus Torvalds's avatar
Linus Torvalds committed
47
cond_syscall(sys_getsockopt);
48
cond_syscall(compat_sys_getsockopt);
Linus Torvalds's avatar
Linus Torvalds committed
49 50
cond_syscall(sys_shutdown);
cond_syscall(sys_sendmsg);
51
cond_syscall(sys_sendmmsg);
52
cond_syscall(compat_sys_sendmsg);
53
cond_syscall(compat_sys_sendmmsg);
Linus Torvalds's avatar
Linus Torvalds committed
54
cond_syscall(sys_recvmsg);
55
cond_syscall(sys_recvmmsg);
56
cond_syscall(compat_sys_recvmsg);
57
cond_syscall(compat_sys_recv);
58
cond_syscall(compat_sys_recvfrom);
59
cond_syscall(compat_sys_recvmmsg);
Linus Torvalds's avatar
Linus Torvalds committed
60 61 62
cond_syscall(sys_socketcall);
cond_syscall(sys_futex);
cond_syscall(compat_sys_futex);
63 64 65 66
cond_syscall(sys_set_robust_list);
cond_syscall(compat_sys_set_robust_list);
cond_syscall(sys_get_robust_list);
cond_syscall(compat_sys_get_robust_list);
Linus Torvalds's avatar
Linus Torvalds committed
67
cond_syscall(sys_epoll_create);
68
cond_syscall(sys_epoll_create1);
Linus Torvalds's avatar
Linus Torvalds committed
69 70
cond_syscall(sys_epoll_ctl);
cond_syscall(sys_epoll_wait);
71
cond_syscall(sys_epoll_pwait);
72
cond_syscall(compat_sys_epoll_pwait);
Linus Torvalds's avatar
Linus Torvalds committed
73 74 75
cond_syscall(sys_semget);
cond_syscall(sys_semop);
cond_syscall(sys_semtimedop);
76
cond_syscall(compat_sys_semtimedop);
Linus Torvalds's avatar
Linus Torvalds committed
77
cond_syscall(sys_semctl);
78
cond_syscall(compat_sys_semctl);
Linus Torvalds's avatar
Linus Torvalds committed
79 80
cond_syscall(sys_msgget);
cond_syscall(sys_msgsnd);
81
cond_syscall(compat_sys_msgsnd);
Linus Torvalds's avatar
Linus Torvalds committed
82
cond_syscall(sys_msgrcv);
83
cond_syscall(compat_sys_msgrcv);
Linus Torvalds's avatar
Linus Torvalds committed
84
cond_syscall(sys_msgctl);
85
cond_syscall(compat_sys_msgctl);
Linus Torvalds's avatar
Linus Torvalds committed
86
cond_syscall(sys_shmget);
87
cond_syscall(sys_shmat);
88
cond_syscall(compat_sys_shmat);
Linus Torvalds's avatar
Linus Torvalds committed
89 90
cond_syscall(sys_shmdt);
cond_syscall(sys_shmctl);
91
cond_syscall(compat_sys_shmctl);
Linus Torvalds's avatar
Linus Torvalds committed
92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113
cond_syscall(sys_mq_open);
cond_syscall(sys_mq_unlink);
cond_syscall(sys_mq_timedsend);
cond_syscall(sys_mq_timedreceive);
cond_syscall(sys_mq_notify);
cond_syscall(sys_mq_getsetattr);
cond_syscall(compat_sys_mq_open);
cond_syscall(compat_sys_mq_timedsend);
cond_syscall(compat_sys_mq_timedreceive);
cond_syscall(compat_sys_mq_notify);
cond_syscall(compat_sys_mq_getsetattr);
cond_syscall(sys_mbind);
cond_syscall(sys_get_mempolicy);
cond_syscall(sys_set_mempolicy);
cond_syscall(compat_sys_mbind);
cond_syscall(compat_sys_get_mempolicy);
cond_syscall(compat_sys_set_mempolicy);
cond_syscall(sys_add_key);
cond_syscall(sys_request_key);
cond_syscall(sys_keyctl);
cond_syscall(compat_sys_keyctl);
cond_syscall(compat_sys_socketcall);
Robert Love's avatar
Robert Love committed
114
cond_syscall(sys_inotify_init);
Ulrich Drepper's avatar
Ulrich Drepper committed
115
cond_syscall(sys_inotify_init1);
Robert Love's avatar
Robert Love committed
116 117
cond_syscall(sys_inotify_add_watch);
cond_syscall(sys_inotify_rm_watch);
118
cond_syscall(sys_migrate_pages);
119
cond_syscall(sys_move_pages);
120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138
cond_syscall(sys_chown16);
cond_syscall(sys_fchown16);
cond_syscall(sys_getegid16);
cond_syscall(sys_geteuid16);
cond_syscall(sys_getgid16);
cond_syscall(sys_getgroups16);
cond_syscall(sys_getresgid16);
cond_syscall(sys_getresuid16);
cond_syscall(sys_getuid16);
cond_syscall(sys_lchown16);
cond_syscall(sys_setfsgid16);
cond_syscall(sys_setfsuid16);
cond_syscall(sys_setgid16);
cond_syscall(sys_setgroups16);
cond_syscall(sys_setregid16);
cond_syscall(sys_setresgid16);
cond_syscall(sys_setresuid16);
cond_syscall(sys_setreuid16);
cond_syscall(sys_setuid16);
139 140
cond_syscall(sys_sgetmask);
cond_syscall(sys_ssetmask);
141 142
cond_syscall(sys_vm86old);
cond_syscall(sys_vm86);
143
cond_syscall(sys_modify_ldt);
144
cond_syscall(sys_ipc);
145 146
cond_syscall(compat_sys_ipc);
cond_syscall(compat_sys_sysctl);
147
cond_syscall(sys_flock);
Thomas Petazzoni's avatar
Thomas Petazzoni committed
148 149 150 151 152
cond_syscall(sys_io_setup);
cond_syscall(sys_io_destroy);
cond_syscall(sys_io_submit);
cond_syscall(sys_io_cancel);
cond_syscall(sys_io_getevents);
153
cond_syscall(sys_sysfs);
154
cond_syscall(sys_syslog);
Christopher Yeoh's avatar
Christopher Yeoh committed
155 156 157 158
cond_syscall(sys_process_vm_readv);
cond_syscall(sys_process_vm_writev);
cond_syscall(compat_sys_process_vm_readv);
cond_syscall(compat_sys_process_vm_writev);
159
cond_syscall(sys_uselib);
160 161 162
cond_syscall(sys_fadvise64);
cond_syscall(sys_fadvise64_64);
cond_syscall(sys_madvise);
163 164 165 166 167 168 169 170 171 172 173 174 175 176
cond_syscall(sys_setuid);
cond_syscall(sys_setregid);
cond_syscall(sys_setgid);
cond_syscall(sys_setreuid);
cond_syscall(sys_setresuid);
cond_syscall(sys_getresuid);
cond_syscall(sys_setresgid);
cond_syscall(sys_getresgid);
cond_syscall(sys_setgroups);
cond_syscall(sys_getgroups);
cond_syscall(sys_setfsuid);
cond_syscall(sys_setfsgid);
cond_syscall(sys_capget);
cond_syscall(sys_capset);
Linus Torvalds's avatar
Linus Torvalds committed
177 178 179 180 181

/* arch-specific weak syscall entries */
cond_syscall(sys_pciconfig_read);
cond_syscall(sys_pciconfig_write);
cond_syscall(sys_pciconfig_iobase);
Al Viro's avatar
Al Viro committed
182
cond_syscall(compat_sys_s390_ipc);
Linus Torvalds's avatar
Linus Torvalds committed
183
cond_syscall(ppc_rtas);
184 185
cond_syscall(sys_spu_run);
cond_syscall(sys_spu_create);
186
cond_syscall(sys_subpage_prot);
187 188
cond_syscall(sys_s390_pci_mmio_read);
cond_syscall(sys_s390_pci_mmio_write);
189 190 191 192 193 194 195 196 197 198 199 200

/* mmu depending weak syscall entries */
cond_syscall(sys_mprotect);
cond_syscall(sys_msync);
cond_syscall(sys_mlock);
cond_syscall(sys_munlock);
cond_syscall(sys_mlockall);
cond_syscall(sys_munlockall);
cond_syscall(sys_mincore);
cond_syscall(sys_madvise);
cond_syscall(sys_mremap);
cond_syscall(sys_remap_file_pages);
201
cond_syscall(compat_sys_move_pages);
202
cond_syscall(compat_sys_migrate_pages);
203 204 205 206 207

/* block-layer dependent */
cond_syscall(sys_bdflush);
cond_syscall(sys_ioprio_set);
cond_syscall(sys_ioprio_get);
208 209 210

/* New file descriptors */
cond_syscall(sys_signalfd);
Ulrich Drepper's avatar
Ulrich Drepper committed
211
cond_syscall(sys_signalfd4);
212
cond_syscall(compat_sys_signalfd);
213
cond_syscall(compat_sys_signalfd4);
Davide Libenzi's avatar
Davide Libenzi committed
214 215 216 217 218
cond_syscall(sys_timerfd_create);
cond_syscall(sys_timerfd_settime);
cond_syscall(sys_timerfd_gettime);
cond_syscall(compat_sys_timerfd_settime);
cond_syscall(compat_sys_timerfd_gettime);
219
cond_syscall(sys_eventfd);
Ulrich Drepper's avatar
Ulrich Drepper committed
220
cond_syscall(sys_eventfd2);
221
cond_syscall(sys_memfd_create);
222
cond_syscall(sys_userfaultfd);
223 224

/* performance counters: */
225
cond_syscall(sys_perf_event_open);
226 227 228

/* fanotify! */
cond_syscall(sys_fanotify_init);
229
cond_syscall(sys_fanotify_mark);
230
cond_syscall(compat_sys_fanotify_mark);
231 232 233

/* open by handle */
cond_syscall(sys_name_to_handle_at);
234 235
cond_syscall(sys_open_by_handle_at);
cond_syscall(compat_sys_open_by_handle_at);
236 237 238

/* compare kernel pointers */
cond_syscall(sys_kcmp);
Kees Cook's avatar
Kees Cook committed
239 240 241

/* operate on Secure Computing state */
cond_syscall(sys_seccomp);
242 243 244

/* access BPF programs and maps */
cond_syscall(sys_bpf);
245 246 247

/* execveat */
cond_syscall(sys_execveat);
248 249 250

/* membarrier */
cond_syscall(sys_membarrier);