summaryrefslogtreecommitdiff
path: root/sysdeps/unix/sysv/linux
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2003-11-13 23:39:31 +0000
committerUlrich Drepper <drepper@redhat.com>2003-11-13 23:39:31 +0000
commit25ce4c6b9e6facade00a35eec94780c3c67cf249 (patch)
tree250bffc9df5e81e55e84785f2df6bbccb5ec945b /sysdeps/unix/sysv/linux
parenta8067e8f899dc2842aba0780a6943bacb8247c8c (diff)
Update.
2003-11-04 Ulrich Drepper <drepper@redhat.com> * sysdeps/unix/sysv/linux/ifaddrs.c: Make sure it's the kernel who sends the netlink data. * sysdeps/unix/sysv/linux/check_pf.c: Likewise.
Diffstat (limited to 'sysdeps/unix/sysv/linux')
-rw-r--r--sysdeps/unix/sysv/linux/check_pf.c2
-rw-r--r--sysdeps/unix/sysv/linux/ifaddrs.c3
2 files changed, 3 insertions, 2 deletions
diff --git a/sysdeps/unix/sysv/linux/check_pf.c b/sysdeps/unix/sysv/linux/check_pf.c
index 83a337c111..69924769bc 100644
--- a/sysdeps/unix/sysv/linux/check_pf.c
+++ b/sysdeps/unix/sysv/linux/check_pf.c
@@ -86,7 +86,7 @@ make_request (int fd, pid_t pid, bool *seen_ipv4, bool *seen_ipv6)
NLMSG_OK (nlmh, (size_t) read_len);
nlmh = (struct nlmsghdr *) NLMSG_NEXT (nlmh, read_len))
{
- if ((pid_t) nlmh->nlmsg_pid != pid
+ if (nladdr.nl_pid != 0 || (pid_t) nlmh->nlmsg_pid != pid
|| nlmh->nlmsg_seq != req.nlh.nlmsg_seq)
continue;
diff --git a/sysdeps/unix/sysv/linux/ifaddrs.c b/sysdeps/unix/sysv/linux/ifaddrs.c
index 837bfca664..439e26f76c 100644
--- a/sysdeps/unix/sysv/linux/ifaddrs.c
+++ b/sysdeps/unix/sysv/linux/ifaddrs.c
@@ -186,7 +186,8 @@ netlink_receive (struct netlink_handle *h)
NLMSG_OK (nlmh, (size_t) read_len);
nlmh = (struct nlmsghdr *) NLMSG_NEXT (nlmh, read_len))
{
- if ((pid_t) nlmh->nlmsg_pid != h->pid || nlmh->nlmsg_seq != h->seq)
+ if (nladdr.nl_pid != 0 || (pid_t) nlmh->nlmsg_pid != h->pid
+ || nlmh->nlmsg_seq != h->seq)
continue;
if (nlmh->nlmsg_type == NLMSG_DONE)