diff options
-rw-r--r-- | include/osmocore/write_queue.h | 1 | ||||
-rw-r--r-- | src/write_queue.c | 3 |
2 files changed, 4 insertions, 0 deletions
diff --git a/include/osmocore/write_queue.h b/include/osmocore/write_queue.h index 64d4159a..ef244c32 100644 --- a/include/osmocore/write_queue.h +++ b/include/osmocore/write_queue.h @@ -35,6 +35,7 @@ struct write_queue { int (*read_cb)(struct bsc_fd *fd); int (*write_cb)(struct bsc_fd *fd, struct msgb *msg); + int (*except_cb)(struct bsc_fd *fd); }; void write_queue_init(struct write_queue *queue, int max_length); diff --git a/src/write_queue.c b/src/write_queue.c index a0ac2d6f..618a8c0b 100644 --- a/src/write_queue.c +++ b/src/write_queue.c @@ -32,6 +32,9 @@ int write_queue_bfd_cb(struct bsc_fd *fd, unsigned int what) if (what & BSC_FD_READ) queue->read_cb(fd); + if (what & BSC_FD_EXCEPT) + queue->except_cb(fd); + if (what & BSC_FD_WRITE) { struct msgb *msg; |