aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--sysdeps/posix/getaddrinfo.c2
2 files changed, 6 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 58dfee8..e5b24f6 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
2005-09-26 Ulrich Drepper <drepper@redhat.com>
+ [BZ #524]
+ * sysdeps/posix/getaddrinfo.c (match_prefix): Fix matching loop of
+ number of bits is multiple of 8.
+ Patch by Fredrik Tolf <fredrik@dolda2000.com>.
+
[BZ #516]
* elf/dl-load.c: Report failed loading due to ELF class mismatch
with better words.
diff --git a/sysdeps/posix/getaddrinfo.c b/sysdeps/posix/getaddrinfo.c
index d97b95b..4db98d9 100644
--- a/sysdeps/posix/getaddrinfo.c
+++ b/sysdeps/posix/getaddrinfo.c
@@ -1266,7 +1266,7 @@ match_prefix (const struct sockaddr_storage *ss, const struct prefixlist *list,
uint8_t *mask = list[idx].prefix.s6_addr;
uint8_t *val = in6->sin6_addr.s6_addr;
- while (bits > 8)
+ while (bits >= 8)
{
if (*mask != *val)
break;