Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // autogenerated by syzkaller (http://github.com/google/syzkaller)
- #ifndef __NR_mmap
- #define __NR_mmap 9
- #endif
- #ifndef __NR_write
- #define __NR_write 1
- #endif
- #ifndef __NR_syz_open_dev
- #define __NR_syz_open_dev 1000002
- #endif
- #ifndef __NR_syz_open_pts
- #define __NR_syz_open_pts 1000003
- #endif
- #ifndef __NR_open
- #define __NR_open 2
- #endif
- #ifndef __NR_sendfile
- #define __NR_sendfile 40
- #endif
- #ifndef __NR_syz_fuse_mount
- #define __NR_syz_fuse_mount 1000004
- #endif
- #ifndef __NR_syz_fuseblk_mount
- #define __NR_syz_fuseblk_mount 1000005
- #endif
- #ifndef __NR_syz_test
- #define __NR_syz_test 1000001
- #endif
- #include <fcntl.h>
- #include <pthread.h>
- #include <setjmp.h>
- #include <signal.h>
- #include <stddef.h>
- #include <stdint.h>
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
- #include <sys/ioctl.h>
- #include <sys/stat.h>
- #include <sys/syscall.h>
- #include <sys/types.h>
- #include <unistd.h>
- __thread int skip_segv;
- __thread jmp_buf segv_env;
- static void segv_handler(int sig, siginfo_t* info, void* uctx)
- {
- if (__atomic_load_n(&skip_segv, __ATOMIC_RELAXED))
- _longjmp(segv_env, 1);
- exit(sig);
- }
- static void install_segv_handler()
- {
- struct sigaction sa;
- memset(&sa, 0, sizeof(sa));
- sa.sa_sigaction = segv_handler;
- sa.sa_flags = SA_NODEFER | SA_SIGINFO;
- sigaction(SIGSEGV, &sa, NULL);
- sigaction(SIGBUS, &sa, NULL);
- }
- #define NONFAILING(...) \
- { \
- __atomic_fetch_add(&skip_segv, 1, __ATOMIC_SEQ_CST); \
- if (_setjmp(segv_env) == 0) { \
- __VA_ARGS__; \
- } \
- __atomic_fetch_sub(&skip_segv, 1, __ATOMIC_SEQ_CST); \
- }
- static uintptr_t syz_open_dev(uintptr_t a0, uintptr_t a1, uintptr_t a2)
- {
- if (a0 == 0xc || a0 == 0xb) {
- char buf[128];
- sprintf(buf, "/dev/%s/%d:%d", a0 == 0xc ? "char" : "block",
- (uint8_t)a1, (uint8_t)a2);
- return open(buf, O_RDWR, 0);
- } else {
- char buf[1024];
- char* hash;
- strncpy(buf, (char*)a0, sizeof(buf));
- buf[sizeof(buf) - 1] = 0;
- while ((hash = strchr(buf, '#'))) {
- *hash = '0' + (char)(a1 % 10);
- a1 /= 10;
- }
- return open(buf, a2, 0);
- }
- }
- static uintptr_t syz_open_pts(uintptr_t a0, uintptr_t a1)
- {
- int ptyno = 0;
- if (ioctl(a0, TIOCGPTN, &ptyno))
- return -1;
- char buf[128];
- sprintf(buf, "/dev/pts/%d", ptyno);
- return open(buf, a1, 0);
- }
- static uintptr_t syz_fuse_mount(uintptr_t a0, uintptr_t a1,
- uintptr_t a2, uintptr_t a3,
- uintptr_t a4, uintptr_t a5)
- {
- uint64_t target = a0;
- uint64_t mode = a1;
- uint64_t uid = a2;
- uint64_t gid = a3;
- uint64_t maxread = a4;
- uint64_t flags = a5;
- int fd = open("/dev/fuse", O_RDWR);
- if (fd == -1)
- return fd;
- char buf[1024];
- sprintf(buf, "fd=%d,user_id=%ld,group_id=%ld,rootmode=0%o", fd,
- (long)uid, (long)gid, (unsigned)mode & ~3u);
- if (maxread != 0)
- sprintf(buf + strlen(buf), ",max_read=%ld", (long)maxread);
- if (mode & 1)
- strcat(buf, ",default_permissions");
- if (mode & 2)
- strcat(buf, ",allow_other");
- syscall(SYS_mount, "", target, "fuse", flags, buf);
- return fd;
- }
- static uintptr_t syz_fuseblk_mount(uintptr_t a0, uintptr_t a1,
- uintptr_t a2, uintptr_t a3,
- uintptr_t a4, uintptr_t a5,
- uintptr_t a6, uintptr_t a7)
- {
- uint64_t target = a0;
- uint64_t blkdev = a1;
- uint64_t mode = a2;
- uint64_t uid = a3;
- uint64_t gid = a4;
- uint64_t maxread = a5;
- uint64_t blksize = a6;
- uint64_t flags = a7;
- int fd = open("/dev/fuse", O_RDWR);
- if (fd == -1)
- return fd;
- if (syscall(SYS_mknodat, AT_FDCWD, blkdev, S_IFBLK, makedev(7, 199)))
- return fd;
- char buf[256];
- sprintf(buf, "fd=%d,user_id=%ld,group_id=%ld,rootmode=0%o", fd,
- (long)uid, (long)gid, (unsigned)mode & ~3u);
- if (maxread != 0)
- sprintf(buf + strlen(buf), ",max_read=%ld", (long)maxread);
- if (blksize != 0)
- sprintf(buf + strlen(buf), ",blksize=%ld", (long)blksize);
- if (mode & 1)
- strcat(buf, ",default_permissions");
- if (mode & 2)
- strcat(buf, ",allow_other");
- syscall(SYS_mount, blkdev, target, "fuseblk", flags, buf);
- return fd;
- }
- static uintptr_t execute_syscall(int nr, uintptr_t a0, uintptr_t a1,
- uintptr_t a2, uintptr_t a3,
- uintptr_t a4, uintptr_t a5,
- uintptr_t a6, uintptr_t a7,
- uintptr_t a8)
- {
- switch (nr) {
- default:
- return syscall(nr, a0, a1, a2, a3, a4, a5);
- case __NR_syz_test:
- return 0;
- case __NR_syz_open_dev:
- return syz_open_dev(a0, a1, a2);
- case __NR_syz_open_pts:
- return syz_open_pts(a0, a1);
- case __NR_syz_fuse_mount:
- return syz_fuse_mount(a0, a1, a2, a3, a4, a5);
- case __NR_syz_fuseblk_mount:
- return syz_fuseblk_mount(a0, a1, a2, a3, a4, a5, a6, a7);
- }
- }
- long r[7];
- void* thr(void* arg)
- {
- switch ((long)arg) {
- case 0:
- r[0] =
- execute_syscall(__NR_mmap, 0x20000000ul, 0x10000ul, 0x3ul,
- 0x32ul, 0xfffffffffffffffful, 0x0ul, 0, 0, 0);
- break;
- case 1:
- NONFAILING(memcpy((void*)0x20002000,
- "\x2e\x2f\x66\x69\x6c\x65\x30\x00", 8));
- r[2] = execute_syscall(__NR_open, 0x20002000ul, 0x4042ul, 0x145ul,
- 0, 0, 0, 0, 0, 0);
- break;
- case 2:
- NONFAILING(memcpy(
- (void*)0x2000b000,
- "\xad\x11\x6c\x49\x1b\xe1\x62\x6d\x80\xf6\x07\x91\xb1\x20\x68"
- "\x8c\xed\x68\xe7\xa7\x27\x70\xe1\xb5\x86\xe3\x0a\x92\x33\x27"
- "\x26\x1f\xa5\x03\x2e\xdc\x7d\x20\xee\xbb\x4f\xc0\xf8\x80\x9f"
- "\xba\x01\x25\x35\xf9\x23\x18\x2c\xc0\x3c\x31\x7f\x92\x58\x35"
- "\xef\xd2\x80\x20\x49\x61\xf7\x67\x8b\x03\x41\x94\x46\xff\xef"
- "\x31\xa3\x3d\x80\x80\xea\xf7\x09\xd2\xd1\x58\xa4\x11\x3e\x92"
- "\xeb\x4c\x2c\xeb\xf5\xf9\x36\xef\x9a\x66\xf1\xd8\xa5\x90\x27"
- "\xde\xe6\x56\xb9\x58\x20\xdd\x6c\x68\x5a\x12\x9c\xfa\x8e\xaa"
- "\x67\x2c\xd6\x71\x2c\xa1\x9c\xcd\xfe\x2a\xa0\x11\x87\x7a\x4b"
- "\x72\xa2\xb4\xeb\x06\x8d\x41\x2d\xea\x34\x32\xc5\xe7\x17\xec"
- "\x5d\xcd\xfe\xba\xbe\x81\x7f\x1f\xb8\x59\x43\xdc\xa4\xe6\x67"
- "\x15\xf2\xd3\x6a\xd1\xba\x86\xba\xa9\x11\xd9\xba\x5b\xe8\x12"
- "\xf4\x83\x0d\x7d\x0b\x2e\x0d\x42\x7b\x5b\x5d\xe2\x85\x96\xd7"
- "\x60\x27\x0f\xe0\x44\xf4\xf3\x7a\x39\x5b\x7b\xc8\x0d\x44\x4e"
- "\x18\x8f\x0e\x75\x6b\xd9\x6e\x64\x5f\xf2\xc6\x21\xbe\x20\x5d"
- "\x38\x90\x29\xa6\x25\xb2\xc5\xe7\x00\x86\x52\xda\xdf\x36\xce"
- "\x9f\x1c\x71\x63\xb9\x67\x16\xd1\xd9\x8e\xb1\x4d\xe8\xf9\x5b"
- "\xb1\xc5\xcc\x08\x0b\xca\x0e\xab\x92\xd1\x77\x45\xed\x38\x46"
- "\xd7\x6c\x4d\xb8\x95\xcf\x85\x2f\xb5\x37\x7f\xa5\x70\x31\xf1"
- "\x9c\x0a\x07\xca\x80\x68\x2e\x9b\x65\x36\x8a\x35\x19\x28\x62"
- "\x18\x67\x62\xdb\x58\x28\x42\xaa\x29\x45\xdc\xcd\x17\x22\x68"
- "\xfa\xaf\x65\x4a\xf0\x7b\x21\x52\xa9\xe6\xfa\xcc\xaa\x5d\x7f"
- "\x83\x16\xc4\x33\x4c\x30\x13\xfa\x70\x9c\xb1\x21\x3d\xa1\x00"
- "\x8e\x88\x30\x72\x32\xbd\x4c\xbc\x7c\x8a\x1d\xb9\xde\x33\x44"
- "\xf5\xa5\xe0\x87\xb9\x18\x4f\x9a\x1d\x2b\xe2\xf0\xcb\x91\xc5"
- "\x63\xc3\x55\x41\xba\xae\x8c\x14\xe8\x19\x1a\xc2\x1d\x96\x86"
- "\xdf\x5b\x65\xf7\xc8\x7d\x1c\x80\x83\x39\xf5\x4a\xe4\xdf\xd2"
- "\x0d\x8d\x3c\x99\xc1\xc2\xc7\xe2\xca\xfe\xf3\xd6\x9d\x16\xbc"
- "\xa3\xec\xce\x6c\xbf\x1e\xc3\x2b\x05\x4d\x2e\x62\xeb\x47\x88"
- "\xb5\xc7\x8b\x39\x2f\x47\x58\xe8\xa9\x5f\xba\xda\x9d\xa7\x64"
- "\xe4\x96\x98\x2c\x91\x5f\xee\xf9\x76\xda\x6d\x74\xf8\x3e\x9d"
- "\x88\x2c\x50\x36\xcf\x81\xbc\x5b\xd6\x83\x72\x34\xdf\xab\x53"
- "\xd5\x49\x32\xcc\x0c\xff\x42\xaf\x61\xe2\x89\x50\x1b\x6b\xec"
- "\x3c\xb5\x3f\xb1\xca\xe3\x39\x71\xa0\x0b\xea\xc8\x9d\xac\xc3"
- "\xfa\x29\x82\xb4\x23\x2a\x72\x08\x83\xc3\x96\x6e\x6f\xa5\x27"
- "\x86\x10\xbf\xb3\x2d\x63\xcc\xae\xe1\xee\x62\xbe\xfa\x0c\xd8"
- "\x8b\xcf\x7a\x50\x26\xd1\xa9\x50\xb9\xd0\x96\x64\x7d\xa3\x54"
- "\xb1\x3d\xd4\xc1\x16\x94\x60\x84\x0f\x96\x8f\x7c\xe0\x92\xf7"
- "\xd6\xfe\x6f\x0a\xff\xff\xfa\x7e\xbc\xf9\x3a\xe0\xbf\x8f\xe4"
- "\x55\x20\xe5\x4c\xec\x7d\x1e\xab\x89\x30\x34\x1b\xac\x32\x8e"
- "\xb3\xaa\x18\xde\x25\x6a\xa9\xfa\x41\x80\x43\x8c\x7e\x13\x8f"
- "\xbe\x98\x08\x1f\x39\x51\xda\xbe\xaa\xb4\xa4\x23\xb2\x8d\x9a"
- "\x93\xba\x27\xff\x38\x13\xae\xdf\x38\xf5\x9d\x4c\x08\x60\x10"
- "\xb9\x4c\x14\x24\xbb\xd6\xe1\x74\xb0\xb2\x49\xe1\x3c\x33\xee"
- "\xde\xd2\xb7\x5f\xed\xbd\x2d\xb8\x50\x9c\xa0\xcd\x9a\xec\xb2"
- "\x6f\xe2\x13\xa1\xd3\x3c\x88\xf3\x66\x05\x63\x4b\xe8\xea\xdf"
- "\x70\xe8\x15\x48\xfe\x0c\xfe\xab\x6a\xef\x16\xfb\x47\x65\x52"
- "\x85\xad\x79\x8e\x6d\x1b\x60\x0d\x2e\xae\xa2\x02\x80\x97\x46"
- "\x06\x02\x77\x81\x91\x26\xd6\xf8\x8c\xc5\x6a\xa3\x7b\x0a\x42"
- "\xf6\x68\x3e\x9a\xb4\xca\x82\x41\x24\x71\x46\xdd\x10\xb3\x62"
- "\xca\xdf\x86\x9a\x31\x49\xb8\x6a\xcc\x40\x6a\x1f\x64\x09\x70"
- "\xd4\xc4\x30\x19\x5a\x26\x18\xe0\xd6\x0d\xdc\x72\xc5\x71\x83"
- "\x46\xbd\x9d\xb5\x84\x6b\xc6\x18\xad\x7f\x86\x8e\xf1\xa4\xb0"
- "\xeb\x01\x84\x69\x95\x55\x8a\x8d\x8a\xdb\x8e\x25\xe2\x56\x39"
- "\x33\x68\x54\x53\xdc\xbe\x9e\x3e\x60\xb8\xc6\x24\xaa\x04\xc9"
- "\xdd\x95\x1a\xd3\xfc\xf4\x1e\x4f\x25\x8a\x2b\x35\x48\x55\x63"
- "\xe0\x19\x4a\xb0\xde\xa6\xd9\x9e\x1b\x6c\xe1\x76\x61\x50\xb2"
- "\x98\x1d\x96\xa2\x09\xdf\xa7\x9d\x43\xeb\xb4\x94\xfa\x42\xc7"
- "\x3e\x03\x05\xf9\x98\x51\x25\xfd\xd6\xf6\xb2\xd6\x4f\xc8\xbb"
- "\x33\x4b\x0e\x63\x08\x39\x10\xd5\x5b\xe1\x89\x2a\x1c\xd3\xbf"
- "\x17\xc4\x25\xc8\xd3\x4f\x61\x50\x7a\x10\xba\x90\x1d\xdf\xf6"
- "\x31\xa5\xec\x87\x64\x36\x8c\xb6\x86\x47\xbf\xa1\x2d\x6b\x33"
- "\xe6\x19\xe8\xaa\x7d\x14\xde\x71\xd4\xf1\xec\x9c\xcc\xb4\xc7"
- "\x0b\x89\x63\x91\x1f\xb5\xa2\x61\xc5\xb9\x66\x99\xc3\xaf\x08"
- "\x65\x75\xfd\x2a\xc7\x48\x8c\xf3\xb2\xde\x33\x23\x08\x65\x95"
- "\x64\x91\x35\x76\x79\x0a\x53\xd0\xde\xb6\x4f\xe8\x5d\x2e\x16"
- "\x68\xb1\x60\xc8\x1f\x0d\x07\x70\x82\x3c\xef\x55\x42\x87\x24"
- "\xff\x43\x37\x41\x4d\x1d\x6c\xc1\x57\xbf\xda\xe5\x33\x0e\xbf"
- "\xdb\xb2\x55\xa0\x7d\x9d\x57\xd5\x36\x86\xd6\x8c\x5f\x2d\x4a"
- "\x69\x57\x9e\x37\xb0\x77\xa1\x10\xed\xa4\x19\x05\x55\x35\x5a"
- "\x6f\xd0\x3e\x21\x5b\x45\x19\x68\x01\x5f\x45\x3e\xdf\x74\x88"
- "\x68\x7e\x1d\x5f\xf9\xc3\x06\x1e\x82\xdb\xc3\x5a\x5d\x4b\x81"
- "\xb8\xd9\xac\x68\x47\xff\xa7\xb2\x08\xd1\x0a\x6d\xb8\x08\xd4"
- "\x0b\xe6\x53\x2d\xb0\x86\xc0\x39\xaa\x5e\x00\xef\x6d\x65\xa6"
- "\xe9\x60\x4e\xa9\xb6\xf6\x74\xd9\xcf\x5b\x53\x3f\x97\x54\x7e"
- "\xe4\x14\x49\x06\x8d\x3c\xca\x90\xef\x66\x50\x71\x4e\x80\x42"
- "\xdc\x30\x29\xfd\xfd\x12\xd1\x23\x20\x9f\x4d\xfc\xc8\x5c\x27"
- "\x08\x99\x51\x98\xc9\xb1\xb7\xba\x77\xe4\x96\x72\x76\xe9\xaf"
- "\x2c\x6a\x4f\x94\xa4\xb7\xc0\xaa\x4e\xd1\x5b\x7a\x0f\xb5\x0f"
- "\xda\xd9\x30\x12\x65\x7b\x6c\xb9\x57\x72\x02\x72\xc5\xde\x4c"
- "\xb6\x9b\x68\x02\xc5\x1b\x38\x30\xbf\xf7\x50\xfa\x5b\x95\x96"
- "\x0e\x34\x0a\x97\x07\x77\x20\xde\x4d\xaa\x80\xff\x0a\x40\x58"
- "\x6d\x63\xac\x89\x27\x8b\xc5\x5a\x03\xb4\xf3\xea\xf1\xe1\x03"
- "\x40\x5a\x33\xb1\x99\x95\x86\x33\x57\x67\xf5\x9a\x8c\x31\x5d"
- "\x0e\xe0\x5f\x49\xee\x93\xb6\xfd\xdf\xbf\xd0\x70\xfa\x1c\x0d"
- "\x92\x23\xc4\xcc\xde\x24\xf3\xbd\xff\x80\x63\x2b\xfc\x63\xd9"
- "\x9a\x14\x22\x26\x9b\x40\x80\xee\x86\x6d\x1d\x34\x93\xd5\x38"
- "\xca\x1d\x60\x64\x9e\x04\x8a\x36\x25\x1b\x9e\x5a\xbf\x7a\x13"
- "\x83\xe3\xfc\x71\x51\xd5\x67\x62\x47\x90\xea\x92\x86\x1c\x36"
- "\x6c\x39\xf2\x0b\xf9\x28\xa1\xef\x2c\x45\xb8\x36\xa5\x46\x9c"
- "\x81\xbd\xc8\x95\xe9\x5f\xca\x11\xdf\x2d\x4d\x3a\x1a\xc2\xd7"
- "\x85\x49\x3e\x2b\x4a\x5c\x9d\x85\x4a\xf0\x52\x04\x84\x19\xcf"
- "\x43\x72\x83\x5c\x26\xbf\x2d\xfd\xb4\x12\x8e\x54\xc7\x19\x58"
- "\x44\xd4\x04\x73\x05\xed\xb7\x78\x3d\x4e\xf9\x84\xbc\xdb\xfe"
- "\xd9\x5b\xd1\x01\x12\x80\x37\x31\x7a\x26\x76\xfd\x5e\xeb\x3a"
- "\x28\x15\xed\x2d\x43\x55\x61\xa6\x47\xd1\x8d\x73\xd8\xb5\xc1"
- "\x9b\x74\xda\x61\xb2\xa5\xf8\x85\xd0\x0a\x5b\x2c\x77\x35\x19"
- "\x2b\x22\xf0\x50\x3a\x81\xc5\xfe\x99\x02\x5c\x60\x51\xaa\x10"
- "\x08\xc9\x01\x4b\x96\xaa\xc9\x04\x1e\x3e\x2a\x57\x49\x75\xf7"
- "\x31\x8c\x49\xe4\x84\xd3\x53\x3b\xc2\x2f\x41\x56\xe4\x91\xd5"
- "\x65\x22\xe1\x98\x80\x80\x49\x3f\x4f\xeb\x23\xd7\x03\x54\x3b"
- "\x6c\xf2\xbe\xd1\x78\x13\xa8\xcb\x3a\x73\xbb\xbc\x9e\x81\x50"
- "\x12\x78\x1c\xaf\x0d\xca\x7d\xd5\xac\x9f\xa8\x5c\xd4\xaf\xe2"
- "\xce\x0e\xf9\x2f\xf0\x79\x94\xe9\xad\x57\x4e\x1f\x35\x06\x8c"
- "\xc1\x1c\x3f\x33\xd7\xd2\x2f\x00\xb5\x7d\x18\x4d\xb6\xaa\x28"
- "\x45\xb3\x6b\xee\x26\xc6\xfa\x03\x95\xbf\xac\x9f\x25\xf2\x2b"
- "\x9e\x30\x62\x6c\x41\x2b\x87\xb9\x87\xc7\x2a\x67\x9d\xf1\x03"
- "\x09\x58\x26\xc1\x7c\x7a\x2f\xf9\x6b\xd9\x31\x79\x62\x25\xf7"
- "\xfd\x05\x76\x67\xf1\xd6\x55\xc5\x12\x20\xb1\x5c\xcb\xa5\x0f"
- "\x51\x49\xad\x11\xa9\x6c\x75\xb4\xb4\x3c\xbc\xfb\x68\xf3\x14"
- "\x72\xbd\xe9\x49\xc7\xb8\xb6\x96\x90\x6b\x1e\x10\x57\xa8\xbd"
- "\xc8\x79\x9d\x82\xb4\x79\xfb\x6d\x6c\xd5\xd7\x36\x12\x00\xa3"
- "\x3e\xb6\xc2\x33\xb9\x1d\x83\xcb\x59\xe3\x99\xc2\x26\x1e\xb0"
- "\x67\xbc\x45\x95\xcd\xf6\x01\x4f\x3c\xb4\xd3\xf8\x57\x4d\xac"
- "\x82\x14\xc2\x8a\xe2\x40\x08\x9c\x05\x46\x2e\x87\x01\xcf\x05"
- "\x47\x91\x6c\x6b\xb9\x45\xcf\x1f\x96\x0e\x04\x26\x3e\x26\xf1"
- "\x40\x10\x61\x79\x17\x81\x8e\x72\xda\xf3\x01\x1c\x50\xfc\x7a"
- "\x6a\x15\x44\x2d\x54\xa6\x0b\x8d\x6c\xa4\xd3\x8b\xe1\xf8\x10"
- "\x5c\x75\x6c\xd7\x98\xcb\x47\xad\xea\x99\xd3\xf4\xa2\xe4\x81"
- "\x52\x26\x97\xe7\x02\x74\xe0\x53\xec\xd9\xdd\xa0\xee\x27\x76"
- "\xf5\xf3\x53\x85\x3d\xfa\xfc\xc4\x65\xe6\xd8\x72\xba\xe1\x8d"
- "\x93\xa6\x32\xc8\x69\x8f\xc6\xff\xad\x9f\x81\xb4\xce\x6f\xfd"
- "\x83\xb0\x0c\xc0\x27\x80\x8b\x44\x36\xdb\x8a\xdd\x09\xde\xa8"
- "\xb9\x5e\x1b\x30\xa5\x4d\xf1\x67\x21\x2d\xb4\x2e\x54\x33\xd2"
- "\x7d\x5a\x20\x39\xbc\x94\xc9\x4f\x0c\xe7\x03\x76\x5b\xe1\x65"
- "\x7d\xb0\xd3\x79\x52\x43\xce\x0f\x9d\xf4\xc6\x49\xfd\x24\x37"
- "\x62\xa5\x5b\x28\x01\xda\x40\x8b\xeb\x78\xeb\xad\x60\x31\x4b"
- "\x51\x12\x2d\x86\xdc\x82\x4a\x73\x89\xd6\x19\x52\x40\x46\x32"
- "\x8e\x0e\xb3\xcc\x7d\x63\x5c\x4b\x9c\xb3\x07\xe1\x41\x86\x72"
- "\x9f\x38\xa7\x5b\xff\xba\xb9\x20\xb3\xee\x79\x65\xfd\x79\x26"
- "\x3e\x45\x5b\x74\x5c\x08\xcf\x3a\xda\x4b\x61\x43\x42\x64\xd3"
- "\x05\x4c\xfd\xa1\xd7\x08\x6d\x52\x40\x40\x7a\x87\x11\x71\x7d"
- "\xa2\x3e\xfe\x87\x99\xdb\x5a\x26\xb2\x8b\xf8\x2c\x06\x5b\x85"
- "\xb5\xe2\x94\x9b\x58\x86\xc3\xfe\x19\xd4\x92\x9b\xfc\xbc\x9f"
- "\x7c\x75\xea\xc5\xcc\x3d\x78\xf1\xdd\x60\x74\xed\x73\x38\x4d"
- "\xcb\x22\xf1\x67\x73\x30\x68\x7d\xbb\xf9\xba\xaf\xfa\x34\x32"
- "\x28\xca\x9d\xcf\x4e\x21\x99\x33\x3f\x22\x0f\x9c\x3e\xcb\x79"
- "\x73\xee\xdc\x7e\x9e\xcc\x00\x2d\x97\xd1\xa3\x27\x5a\xa2\x9e"
- "\x88\x2a\xd2\x56\x45\xfd\x96\x46\xc3\xfd\x10\xfb\x90\xa1\x76"
- "\xd8\x1f\xb8\xeb\xf0\xa8\xc0\x9b\x1c\x10\xe3\x31\x72\xd4\xef"
- "\x91\x9f\x3f\xd9\x95\x9e\x95\x8c\xa2\x6c\xdc\xb6\x5c\xd3\x1c"
- "\x59\xc9\xcb\x90\x62\x70\x6c\x12\x3f\xb0\x38\x9a\x40\x5d\xfa"
- "\x8f\xa6\x8e\x39\xf8\xa1\x8a\xcf\x0d\xe6\xfe\x1a\xb1\x81\x4b"
- "\x08\x80\x0d\xda\x85\x82\x5c\x20\x51\xc8\x3e\x8e\x6d\x5a\x32"
- "\xab\x7c\x86\x82\xdb\x61\xb5\xc2\xf7\x80\xbe\xc2\x4a\x1b\xad"
- "\x16\xaf\x64\x9e\xc8\xd7\xaf\x22\x36\xb6\x61\xb0\x9c\x13\x56"
- "\xd5\x05\xde\x2d\x34\xa6\xf8\x1b\x93\xbf\xb7\xdd\xdf\x8f\x9a"
- "\xc8\x4e\x9d\x07\xd6\x99\x5e\x09\x12\xdf\xe1\x2f\x68\xa9\x5f"
- "\x68\x53\x57\xb8\xa7\x80\x6c\x5a\x0e\x46\xa1\xcb\x22\xb6\x08"
- "\x55\x84\x85\x62\x17\xa2\xb0\x29\x51\x1a\x64\xe9\xac\xef\x3c"
- "\xc5\xad\x3a\x9e\xa7\xf2\x9c\x0b\x99\x44\x6f\x7a\x44\xaf\xc2"
- "\x96\xc6\xa4\xc6\x39\x3c\x59\x21\x00\x61\x80\xce\x4d\x8d\x09"
- "\x68\x91\x77\xb3\x87\xea\x68\x0b\xf3\x3a\x24\x97\x7d\xf7\xb8"
- "\xcd\x1b\xe7\x8d\x48\x10\x17\xda\xed\xad\x12\x89\xf0\xbc\xff"
- "\x37\xe9\x06\x21\x22\xeb\x7c\xd1\x35\x5b\xbe\x22\x62\x18\x39"
- "\x44\x12\xa8\xfb\xf0\xac\x84\xe5\x5d\x6d\x98\x51\x16\x72\x46"
- "\xf0\xb1\xa3\xae\x69\xf9\x47\x86\x0e\xf8\xc0\xdb\x7f\x9e\x6d"
- "\x6b\x95\x78\xf5\x70\xb4\x65\x5a\xbd\x04\xc8\x70\xb7\xef\xbf"
- "\xde\x79\xc2\x1d\x80\x37\xe9\xf1\x13\x01\x64\x3a\x38\x24\x64"
- "\x46\x6d\xf0\x4d\x6c\xaf\x11\xb4\x97\x03\xfa\x41\x24\x19\xed"
- "\x2d\x36\xd7\x2f\x95\xb5\xb0\xee\x95\xdd\x55\x4a\xe0\xfb\xde"
- "\x17\x67\x23\x7a\x3b\xef\x68\x18\x29\x8f\xe9\xba\x58\x05\x8d"
- "\x1b\xfa\xb4\x5f\x4b\xf5\x7f\x5e\x12\xc2\x83\x1e\x00\x49\x07"
- "\x80\xf7\x38\xf3\xb8\x42\x46\x81\x35\xca\x53\xdc\x03\x52\x17"
- "\xbe\x40\x0b\x04\x59\x12\x00\xb2\x00\x18\x55\x50\x53\x81\x2d"
- "\xeb\x76\x9e\x3e\xa9\x7f\x6c\x54\x4a\x32\x82\x64\x22\xb0\x3e"
- "\x06\x9e\x25\xb2\x51\x7c\xef\x09\x26\xc7\x83\x0f\x21\xe2\x56"
- "\x0d\x2e\xf4\x02\xe4\xb7\xad\x69\xb4\xdd\xb0\x2e\x9d\xaf\x5d"
- "\x36\xc5\x55\x18\xee\x80\xd0\x35\x01\x50\xd8\x16\xa7\xcb\xc5"
- "\xe0\x63\xca\x77\x07\x2a\x38\xd9\x75\x00\x7c\x00\x1b\x39\xee"
- "\x00\x7b\x82\xce\x8e\xf0\xd9\xc6\x2f\xc4\x7f\x50\x43\xf4\xd1"
- "\x58\x43\x19\x11\x5e\x4b\x60\x4e\x5c\x15\x7b\xc5\xb5\x7f\xdc"
- "\x31\xfd\x79\xbe\xfa\x77\x9f\xc5\x2a\x7b\x59\xce\x37\x18\x48"
- "\x15\xa4\x32\x71\x18\x04\x81\xa6\x8e\x18\x81\xb6\xf4\x5c\x4f"
- "\x30\x46\xd8\x8c\xae\x5f\x4d\xe5\x6f\x32\x4b\xdb\x35\x38\xcc"
- "\x5d\xff\xe2\x58\x09\xb0\x42\x3b\xd7\x57\xc2\x30\x35\x31\xed"
- "\x72\xe9\x79\x8e\x73\xf7\x4f\xa9\x02\x87\xc1\x62\x23\xfd\x6d"
- "\x77\x46\x74\xe3\xab\xbb\xc6\xe0\x9e\xee\x33\x35\xd0\xfb\x6f"
- "\xbb\xea\x90\x54\x91\x7a\xcd\x1d\xdf\x82\x44\xdb\xda\xec\x91"
- "\xa4\xf8\xef\x13\xf7\xc5\xf1\x14\x0f\x20\x03\x19\x37\xa9\x56"
- "\x74\x15\x71\x4d\x6c\x88\x4f\xdc\x94\xbf\x38\xa7\x60\x19\xab"
- "\xa2\xb6\xe3\x37\x53\x0b\x0f\x11\x0b\x12\x11\x98\x3b\xbf\xef"
- "\x43\x03\x50\x58\x81\x68\xfe\xe8\xb9\x8e\xec\xf9\xba\xdf\x1f"
- "\x60\x67\x2b\x05\x28\x1f\x8a\xb2\x00\x7a\x2e\xcf\xb4\xdf\x85"
- "\x73\x78\x7d\x94\x0b\x80\xe4\xfc\xf9\x75\x8c\x01\x28\x38\xd2"
- "\x19\x62\x15\xd0\x78\x0f\xb0\xfb\x67\x11\x07\x7c\xb5\x5f\x51"
- "\xd4\x65\xbe\xe6\x62\x68\x6e\xc4\x86\xaf\x62\x35\xf6\xd0\x32"
- "\x3b\x8a\x7d\xbe\x42\x5a\x12\xd0\x79\xd6\xe0\x4c\x99\xda\x09"
- "\x2d\x18\xcf\x2f\xe3\x2c\x2d\xf7\x44\x31\x7e\xd7\x45\xec\xaa"
- "\x52\x3b\x72\x24\x65\xd0\x19\xb3\xd0\xe6\xb1\x73\xb7\x2c\xee"
- "\x07\x9a\x40\x1b\xa9\x69\xfa\xc0\x25\xd9\x63\xd1\x6d\xf5\xda"
- "\xd0\x5d\xb7\x8f\xe8\xe1\x33\xae\xcb\x26\x6c\xc8\x55\xda\xd7"
- "\xf4\xbd\xcf\xfe\x94\x66\x96\x16\xf0\xc4\x98\xf7\x1d\xb4\xe6"
- "\x29\x73\xf1\xf4\x7d\xd9\x11\xd7\xcc\x2a\xc8\x1f\x67\xd9\x0b"
- "\x22\xdf\x00\xfc\xd9\x36\x8d\xaa\xe0\x55\xcb\x25\x73\x3e\x33"
- "\x59\x59\x2b\x9a\xa9\x8c\x1c\xef\xcd\x6e\xdc\x8e\x9a\xb8\x1b"
- "\x2e\x68\x08\x0c\x01\x03\x9b\x82\x2c\x70\xcc\x49\x7c\x8c\x61"
- "\xe9\xe4\x51\x80\x78\x8e\x81\x63\x5a\x69\x09\x7f\xd5\x69\x74"
- "\xf4\xae\x1f\xe4\xcc\x61\x0c\x4b\x02\x12\xf9\x15\xf7\x22\x99"
- "\x74\x1b\x10\xdc\xee\x08\x9c\x99\x78\xff\x5f\x77\xc1\x23\x4d"
- "\xd3\xc3\xe9\x84\x27\x69\x45\xaf\x9e\xd6\x18\x4e\x43\x9c\xe7"
- "\x4f\xbd\x75\xab\x48\x26\xe4\x3f\x87\xae\x2d\x3b\x69\x97\xe7"
- "\xde\x6e\x6f\x2e\xd0\x82\x22\x27\x7a\x99\x5c\x44\x6b\x0b\x60"
- "\x3b\xfb\x56\x38\x62\x5f\xd7\xf9\x06\xe8\xee\x20\x54\x4e\xfe"
- "\xeb\x2a\xa4\xb1\x68\x11\xfe\x20\xa9\x7a\xc9\xdf\xc1\x63\xe7"
- "\xf7\xe8\x87\x8b\xde\xfe\xeb\x2e\xd1\xb1\x0f\x22\x55\x4c\xa0"
- "\xe3\x0c\x8c\x92\x3b\x7f\x6e\xea\xca\x52\xa9\x95\xae\x6d\xe1"
- "\x6b\xb3\x2e\x61\x5d\x54\x7b\x73\xfe\x0e\xb5\xb5\x9e\x5e\xdd"
- "\x6c\x0a\x9e\x35\x38\xef\x78\xe0\x2f\x4f\xd9\x13\x5a\x34\x06"
- "\x6e\x45\xb2\xe6\x04\x83\x55\xc8\x44\xfe\x26\xd3\x51\xa5\xa1"
- "\xca\xdb\x53\xf4\xd8\x09\xec\x94\xe2\x18\xe5\x7f\xb5\x72\xbd"
- "\x4c\x79\x65\x79\xb7\xe6\xc5\xd5\x1c\x2b\xe8\x2a\x75\x29\x6e"
- "\xc4\xee\x87\xe8\x95\x80\xd8\x0b\x33\x07\x69\xdb\xcd\x6a\xea"
- "\x9e\xb9\x8c\x28\x90\x44\xe2\xbe\x30\x4e\x60\xe6\x72\x5d\x34"
- "\x28\xd0\x9c\xe4\x5d\x64\x5c\x31\x4a\x74\x0f\xda\xd0\x19\x2e"
- "\xeb\xbe\xac\xc4\x19\x89\x4d\xd5\x8d\x63\xbb\x64\x1a\x4c\xbb"
- "\xac\xc1\x36\x25\xe4\x50\xd2\x3f\x4a\x86\xda\x75\x0a\x49\xbf"
- "\xf9\xaa\x5b\xd6\x3f\x0d\x4a\x66\x4f\x10\x7c\x24\xbb\x25\x57"
- "\x60\x12\x80\x08\x93\xe4\xf4\xe3\x53\xd6\x04\x30\x51\xe5\x6c"
- "\x23\x1e\x2c\x2a\x98\x61\x3c\xed\x1f\xd4\x52\x7f\x73\x1e\x4f"
- "\x78\xb8\xeb\xf8\xa5\x19\x84\x44\x97\x94\x75\xe7\x21\xac\x21"
- "\x00\xca\x98\xe3\x5b\x6f\xe4\x04\x15\xbb\x30\x59\xf4\xfe\x32"
- "\x5f\x61\x10\x83\x65\x64\xa0\xab\x14\x4f\x79\x2b\xe2\xc8\xc8"
- "\x7a\xf1\xd4\xf0\xa2\x67\xab\x3f\x66\x17\x34\xf9\xd0\x9a\xd5"
- "\x56\xc7\xcf\xb2\xc1\x6b\x18\xaf\xf8\xeb\x7f\xd6\xd2\x8e\x92"
- "\xa7\xe3\x6d\x6d\xdc\x67\x34\x76\xb7\x90\x43\x77\x1d\x66\xb0"
- "\x05\x70\xe4\xe8\xbf\xfd\x86\x0d\x54\x37\xc7\x91\xb8\x48\xd8"
- "\xe0\xe3\x69\xa4\x3b\x82\x19\x3f\x0e\xd2\x86\x87\x59\x39\xa3"
- "\xca\x7b\x82\x16\x74\x2e\xfd\x06\x22\xbc\xc4\xc6\x45\x12\x76"
- "\xfa\xa3\x3c\x24\xbe\x51\x24\x09\x22\x38\xf9\x82\xfb\x01\xde"
- "\x45\x10\x1f\x38\xa6\xb3\xd7\x9c\x1b\x19\x27\xdd\x70\x64\x9c"
- "\xf2\x43\x4e\x6f\x27\x82\x02\x60\xa1\x9a\x4e\x18\x30\x94\x95"
- "\x3d\x83\xa0\xf0\x25\x76\xbb\x51\x22\x2b\x30\xde\xda\xa5\xf1"
- "\xc1\xde\xc7\xe2\xdb\x61\xaa\x42\xfd\x3f\xca\x0a\x3c\xcd\x3b"
- "\xe6\x76\x84\xcc\x29\x10\x31\x07\x2f\xd3\x3b\x24\xbc\x68\x20"
- "\xea\x9f\x8a\x1f\x1d\x99\x0a\x98\x67\x75\x00\xf8\x9c\x98\x14"
- "\x89\x94\x34\xef\xac\x38\x23\xc1\x4d\xfc\xf0\x54\xd9\x9f\xb2"
- "\x7e\x56\x38\x6d\x9b\xb9\x8b\x81\x45\x8d\x6d\x98\x62\xd3\xe2"
- "\xce\x88\x58\xf8\x8d\x55\x6c\x9a\xc8\xa3\x29\x64\xf5\x81\x33"
- "\x23\xbe\x1a\x15\xc1\xbb\x7c\xcf\x8b\xf4\xe1\x04\xc3\xcd\xf2"
- "\x6d\xfd\x91\xd7\x23\x34\xd0\x38\x27\x89\x30\x3c\xb8\xbe\xda"
- "\x81\x9e\xe0\xc9\x35\x70\xd8\xf2\x24\x20\xeb\xaf\x3d\x19\x39"
- "\x57\x48\x02\x91\x30\x66\x9a\x9f\xd9\x88\xdd\xc9\x6d\xa1\xfd"
- "\x4d\x27\xef\xec\x4e\x79\xce\x17\x62\x8a\xae\x19\xef\x1a\x70"
- "\x24\x4e\x9e\x25\xc4\x33\xe7\xaa\x27\x2b\xbe\xbd\x48\xc5\xb2"
- "\x61\xc2\xa1\xc0\xa5\xcc\x8c\x32\x6b\xa1\xcb\xec\xd1\x72\xb6"
- "\x2a\xea\xb3\xed\xd1\xcf\xb6\x58\x3a\x89\x99\x5d\x3c\x32\xb0"
- "\x0f\x65\x20\x8f\x52\xa9\x05\x2a\x05\x52\x6a\x7f\x8d\x74\xf5"
- "\xf9\x0f\x94\xfb\xae\x7e\x15\x12\xbd\x75\xd2\x53\x09\x9f\xbd"
- "\x9f\xb4\x75\x06\x9e\x83\x76\x96\xc7\xb5\x47\xa6\x1d\xa3\xe1"
- "\x75\x93\xbc\x10\xd4\x46\x92\xf0\x51\x0f\x46\xfb\x34\x1d\x73"
- "\xbd\xbe\xd6\x40\x94\x39\xa0\x28\xda\x0f\xbb\xb4\x25\x90\xe0"
- "\x58\xf8\x23\x11\xec\xae\x3a\xed\xff\xb8\xef\xc4\x54\x14\x2f"
- "\xf0\x6f\x8a\xc6\x6c\xf4\x0a\xbb\x53\x97\xc1\xf7\xba\xe3\xb6"
- "\xcc\xe7\x75\x6f\x07\x91\x23\xd5\x09\xbf\xa6\xaa\x61\x4c\x86"
- "\x23\x14\xc1\x58\x26\x52\x9b\x86\x77\x38\x45\x5e\x17\xbb\x6e"
- "\xf0\x36\x9e\x33\xa2\xa5\xb4\x39\x17\xa3\xc0\xac\xf4\xfc\xa3"
- "\x3f\x08\x0e\x99\xc8\x64\xd4\xbb\x65\xd8\xa6\xca\x02\x2b\x6a"
- "\x12\xdd\x6f\x91\xb9\xb6\x2f\x83\x46\x51\x41\xbb\x6e\x25\x1f"
- "\x0c\x94\xde\xb2\xf0\xc6\x35\x59\x8f\x05\x1d\xbc\x82\x27\x9c"
- "\x5d\xed\x8c\xd6\xbc\x20\xe1\xa9\x1e\x86\x98\x7e\xa1\x62\x0e"
- "\x05\x36\x72\x34\x49\x9b\x0d\x4e\x44\x67\xfa\xbe\xfa\x92\x1e"
- "\x05\xd5\xa1\x7e\x42\x9c\x57\x24\x94\xf7\x2d\x8d\x8f\x5e\x68"
- "\x5c\x15\x2b\x8d\xa4\x69\x89\x20\xbe\x60\x23\x0d\x08\x76\x2c"
- "\x37\x89\xeb\x24\xbb\x4d\xc2\x27\x96\x85\x0b\xfb\xf5\xb1\x0c"
- "\x35\x1e\x2f\xe5\x38\xae\x22\xfa\x8c\x73\x97\xe2\xba\x9f\xf5"
- "\x45\x05\x38\x71\x2d\xfa\xab\xb3\xee\xfa\xfb\x7c\x73\x59\x60"
- "\x5e\xd6\x84\x31\x6c\xbd\xde\x7e\x67\xe0\x3b\x03\x38\x61\xe5"
- "\x2b\x75\x68\xfc\xed\xf5\xb4\x9f\xc1\x15\x07\xc6\x3d\x44\x01"
- "\x57\xd9\x37\x83\x03\xe9\xb7\x8e\xdd\xdc\x4d\x98\x61\xe0\xbd"
- "\x48\xc9\xd9\xdb\xf4\x25\xf0\x32\xbe\x59\x25\xa5\x6b\xc6\x61"
- "\x6f\x2d\x56\xcd\xe0\xee\x62\x5f\x38\x58\x2b\x7b\x19\xc4\x58"
- "\x5b\x7d\x05\xe5\x17\x09\x05\x45\x15\xc4\xc6\x2f\x36\x61\xfc"
- "\x83",
- 4096));
- r[4] = execute_syscall(__NR_write, r[2], 0x2000b000ul, 0x1000ul, 0,
- 0, 0, 0, 0, 0);
- break;
- case 3:
- NONFAILING(*(uint64_t*)0x2000cff8 = (uint64_t)0x0);
- r[6] = execute_syscall(__NR_sendfile, r[2], r[2], 0x2000cff8ul,
- 0xfffffffful, 0, 0, 0, 0, 0);
- break;
- }
- return 0;
- }
- int main()
- {
- long i;
- pthread_t th[8];
- install_segv_handler();
- memset(r, -1, sizeof(r));
- srand(getpid());
- for (i = 0; i < 4; i++) {
- pthread_create(&th[i], 0, thr, (void*)i);
- usleep(10000);
- }
- for (i = 0; i < 4; i++) {
- pthread_create(&th[4 + i], 0, thr, (void*)i);
- if (rand() % 2)
- usleep(rand() % 10000);
- }
- usleep(100000);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment