aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndreas Eversberg <jolly@eversberg.eu>2024-03-07 15:43:13 +0100
committerlaforge <laforge@osmocom.org>2024-03-08 08:08:54 +0000
commit28c97a72380387d9996e5550a3ca3a01c95f95fc (patch)
tree41ff3c21bb0ec0645ab1cd9d0690555757a14c00
parent8b7af448d624fba187834c833e8ea8d316a36369 (diff)
osmo_io_poll: Use -errno as result on write error
This was done for read error in a previous patch. This is required because osmo_io_uring does not support errno, instead it uses the result code. To have a unified API, set the result code equally. Related: OS#5751 Change-Id: I405094449a6644db37534757f2fbccbcff982f23
-rw-r--r--src/core/osmo_io_poll.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/core/osmo_io_poll.c b/src/core/osmo_io_poll.c
index 2e726d9f..fae552cb 100644
--- a/src/core/osmo_io_poll.c
+++ b/src/core/osmo_io_poll.c
@@ -84,7 +84,7 @@ static void iofd_poll_ofd_cb_recvmsg_sendmsg(struct osmo_fd *ofd, unsigned int w
struct iofd_msghdr *msghdr = iofd_txqueue_dequeue(iofd);
if (msghdr) {
rc = sendmsg(ofd->fd, &msghdr->hdr, msghdr->flags);
- iofd_handle_send_completion(iofd, rc, msghdr);
+ iofd_handle_send_completion(iofd, (rc < 0 && errno > 0) ? -errno : rc, msghdr);
} else {
/* Socket is writable, but we have no data to send. A non-blocking/async
connect() is signalled this way. */