]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
sd-dhcp6-client: fix error handling
authorYu Watanabe <watanabe.yu+github@gmail.com>
Tue, 30 Nov 2021 08:58:40 +0000 (17:58 +0900)
committerYu Watanabe <watanabe.yu+github@gmail.com>
Tue, 30 Nov 2021 13:37:21 +0000 (22:37 +0900)
src/libsystemd-network/sd-dhcp6-client.c

index 4035a1c784946773b43cc6722f94e0d8189f72fa..663e2d64b4b1b011665d4e2eb0d8d96e37840804 100644 (file)
@@ -1479,10 +1479,10 @@ static int client_receive_message(
         len = recvmsg_safe(fd, &msg, MSG_DONTWAIT);
         if (len < 0) {
                 /* see comment above for why we shouldn't error out on ENETDOWN. */
-                if (IN_SET(errno, EAGAIN, EINTR, ENETDOWN))
+                if (IN_SET(len, -EAGAIN, -EINTR, -ENETDOWN))
                         return 0;
 
-                return log_dhcp6_client_errno(client, errno, "Could not receive message from UDP socket: %m");
+                return log_dhcp6_client_errno(client, len, "Could not receive message from UDP socket: %m");
 
         }
         if ((size_t) len < sizeof(DHCP6Message)) {