diff options
author | Ulrich Drepper <drepper@redhat.com> | 2004-09-30 02:24:51 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2004-09-30 02:24:51 +0000 |
commit | f7e7a396812f5e6a6ec49ad84204d334630964a0 (patch) | |
tree | d1a47d6911b5992497cc8aa30d392e7c0f175e12 /sunrpc | |
parent | 04c785b27fd35c740cc9b759b324adb8d6ab9747 (diff) | |
download | glibc-f7e7a396812f5e6a6ec49ad84204d334630964a0.zip glibc-f7e7a396812f5e6a6ec49ad84204d334630964a0.tar.gz glibc-f7e7a396812f5e6a6ec49ad84204d334630964a0.tar.bz2 |
Update.
* grp/initgroups.c: Move compat_call implementation...
* grp/compat-initgroups.c: ...to here. New file.
* grp/Makefile (distribute): Add compat-initgroups.c.
(CFLAGS-initgroups.c): Add -DUSE_NSCD=1.
* mscd/initgrcache.c: New file.
* nscd/nscd_initgroups.c: New file.
* nscd/Makefile (routines): Add nscd_initgroups.
(nscd-modules): Add initgrcache.
* nscd/cache.c (prune_cache): Add support for INITGROUPS entries.
* nscd/connections.c: Handle INITGROUPS requests.
* nscd/nscd-client.h: Define INITGROUPS, initgr_response_header.
Add initgrdata element to struct datahead. Fix typo in comment.
* nscd/nscd_proto.h: Declare __nscd_getgrouplist. Fix parameter
type in __nscd_getgrgrid_r.
* nscd/selinux.c (perms): Add INITGROUPS entry.
* nscd/nscd_getai.c: No need to include <sys/mman.h>.
* sunrpc/get_myaddr.c (get_myaddress): Account for interfaces without
assigned addresses.
* sunrpc/pmap_clnt.c (__get_myaddress): Likewise.
* sunrpc/pmap_rmt.c (getbroadcastnets): Likewise.
* sunrpc/clnt_udp.c (is_network_up): Likewise.
Diffstat (limited to 'sunrpc')
-rw-r--r-- | sunrpc/clnt_udp.c | 1 | ||||
-rw-r--r-- | sunrpc/get_myaddr.c | 4 | ||||
-rw-r--r-- | sunrpc/pmap_clnt.c | 4 | ||||
-rw-r--r-- | sunrpc/pmap_rmt.c | 1 |
4 files changed, 8 insertions, 2 deletions
diff --git a/sunrpc/clnt_udp.c b/sunrpc/clnt_udp.c index 1836ff3..f3787dd 100644 --- a/sunrpc/clnt_udp.c +++ b/sunrpc/clnt_udp.c @@ -244,6 +244,7 @@ is_network_up (int sock) while (run != NULL) { if ((run->ifa_flags & IFF_UP) != 0 + && run->ifa_addr != NULL && run->ifa_addr->sa_family == AF_INET) break; diff --git a/sunrpc/get_myaddr.c b/sunrpc/get_myaddr.c index c0beee9..4449c53 100644 --- a/sunrpc/get_myaddr.c +++ b/sunrpc/get_myaddr.c @@ -76,7 +76,9 @@ get_myaddress (struct sockaddr_in *addr) run = ifa; while (run != NULL) { - if ((run->ifa_flags & IFF_UP) && run->ifa_addr->sa_family == AF_INET + if ((run->ifa_flags & IFF_UP) + && run->ifa_addr != NULL + && run->ifa_addr->sa_family == AF_INET && (!(run->ifa_flags & IFF_LOOPBACK) || (loopback == 1 && (run->ifa_flags & IFF_LOOPBACK)))) { diff --git a/sunrpc/pmap_clnt.c b/sunrpc/pmap_clnt.c index aa5740c..3e42960 100644 --- a/sunrpc/pmap_clnt.c +++ b/sunrpc/pmap_clnt.c @@ -70,7 +70,9 @@ __get_myaddress (struct sockaddr_in *addr) run = ifa; while (run != NULL) { - if ((run->ifa_flags & IFF_UP) && run->ifa_addr->sa_family == AF_INET + if ((run->ifa_flags & IFF_UP) + && run->ifa_addr != NULL + && run->ifa_addr->sa_family == AF_INET && ((run->ifa_flags & IFF_LOOPBACK) || loopback == 0)) { *addr = *((struct sockaddr_in *) run->ifa_addr); diff --git a/sunrpc/pmap_rmt.c b/sunrpc/pmap_rmt.c index 4ff707a..644d503 100644 --- a/sunrpc/pmap_rmt.c +++ b/sunrpc/pmap_rmt.c @@ -191,6 +191,7 @@ getbroadcastnets (struct in_addr *addrs, int naddrs) { if ((run->ifa_flags & IFF_BROADCAST) != 0 && (run->ifa_flags & IFF_UP) != 0 + && run->ifa_addr != NULL && run->ifa_addr->sa_family == AF_INET) /* Copy the broadcast address. */ addrs[i++] = ((struct sockaddr_in *) run->ifa_broadaddr)->sin_addr; |