From 662e0109255fd5f4fe6386a79c7255c515d4c7f7 Mon Sep 17 00:00:00 2001 From: Matheus Date: Wed, 10 Apr 2024 19:52:20 -0300 Subject: [PATCH] socket: move pollheader init from sockfs to socket --- kernel-src/fs/sockfs.c | 1 - kernel-src/io/net/socket.c | 8 +++++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/kernel-src/fs/sockfs.c b/kernel-src/fs/sockfs.c index c35d4b12..df3edbcb 100644 --- a/kernel-src/fs/sockfs.c +++ b/kernel-src/fs/sockfs.c @@ -198,7 +198,6 @@ int sockfs_newsocket(vnode_t **nodep, socket_t *socket) { node->socket = socket; *nodep = vnode; - POLL_INITHEADER(&socket->pollheader); return 0; } diff --git a/kernel-src/io/net/socket.c b/kernel-src/io/net/socket.c index 6ffb99ca..58059a16 100644 --- a/kernel-src/io/net/socket.c +++ b/kernel-src/io/net/socket.c @@ -8,5 +8,11 @@ static socket_t *(*createsocket[])() = { socket_t *socket_create(int type) { __assert(type < sizeof(createsocket) / sizeof(createsocket[0])); - return createsocket[type](); + socket_t *socket = createsocket[type](); + if (socket == NULL) + return NULL; + + POLL_INITHEADER(&socket->pollheader); + + return socket; }