| // KASAN: stack-out-of-bounds Read in strlcpy |
| // https://syzkaller.appspot.com/bug?id=b1f67055e4daca909300e665d5a3d4ca45e58615 |
| // status:open |
| // autogenerated by syzkaller (http://github.com/google/syzkaller) |
| |
| #define _GNU_SOURCE |
| #include <endian.h> |
| #include <stdint.h> |
| #include <string.h> |
| #include <sys/syscall.h> |
| #include <unistd.h> |
| |
| #ifndef __NR_mmap |
| #define __NR_mmap 192 |
| #endif |
| #ifndef __NR_socket |
| #define __NR_socket 359 |
| #endif |
| #ifndef __NR_setsockopt |
| #define __NR_setsockopt 366 |
| #endif |
| #undef __NR_mmap |
| #define __NR_mmap __NR_mmap2 |
| |
| long r[1]; |
| void loop() |
| { |
| memset(r, -1, sizeof(r)); |
| syscall(__NR_mmap, 0x20000000, 0x320000, 3, 0x32, -1, 0); |
| r[0] = syscall(__NR_socket, 0xa, 1, 0); |
| memcpy((void*)0x20000000, "\x8f\xd5\xcd\x37\x43\xb0\xd8\xe1\xdf\x04\x15\xd0" |
| "\x5b\x20\x53\x6a\x59\x64\xab\x8c\x33\xda\x05\x87" |
| "\x11\xc5\x15\xf5\x3d\x55\x8d\x8a\xbd\xd8\x30\x96" |
| "\x17\x73\x5e\x86\x28", |
| 41); |
| syscall(__NR_setsockopt, r[0], 0x29, 0x41, 0x20000000, 0x29); |
| } |
| |
| int main() |
| { |
| loop(); |
| return 0; |
| } |