Paul Lawrence | 89fa81f | 2017-02-17 10:22:03 -0800 | [diff] [blame] | 1 | // Autogenerated file - edit at your peril!! |
| 2 | |
| 3 | #include <linux/filter.h> |
| 4 | #include <errno.h> |
| 5 | |
| 6 | #include "seccomp_bpfs.h" |
Victor Hsieh | 4f02dd5 | 2017-12-20 09:19:22 -0800 | [diff] [blame] | 7 | const sock_filter mips_system_filter[] = { |
Victor Hsieh | 1afb40c | 2018-03-30 16:48:36 +0000 | [diff] [blame] | 8 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4001, 0, 116), |
| 9 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4131, 57, 0), |
| 10 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4064, 29, 0), |
| 11 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4041, 15, 0), |
| 12 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4019, 7, 0), |
| 13 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4006, 3, 0), |
| 14 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4003, 1, 0), |
| 15 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4002, 109, 108), //exit |
| 16 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4005, 108, 107), //read|write |
| 17 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4011, 1, 0), |
| 18 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4007, 106, 105), //close |
| 19 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4013, 105, 104), //execve|chdir |
| 20 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4026, 3, 0), |
| 21 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4023, 1, 0), |
| 22 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4022, 102, 101), //lseek|getpid|mount |
| 23 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4025, 101, 100), //setuid|getuid |
| 24 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4036, 1, 0), |
| 25 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4027, 99, 98), //ptrace |
| 26 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4038, 98, 97), //sync|kill |
Josh Gao | c45b588 | 2017-06-22 16:46:19 -0700 | [diff] [blame] | 27 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4054, 7, 0), |
| 28 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4045, 3, 0), |
Victor Hsieh | 1afb40c | 2018-03-30 16:48:36 +0000 | [diff] [blame] | 29 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4043, 1, 0), |
| 30 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4042, 94, 93), //dup |
| 31 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4044, 93, 92), //times |
Josh Gao | c45b588 | 2017-06-22 16:46:19 -0700 | [diff] [blame] | 32 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4049, 1, 0), |
Victor Hsieh | 1afb40c | 2018-03-30 16:48:36 +0000 | [diff] [blame] | 33 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4048, 91, 90), //brk|setgid|getgid |
| 34 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4053, 90, 89), //geteuid|getegid|acct|umount2 |
Josh Gao | c45b588 | 2017-06-22 16:46:19 -0700 | [diff] [blame] | 35 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4060, 3, 0), |
| 36 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4057, 1, 0), |
Victor Hsieh | 1afb40c | 2018-03-30 16:48:36 +0000 | [diff] [blame] | 37 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4055, 87, 86), //ioctl |
| 38 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4058, 86, 85), //setpgid |
| 39 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4062, 85, 84), //umask|chroot |
Josh Gao | c45b588 | 2017-06-22 16:46:19 -0700 | [diff] [blame] | 40 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4094, 13, 0), |
| 41 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4085, 7, 0), |
| 42 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4070, 3, 0), |
| 43 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4066, 1, 0), |
Victor Hsieh | 1afb40c | 2018-03-30 16:48:36 +0000 | [diff] [blame] | 44 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4065, 80, 79), //getppid |
| 45 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4068, 79, 78), //setsid|sigaction |
Josh Gao | c45b588 | 2017-06-22 16:46:19 -0700 | [diff] [blame] | 46 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4074, 1, 0), |
Victor Hsieh | 1afb40c | 2018-03-30 16:48:36 +0000 | [diff] [blame] | 47 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4072, 77, 76), //setreuid|setregid |
| 48 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4082, 76, 75), //sethostname|setrlimit|getrlimit|getrusage|gettimeofday|settimeofday|getgroups|setgroups |
| 49 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4091, 3, 0), |
Josh Gao | c45b588 | 2017-06-22 16:46:19 -0700 | [diff] [blame] | 50 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4088, 1, 0), |
Victor Hsieh | 1afb40c | 2018-03-30 16:48:36 +0000 | [diff] [blame] | 51 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4086, 73, 72), //readlink |
| 52 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4089, 72, 71), //reboot |
| 53 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4093, 71, 70), //munmap|truncate |
| 54 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4118, 7, 0), |
Josh Gao | c45b588 | 2017-06-22 16:46:19 -0700 | [diff] [blame] | 55 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4114, 3, 0), |
| 56 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4103, 1, 0), |
Victor Hsieh | 1afb40c | 2018-03-30 16:48:36 +0000 | [diff] [blame] | 57 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4098, 67, 66), //fchmod|fchown|getpriority|setpriority |
| 58 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4106, 66, 65), //syslog|setitimer|getitimer |
| 59 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4116, 1, 0), |
| 60 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4115, 64, 63), //wait4 |
| 61 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4117, 63, 62), //sysinfo |
| 62 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4128, 3, 0), |
| 63 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4124, 1, 0), |
| 64 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4123, 60, 59), //fsync|sigreturn|clone|setdomainname|uname |
| 65 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4126, 59, 58), //adjtimex|mprotect |
| 66 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4130, 58, 57), //init_module|delete_module |
| 67 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4249, 29, 0), |
| 68 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4179, 15, 0), |
Chenbo Feng | 60f3ed4 | 2018-01-18 11:26:24 -0800 | [diff] [blame] | 69 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4151, 7, 0), |
Victor Hsieh | 1afb40c | 2018-03-30 16:48:36 +0000 | [diff] [blame] | 70 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4138, 3, 0), |
| 71 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4136, 1, 0), |
| 72 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4134, 52, 51), //quotactl|getpgid|fchdir |
| 73 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4137, 51, 50), //personality |
| 74 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4143, 1, 0), |
| 75 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4141, 49, 48), //setfsuid|setfsgid|_llseek |
| 76 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4148, 48, 47), //flock|msync|readv|writev|cacheflush |
Chenbo Feng | 60f3ed4 | 2018-01-18 11:26:24 -0800 | [diff] [blame] | 77 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4169, 3, 0), |
| 78 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4154, 1, 0), |
Victor Hsieh | 1afb40c | 2018-03-30 16:48:36 +0000 | [diff] [blame] | 79 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4153, 45, 44), //getsid|fdatasync |
| 80 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4168, 44, 43), //mlock|munlock|mlockall|munlockall|sched_setparam|sched_getparam|sched_setscheduler|sched_getscheduler|sched_yield|sched_get_priority_max|sched_get_priority_min|sched_rr_get_interval|nanosleep|mremap |
| 81 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4176, 1, 0), |
| 82 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4175, 42, 41), //bind|connect|getpeername|getsockname|getsockopt|listen |
| 83 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4178, 41, 40), //recvfrom|recvmsg |
| 84 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4215, 7, 0), |
| 85 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4203, 3, 0), |
Chenbo Feng | 60f3ed4 | 2018-01-18 11:26:24 -0800 | [diff] [blame] | 86 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4190, 1, 0), |
Victor Hsieh | 1afb40c | 2018-03-30 16:48:36 +0000 | [diff] [blame] | 87 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4187, 37, 36), //sendmsg|sendto|setsockopt|shutdown|socket|socketpair|setresuid|getresuid |
| 88 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4202, 36, 35), //setresgid|getresgid|prctl|rt_sigreturn|rt_sigaction|rt_sigprocmask|rt_sigpending|rt_sigtimedwait|rt_sigqueueinfo|rt_sigsuspend|pread64|pwrite64 |
Chenbo Feng | 60f3ed4 | 2018-01-18 11:26:24 -0800 | [diff] [blame] | 89 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4210, 1, 0), |
Victor Hsieh | 1afb40c | 2018-03-30 16:48:36 +0000 | [diff] [blame] | 90 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4208, 34, 33), //getcwd|capget|capset|sigaltstack|sendfile |
| 91 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4213, 33, 32), //mmap2|truncate64|ftruncate64 |
| 92 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4222, 3, 0), |
| 93 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4217, 1, 0), |
| 94 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4216, 30, 29), //fstat64 |
| 95 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4221, 29, 28), //mincore|madvise|getdents64|fcntl64 |
| 96 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4247, 28, 27), //gettid|readahead|setxattr|lsetxattr|fsetxattr|getxattr|lgetxattr|fgetxattr|listxattr|llistxattr|flistxattr|removexattr|lremovexattr|fremovexattr|tkill|sendfile64|futex|sched_setaffinity|sched_getaffinity|io_setup|io_destroy|io_getevents|io_submit|io_cancel|exit_group |
| 97 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4312, 13, 0), |
| 98 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4285, 7, 0), |
Chenbo Feng | 60f3ed4 | 2018-01-18 11:26:24 -0800 | [diff] [blame] | 99 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4278, 3, 0), |
Victor Hsieh | 1afb40c | 2018-03-30 16:48:36 +0000 | [diff] [blame] | 100 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4252, 1, 0), |
| 101 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4250, 23, 22), //epoll_ctl |
| 102 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4267, 22, 21), //set_tid_address|restart_syscall|fadvise64|statfs64|fstatfs64|timer_create|timer_settime|timer_gettime|timer_getoverrun|timer_delete|clock_settime|clock_gettime|clock_getres|clock_nanosleep|tgkill |
Chenbo Feng | 60f3ed4 | 2018-01-18 11:26:24 -0800 | [diff] [blame] | 103 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4283, 1, 0), |
Victor Hsieh | 1afb40c | 2018-03-30 16:48:36 +0000 | [diff] [blame] | 104 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4279, 20, 19), //waitid |
| 105 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4284, 19, 18), //set_thread_area |
| 106 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4293, 3, 0), |
| 107 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4288, 1, 0), |
| 108 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4287, 16, 15), //inotify_add_watch|inotify_rm_watch |
| 109 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4292, 15, 14), //openat|mkdirat|mknodat|fchownat |
| 110 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4308, 14, 13), //fstatat64|unlinkat|renameat|linkat|symlinkat|readlinkat|fchmodat|faccessat|pselect6|ppoll|unshare|splice|sync_file_range|tee|vmsplice |
| 111 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4341, 7, 0), |
| 112 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4320, 3, 0), |
| 113 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4316, 1, 0), |
| 114 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4314, 10, 9), //getcpu|epoll_pwait |
| 115 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4317, 9, 8), //utimensat |
| 116 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4338, 1, 0), |
| 117 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4336, 7, 6), //fallocate|timerfd_create|timerfd_gettime|timerfd_settime|signalfd4|eventfd2|epoll_create1|dup3|pipe2|inotify_init1|preadv|pwritev|rt_tgsigqueueinfo|perf_event_open|accept4|recvmmsg |
Chenbo Feng | 60f3ed4 | 2018-01-18 11:26:24 -0800 | [diff] [blame] | 118 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4339, 6, 5), //prlimit64 |
Josh Gao | de9262e | 2017-04-18 16:05:39 -0700 | [diff] [blame] | 119 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4359, 3, 0), |
Chenbo Feng | 60f3ed4 | 2018-01-18 11:26:24 -0800 | [diff] [blame] | 120 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4349, 1, 0), |
| 121 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4347, 3, 2), //clock_adjtime|syncfs|sendmmsg|setns|process_vm_readv|process_vm_writev |
| 122 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4357, 2, 1), //sched_setattr|sched_getattr|renameat2|seccomp|getrandom|memfd_create|bpf|execveat |
Josh Gao | de9262e | 2017-04-18 16:05:39 -0700 | [diff] [blame] | 123 | BPF_JUMP(BPF_JMP|BPF_JGE|BPF_K, 4363, 1, 0), //mlock2|copy_file_range|preadv2|pwritev2 |
Paul Lawrence | 89fa81f | 2017-02-17 10:22:03 -0800 | [diff] [blame] | 124 | BPF_STMT(BPF_RET|BPF_K, SECCOMP_RET_ALLOW), |
| 125 | }; |
| 126 | |
Victor Hsieh | 4f02dd5 | 2017-12-20 09:19:22 -0800 | [diff] [blame] | 127 | const size_t mips_system_filter_size = sizeof(mips_system_filter) / sizeof(struct sock_filter); |