blob: ab979c9697f27f6cf9f922690dcd6fdd1b07fe68 [file] [log] [blame]
// 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;
}