Files
hustoj/core/judge_client/ncalls.h
2024-10-10 12:56:56 +08:00

295 lines
6.6 KiB
C

/*
* Copyright 2008 sempr <iamsempr@gmail.com>
*
* This file is part of HUSTOJ.
*
* HUSTOJ is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* HUSTOJ is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with HUSTOJ. if not, see <http://www.gnu.org/licenses/>.
*/
static char ncalls[512] = {
1, /*0, restart_syscall*/
3, /*1, exit*/
1, /*2, fork*/
0, /*3, read*/
0, /*4, write*/
3, /*5, open*/
0, /*6, close*/
0, /*7, waitpid*/
1, /*8, creat*/
1, /*9, link*/
1, /*10, unlink*/
0, /*11, execve*/
1, /*12, chdir*/
0, /*13, time*/
1, /*14, mknod*/
1, /*15, chmod*/
0, /*16, lchown*/
1, /*17, break*/
1, /*18, oldstat*/
0, /*19, lseek*/
0, /*20, getpid*/
1, /*21, mount*/
1, /*22, umount*/
0, /*23, setuid*/
0, /*24, getuid*/
0, /*25, stime*/
1, /*26, ptrace*/
0, /*27, alarm*/
1, /*28, oldfstat*/
1, /*29, pause*/
0, /*30, utime*/
1, /*31, stty*/
1, /*32, gtty*/
0, /*33, access*/
0, /*34, nice*/
1, /*35, ftime*/
1, /*36, sync*/
1, /*37, kill*/
1, /*38, rename*/
1, /*39, mkdir*/
1, /*40, rmdir*/
1, /*41, dup*/
1, /*42, pipe*/
0, /*43, times*/
1, /*44, prof*/
0, /*45, brk*/
0, /*46, setgid*/
0, /*47, getgid*/
1, /*48, signal*/
0, /*49, geteuid*/
0, /*50, getegid*/
0, /*51, acct*/
1, /*52, umount2*/
1, /*53, lock*/
0, /*54, ioctl*/
0, /*55, fcntl*/
1, /*56, mpx*/
1, /*57, setpgid*/
1, /*58, ulimit*/
1, /*59, oldolduname*/
1, /*60, umask*/
1, /*61, chroot*/
0, /*62, ustat*/
1, /*63, dup2*/
0, /*64, getppid*/
0, /*65, getpgrp*/
1, /*66, setsid*/
0, /*67, sigaction*/
0, /*68, sgetmask*/
0, /*69, ssetmask*/
0, /*70, setreuid*/
0, /*71, setregid*/
0, /*72, sigsuspend*/
0, /*73, sigpending*/
1, /*74, sethostname*/
1, /*75, setrlimit. It is safe. An unprivilleged process can not increase limit*/
0, /*76, getrlimit*/
1, /*77, getrusage*/
1, /*78, gettimeofday*/
1, /*79, settimeofday*/
0, /*80, getgroups*/
0, /*81, setgroups*/
1, /*82, select*/
1, /*83, symlink*/
1, /*84, oldlstat*/
0, /*85, readlink*/
0, /*86, uselib*/
1, /*87, swapon*/
1, /*88, reboot*/
1, /*89, readdir*/
0, /*90, mmap*/
0, /*91, munmap*/
0, /*92, truncate*/
0, /*93, ftruncate*/
1, /*94, fchmod*/
1, /*95, fchown*/
0, /*96, getpriority*/
0, /*97, setpriority*/
1, /*98, profil*/
1, /*99, statfs*/
1, /*100, fstatfs*/
0, /*101, ioperm*/
0, /*102, socketcall*/
1, /*103, syslog*/
1, /*104, setitimer*/
0, /*105, getitimer*/
0, /*106, stat*/
0, /*107, lstat*/
0, /*108, fstat*/
0, /*109, olduname*/
0, /*110, iopl*/
0, /*111, vhangup*/
1, /*112, idle*/
0, /*113, vm86old*/
1, /*114, wait4*/
1, /*115, swapoff*/
0, /*116, sysinfo*/
1, /*117, ipc*/
0, /*118, fsync*/
0, /*119, sigreturn*/
3, /*120, clone*/
0, /*121, setdomainname*/
0, /*122, uname*/
0, /*123, modify_ldt*/
0, /*124, adjtimex*/
0, /*125, mprotect*/
0, /*126, sigprocmask*/
1, /*127, create_module*/
1, /*128, init_module*/
1, /*129, delete_module*/
0, /*130, get_kernel_syms*/
0, /*131, quotactl*/
0, /*132, getpgid*/
0, /*133, fchdir*/
0, /*134, bdflush*/
0, /*135, sysfs*/
0, /*136, personality*/
1, /*137, afs_syscall*/
0, /*138, setfsuid*/
0, /*139, setfsgid*/
0, /*140, llseek*/
1, /*141, getdents*/
1, /*142, newselect*/
0, /*143, flock*/
0, /*144, msync*/
0, /*145, readv*/
0, /*146, writev*/
0, /*147, getsid*/
0, /*148, fdatasync*/
0, /*149, sysctl*/
0, /*150, mlock*/
0, /*151, munlock*/
0, /*152, mlockall*/
0, /*153, munlockall*/
0, /*154, sched_setparam*/
0, /*155, sched_getparam*/
0, /*156, sched_setscheduler*/
0, /*157, sched_getscheduler*/
0, /*158, sched_yield*/
0, /*159, sched_get_priority_max*/
0, /*160, sched_get_priority_min*/
0, /*161, sched_rr_get_interval*/
1, /*162, nanosleep*/
0, /*163, mremap*/
0, /*164, setresuid*/
0, /*165, getresuid*/
0, /*166, vm86*/
1, /*167, query_module*/
0, /*168, poll*/
0, /*169, nfsservctl*/
1, /*170, setresgid*/
0, /*171, getresgid*/
0, /*172, prctl*/
0, /*173, rt_sigreturn*/
0, /*174, rt_sigaction*/
0, /*175, rt_sigprocmask*/
0, /*176, rt_sigpending*/
0, /*177, rt_sigtimedwait*/
0, /*178, rt_sigqueueinfo*/
0, /*179, rt_sigsuspend*/
1, /*180, pread64*/
1, /*181, pwrite64*/
1, /*182, chown*/
0, /*183, getcwd*/
0, /*184, capget*/
0, /*185, capset*/
0, /*186, sigaltstack*/
1, /*187, sendfile*/
1, /*188, getpmsg*/
1, /*189, putpmsg*/
1, /*190, vfork*/
0, /*191, ugetrlimit*/
0, /*192, mmap2*/
0, /*193, truncate64*/
0, /*194, ftruncate64*/
0, /*195, stat64*/
0, /*196, lstat64*/
0, /*197, fstat64*/
1, /*198, lchown32*/
0, /*199, getuid32*/
0, /*200, getgid32*/
0, /*201, geteuid32*/
0, /*202, getegid32*/
1, /*203, setreuid32*/
1, /*204, setregid32*/
0, /*205, getgroups32*/
1, /*206, setgroups32*/
0, /*207, fchown32*/
1, /*208, setresuid32*/
0, /*209, getresuid32*/
1, /*210, setresgid32*/
0, /*211, getresgid32*/
1, /*212, chown32*/
1, /*213, setuid32*/
1, /*214, setgid32*/
1, /*215, setfsuid32*/
1, /*216, setfsgid32*/
0, /*217, pivot_root*/
0, /*218, mincore*/
0, /*219, madvise*/
1, /*220, madvise1*/
0, /*221, getdents64*/
1, /*222, fcntl64*/
1, /*223, unused*/
0, /*224, gettid*/
0, /*225, readahead*/
1, /*226, setxattr*/
1, /*227, lsetxattr*/
1, /*228, fsetxattr*/
1, /*229, getxattr*/
1, /*230, lgetxattr*/
1, /*231, fgetxattr*/
1, /*232, listxattr*/
1, /*233, llistxattr*/
1, /*234, flistxattr*/
1, /*235, removexattr*/
1, /*236, lremovexattr*/
1, /*237, fremovexattr*/
0, /*238, tkill*/
1, /*239, sendfile64*/
0, /*240, futex*/
1, /*241, sched_setaffinity*/
1, /*242, sched_getaffinity*/
0, /*243, set_thread_area*/
0, /*244, get_thread_area*/
1, /*245, io_setup*/
1, /*246, io_destroy*/
1, /*247, io_getevents*/
1, /*248, io_submit*/
1, /*249, io_cancel*/
1, /*250, fadvise64*/
1, /*251, unused*/
3, /*252, exit_group*/
1, /*253, lookup_dcookie*/
1, /*254, epoll_create*/
1, /*255, epoll_ctl*/
1, /*256, epoll_wait*/
1, /*257, remap_file_pages*/
0, /*258, set_tid_address*/
1, /*259, timer_create*/
1, /*260, timer_settime*/
1, /*261, timer_gettime*/
1, /*262, timer_getoverrun*/
1, /*263, timer_delete*/
1, /*264, clock_settime*/
1, /*265, clock_gettime*/
1, /*266, clock_getres*/
1, /*267, clock_nanosleep*/
1, /*268, statfs64*/
1, /*269, fstatfs64*/
1, /*270, tgkill*/
1, /*271, utimes*/
1, /*272, fadvise64_64*/
1, /*273, vserver*/
};