diff --git a/ChangeLog b/ChangeLog index d3647a8613..97461c2398 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2006-10-16 Ulrich Drepper + + [BZ #3369] + * sysdeps/posix/getaddrinfo.c (rfc3484_sort): Fix typos in rules 4 + and 7. + 2006-10-13 Ulrich Drepper * elf/dl-minimal.c (realloc): Optimize last patch. diff --git a/sysdeps/posix/getaddrinfo.c b/sysdeps/posix/getaddrinfo.c index 9387e20db2..84a6293365 100644 --- a/sysdeps/posix/getaddrinfo.c +++ b/sysdeps/posix/getaddrinfo.c @@ -1395,10 +1395,10 @@ rfc3484_sort (const void *p1, const void *p2) { if (!(a1->source_addr_flags & in6ai_homeaddress) && (a2->source_addr_flags & in6ai_homeaddress)) - return -1; + return 1; if ((a1->source_addr_flags & in6ai_homeaddress) && !(a2->source_addr_flags & in6ai_homeaddress)) - return 1; + return -1; } /* Rule 5: Prefer matching label. */ @@ -1435,11 +1435,11 @@ rfc3484_sort (const void *p1, const void *p2) if (a1->got_source_addr) { if (!(a1->source_addr_flags & in6ai_temporary) - && (a1->source_addr_flags & in6ai_temporary)) + && (a2->source_addr_flags & in6ai_temporary)) return -1; if ((a1->source_addr_flags & in6ai_temporary) - && !(a1->source_addr_flags & in6ai_temporary)) - return -1; + && !(a2->source_addr_flags & in6ai_temporary)) + return 1; /* XXX Do we need to check anything beside temporary addresses? */ }