diff --git a/ChangeLog b/ChangeLog index b146509d2a..8263ae002e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2003-11-04 Ulrich Drepper + + * 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. + 2003-11-13 Jakub Jelinek * posix/regcomp.c (optimize_utf8): Optimize even if SIMPLE_BRACKET diff --git a/posix/rxspencer/tests b/posix/rxspencer/tests index acd4623c74..8e93133d24 100644 --- a/posix/rxspencer/tests +++ b/posix/rxspencer/tests @@ -295,7 +295,8 @@ a[[.x. &C EBRACK a[[.x.] &C EBRACK a[[.x.]] & ax ax a[[.x,.]] &C ECOLLATE -# XXX Doesn't work yet. +# This test is invalid. "one" is no collating symbol in any standardized +# locale. # a[[.one.]]b & a1b a1b a[[.notdef.]]b &C ECOLLATE a[[.].]]b & a]b a]b @@ -327,7 +328,8 @@ a[[=b &C EBRACK a[[=b= &C EBRACK a[[=b=] &C EBRACK a[[=b,=]] &C ECOLLATE -# XXX Doesn't work yet. +# This test is invalid. "one" is no collating symbol in any standardized +# locale. #a[[=one=]]b & a1b a1b # complexities diff --git a/posix/tst-rxspencer.c b/posix/tst-rxspencer.c index eed3e1820b..a04791c1cc 100644 --- a/posix/tst-rxspencer.c +++ b/posix/tst-rxspencer.c @@ -384,7 +384,7 @@ main (int argc, char **argv) {NULL, 0, NULL, 0 } }; - while (getopt_long (argc, argv, "u", options, NULL) >= 0); + while (getopt_long (argc, argv, "", options, NULL) >= 0); if (optind + 1 != argc) { 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)