From 57027d035671f7b8ef98539c31712f27a2a6e87c Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Wed, 21 Mar 2018 20:30:56 +0100 Subject: [PATCH] dhcp-server: don't propagate erros up the event loop If we can't send a message this is no reason to completely abort the event handler. Issue identified by Nandor Han , Sebastian Reichel . Replaces: #8525 --- src/libsystemd-network/sd-dhcp-server.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/libsystemd-network/sd-dhcp-server.c b/src/libsystemd-network/sd-dhcp-server.c index 7cc25ef82a9..25f5b378bc4 100644 --- a/src/libsystemd-network/sd-dhcp-server.c +++ b/src/libsystemd-network/sd-dhcp-server.c @@ -964,6 +964,7 @@ static int server_receive_message(sd_event_source *s, int fd, }; struct cmsghdr *cmsg; ssize_t buflen, len; + int r; assert(server); @@ -1003,7 +1004,11 @@ static int server_receive_message(sd_event_source *s, int fd, } } - return dhcp_server_handle_message(server, message, (size_t)len); + r = dhcp_server_handle_message(server, message, (size_t) len); + if (r < 0) + log_dhcp_server_errno(server, r, "Couldn't process incoming message: %m"); + + return 0; } int sd_dhcp_server_start(sd_dhcp_server *server) { -- 2.47.3