mirror of
https://github.com/AuxXxilium/eudev.git
synced 2025-02-20 08:37:55 +07:00
libudev: monitor - fix error path in send_device
Return -errno rather than -1 in case sendmsg() fails. Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
This commit is contained in:
parent
93d2bf9fcb
commit
e5df4c6a52
@ -749,12 +749,20 @@ int udev_monitor_send_device(struct udev_monitor *udev_monitor,
|
||||
* If we send to a multicast group, we will get
|
||||
* ECONNREFUSED, which is expected.
|
||||
*/
|
||||
if (destination != NULL)
|
||||
if (destination)
|
||||
smsg.msg_name = &destination->snl;
|
||||
else
|
||||
smsg.msg_name = &udev_monitor->snl_destination;
|
||||
smsg.msg_namelen = sizeof(struct sockaddr_nl);
|
||||
count = sendmsg(udev_monitor->sock, &smsg, 0);
|
||||
if (count < 0) {
|
||||
if (!destination && errno == ECONNREFUSED) {
|
||||
log_debug("passed unknown number of bytes to netlink monitor %p", udev_monitor);
|
||||
return 0;
|
||||
} else
|
||||
return -errno;
|
||||
}
|
||||
|
||||
log_debug("passed %zi bytes to netlink monitor %p", count, udev_monitor);
|
||||
return count;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user