aboutsummaryrefslogtreecommitdiff
path: root/sysdeps
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2007-08-29 16:50:11 +0000
committerUlrich Drepper <drepper@redhat.com>2007-08-29 16:50:11 +0000
commitde4d8563645b6bd6e8085a2e29b1f6e04bf7058c (patch)
treecadf812b4d770b9e187cb9fa490e188b3f36adc7 /sysdeps
parentf3c54060af56e255844545fb566b83fcd6e9e9f5 (diff)
downloadglibc-de4d8563645b6bd6e8085a2e29b1f6e04bf7058c.zip
glibc-de4d8563645b6bd6e8085a2e29b1f6e04bf7058c.tar.gz
glibc-de4d8563645b6bd6e8085a2e29b1f6e04bf7058c.tar.bz2
* sysdeps/unix/sysv/linux/check_pf.c (IFA_F_OPTIMISTIC): Define to
zero if not defined. (make_request): Recognize optimistic addresses and treat them like deprecated addresses. Reported by Neil Horman <nhorman@redhat.com>.
Diffstat (limited to 'sysdeps')
-rw-r--r--sysdeps/unix/sysv/linux/check_pf.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/sysdeps/unix/sysv/linux/check_pf.c b/sysdeps/unix/sysv/linux/check_pf.c
index 4c222f1..df7cbb1 100644
--- a/sysdeps/unix/sysv/linux/check_pf.c
+++ b/sysdeps/unix/sysv/linux/check_pf.c
@@ -41,6 +41,9 @@
#ifndef IFA_F_HOMEADDRESS
# define IFA_F_HOMEADDRESS 0
#endif
+#ifndef IFA_F_OPTIMISTIC
+# define IFA_F_OPTIMISTIC 0
+#endif
static int
@@ -203,10 +206,13 @@ make_request (int fd, pid_t pid, bool *seen_ipv4, bool *seen_ipv6,
if (ifam->ifa_flags & (IFA_F_DEPRECATED
| IFA_F_TEMPORARY
- | IFA_F_HOMEADDRESS))
+ | IFA_F_HOMEADDRESS
+ | IFA_F_OPTIMISTIC))
{
struct in6ailist *newp = alloca (sizeof (*newp));
- newp->info.flags = (((ifam->ifa_flags & IFA_F_DEPRECATED)
+ newp->info.flags = (((ifam->ifa_flags
+ & (IFA_F_DEPRECATED
+ | IFA_F_OPTIMISTIC))
? in6ai_deprecated : 0)
| ((ifam->ifa_flags
& IFA_F_TEMPORARY)