// https://syzkaller.appspot.com/bug?id=8591d8a7ca63dce3c443600dc24d3a9a010fcd37 // autogenerated by syzkaller (https://github.com/google/syzkaller) #define _GNU_SOURCE #include #include #include #include #include #include #include #include const int kInitNetNsFd = 201; static long syz_init_net_socket(volatile long domain, volatile long type, volatile long proto) { return syscall(__NR_socket, domain, type, proto); } uint64_t r[1] = {0xffffffffffffffff}; int main(void) { syscall(__NR_mmap, 0x1ffff000ul, 0x1000ul, 0ul, 0x32ul, -1, 0ul); syscall(__NR_mmap, 0x20000000ul, 0x1000000ul, 7ul, 0x32ul, -1, 0ul); syscall(__NR_mmap, 0x21000000ul, 0x1000ul, 0ul, 0x32ul, -1, 0ul); intptr_t res = 0; res = -1; res = syz_init_net_socket(0x1a, 1, 0); if (res != -1) r[0] = res; *(uint16_t*)0x20000280 = 0x1a; *(uint16_t*)0x20000282 = 0; *(uint8_t*)0x20000284 = 0; *(uint8_t*)0x20000285 = 0; *(uint8_t*)0x20000286 = 0; *(uint8_t*)0x20000287 = 1; memset((void*)0x20000288, 0, 6); syscall(__NR_bind, r[0], 0x20000280ul, 0x10ul); { int i; for (i = 0; i < 32; i++) { syscall(__NR_bind, r[0], 0x20000280ul, 0x10ul); } } *(uint16_t*)0x20000140 = 0x1a; *(uint16_t*)0x20000142 = 0; *(uint8_t*)0x20000144 = 0; *(uint8_t*)0x20000145 = 0; *(uint8_t*)0x20000146 = 0; *(uint8_t*)0x20000147 = 0; *(uint8_t*)0x20000148 = 1; *(uint8_t*)0x20000149 = 0x80; *(uint8_t*)0x2000014a = 0xc2; *(uint8_t*)0x2000014b = 0; *(uint8_t*)0x2000014c = 0; *(uint8_t*)0x2000014d = 0; syscall(__NR_connect, r[0], 0x20000140ul, 0x10ul); return 0; }