Emit pre/post callbacks while fuzzing
This commit is contained in:
@@ -13,6 +13,10 @@ struct us_loop_t {
|
|||||||
|
|
||||||
/* The list of closed sockets */
|
/* The list of closed sockets */
|
||||||
struct us_socket_t *close_list;
|
struct us_socket_t *close_list;
|
||||||
|
|
||||||
|
/* Post and pre callbacks */
|
||||||
|
void (*pre_cb)(struct us_loop_t *loop);
|
||||||
|
void (*post_cb)(struct us_loop_t *loop);
|
||||||
};
|
};
|
||||||
|
|
||||||
struct us_loop_t *us_create_loop(void *hint, void (*wakeup_cb)(struct us_loop_t *loop), void (*pre_cb)(struct us_loop_t *loop), void (*post_cb)(struct us_loop_t *loop), unsigned int ext_size) {
|
struct us_loop_t *us_create_loop(void *hint, void (*wakeup_cb)(struct us_loop_t *loop), void (*pre_cb)(struct us_loop_t *loop), void (*post_cb)(struct us_loop_t *loop), unsigned int ext_size) {
|
||||||
@@ -21,6 +25,9 @@ struct us_loop_t *us_create_loop(void *hint, void (*wakeup_cb)(struct us_loop_t
|
|||||||
loop->listen_socket = 0;
|
loop->listen_socket = 0;
|
||||||
loop->close_list = 0;
|
loop->close_list = 0;
|
||||||
|
|
||||||
|
loop->pre_cb = pre_cb;
|
||||||
|
loop->post_cb = post_cb;
|
||||||
|
|
||||||
return loop;
|
return loop;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -215,6 +222,9 @@ void us_loop_read_mocked_data(struct us_loop_t *loop, char *data, unsigned int s
|
|||||||
/* We are unwound so let's free all closed polls here */
|
/* We are unwound so let's free all closed polls here */
|
||||||
|
|
||||||
|
|
||||||
|
/* Call pre_cb */
|
||||||
|
loop->pre_cb(loop);
|
||||||
|
|
||||||
/* We have one listen socket */
|
/* We have one listen socket */
|
||||||
int socket_ext_size = loop->listen_socket->socket_ext_size;
|
int socket_ext_size = loop->listen_socket->socket_ext_size;
|
||||||
|
|
||||||
@@ -282,4 +292,7 @@ done:
|
|||||||
|
|
||||||
/* Free the socket */
|
/* Free the socket */
|
||||||
free(s);
|
free(s);
|
||||||
|
|
||||||
|
/* Call post_cb */
|
||||||
|
loop->post_cb(loop);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user