summaryrefslogtreecommitdiffstats
path: root/fuzz
diff options
context:
space:
mode:
authorNicholas Marriott <nicholas.marriott@gmail.com>2021-08-14 22:30:20 +0100
committerNicholas Marriott <nicholas.marriott@gmail.com>2021-08-14 22:30:20 +0100
commit21ce1e04fe7125b646f7888387596c4dd122fcc3 (patch)
treeebf9458216c51d34d882cee41b9264700dad2a3f /fuzz
parentc1be1b351d07f95784c1f05ba1359b578fb57af9 (diff)
Fuzzer needs some other bits it seems.
Diffstat (limited to 'fuzz')
-rw-r--r--fuzz/input-fuzzer.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/fuzz/input-fuzzer.c b/fuzz/input-fuzzer.c
index 81fbf6b4..0d80690b 100644
--- a/fuzz/input-fuzzer.c
+++ b/fuzz/input-fuzzer.c
@@ -26,7 +26,7 @@
struct event_base *libevent;
int
-LLVMFuzzerTestOneInput(const unsigned char *data, size_t size)
+LLVMFuzzerTestOneInput(const u_char *data, size_t size)
{
struct bufferevent *vpty[2];
struct window *w;
@@ -46,7 +46,12 @@ LLVMFuzzerTestOneInput(const unsigned char *data, size_t size)
wp->ictx = input_init(wp, vpty[0], NULL);
window_add_ref(w, __func__);
- input_parse_buffer(wp, (u_char*) data, size);
+ wp->fd = open("/dev/null", O_WRONLY);
+ if (wp->fd == -1)
+ errx(1, "open(\"/dev/null\") failed");
+ wp->event = bufferevent_new(wp->fd, NULL, NULL, NULL, NULL);
+
+ input_parse_buffer(wp, (u_char *)data, size);
while (cmdq_next(NULL) != 0)
;
error = event_base_loop(libevent, EVLOOP_NONBLOCK);
@@ -84,6 +89,7 @@ LLVMFuzzerInitialize(__unused int *argc, __unused char ***argv)
options_set_number(global_w_options, "monitor-bell", 0);
options_set_number(global_w_options, "allow-rename", 1);
options_set_number(global_options, "set-clipboard", 2);
+ socket_path = xstrdup("dummy");
return 0;
}