From 6b5d9b971527f841205cb205fecc622b930a2ea5 Mon Sep 17 00:00:00 2001 From: Matheus Date: Sun, 7 Apr 2024 21:41:43 -0300 Subject: [PATCH] udp: poll --- kernel-src/io/net/udp.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/kernel-src/io/net/udp.c b/kernel-src/io/net/udp.c index 55dc5db1..27fcd18c 100644 --- a/kernel-src/io/net/udp.c +++ b/kernel-src/io/net/udp.c @@ -283,11 +283,22 @@ static void udp_destroy(socket_t *socket) { free(socket); } +static int udp_poll(socket_t *socket, polldata_t *data, int events) { + int revents = 0; + MUTEX_ACQUIRE(&socket->mutex, false); + + revents = internalpoll(socket, data, events); + + MUTEX_RELEASE(&socket->mutex); + return revents; +} + static socketops_t socketops = { .bind = udp_bind, .send = udp_send, .recv = udp_recv, - .destroy = udp_destroy + .destroy = udp_destroy, + .poll = udp_poll }; socket_t *udp_createsocket() {