blob: cdd9bc55cbb779e1d5d9f96226c323d1da7557bd [file] [log] [blame]
// KMSAN: uninit-value in rtm_dump_nexthop
// https://syzkaller.appspot.com/bug?id=285343407387e269444777049c0f4c7a126ec48b
// status:fixed
// autogenerated by syzkaller (https://github.com/google/syzkaller)
#define _GNU_SOURCE
#include <endian.h>
#include <stdint.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/syscall.h>
#include <sys/types.h>
#include <unistd.h>
uint64_t r[1] = {0xffffffffffffffff};
int main(void)
{
syscall(__NR_mmap, 0x20000000, 0x1000000, 3, 0x32, -1, 0);
intptr_t res = 0;
res = syscall(__NR_socket, 0x10, 3, 0);
if (res != -1)
r[0] = res;
*(uint64_t*)0x20000000 = 0;
*(uint32_t*)0x20000008 = 0;
*(uint64_t*)0x20000010 = 0x20000100;
*(uint64_t*)0x20000100 = 0x20000040;
memcpy((void*)0x20000040, "\x14\x00\x00\x00\x6a\x00\xfd\xff\x00\x01\x00\x00"
"\x00\x0f\x00\x00\x00\x00\x00\x00",
20);
*(uint64_t*)0x20000108 = 0x14;
*(uint64_t*)0x20000018 = 1;
*(uint64_t*)0x20000020 = 0;
*(uint64_t*)0x20000028 = 0;
*(uint32_t*)0x20000030 = 0;
syscall(__NR_sendmsg, r[0], 0x20000000, 0);
return 0;
}