summaryrefslogtreecommitdiff
path: root/src/libsystemd-rtnl
diff options
context:
space:
mode:
authorTom Gundersen <teg@jklm.no>2013-12-03 23:55:45 +0100
committerTom Gundersen <teg@jklm.no>2013-12-04 14:15:13 +0100
commita02113d2ea96467dc9f1ec196d5f62a34dd99314 (patch)
treed0e5ff08d978c04119b52e95b487ab29641b35c9 /src/libsystemd-rtnl
parente63bb33d71a524e84206ef94ade3eba441e186c5 (diff)
rtnl: don't ignore broadcast messages
Diffstat (limited to 'src/libsystemd-rtnl')
-rw-r--r--src/libsystemd-rtnl/rtnl-message.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/libsystemd-rtnl/rtnl-message.c b/src/libsystemd-rtnl/rtnl-message.c
index b2b7feb3c8..06c7622f7c 100644
--- a/src/libsystemd-rtnl/rtnl-message.c
+++ b/src/libsystemd-rtnl/rtnl-message.c
@@ -615,8 +615,8 @@ int socket_read_message(sd_rtnl *nl, sd_rtnl_message **ret) {
else if ((size_t) k < sizeof(struct nlmsghdr) ||
(size_t) k < m->hdr->nlmsg_len)
k = -EIO; /* too small (we do accept too big though) */
- else if (m->hdr->nlmsg_pid != nl->sockaddr.nl.nl_pid)
- k = 0; /* not for us */
+ else if (m->hdr->nlmsg_pid && m->hdr->nlmsg_pid != nl->sockaddr.nl.nl_pid)
+ k = 0; /* not broadcast and not for us */
if (k > 0)
switch (m->hdr->nlmsg_type) {