summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/lib/krb5/os/ChangeLog6
-rw-r--r--src/lib/krb5/os/locate_kdc.c4
2 files changed, 10 insertions, 0 deletions
diff --git a/src/lib/krb5/os/ChangeLog b/src/lib/krb5/os/ChangeLog
index cedf185ee6..09d59fb042 100644
--- a/src/lib/krb5/os/ChangeLog
+++ b/src/lib/krb5/os/ChangeLog
@@ -1,3 +1,9 @@
+2001-09-29 Ken Raeburn <raeburn@mit.edu>
+
+ * locate_kdc.c (add_host_to_list): If address family in sockaddr
+ structure is zero, copy it in from the addrinfo structure. Bug
+ workaround for AIX 4.3.3.
+
2001-09-28 Ken Raeburn <raeburn@mit.edu>
* localaddr.c: Retrieve IPv6 addresses on Solaris 8.
diff --git a/src/lib/krb5/os/locate_kdc.c b/src/lib/krb5/os/locate_kdc.c
index 52a564bd72..9908bae687 100644
--- a/src/lib/krb5/os/locate_kdc.c
+++ b/src/lib/krb5/os/locate_kdc.c
@@ -279,6 +279,10 @@ add_host_to_list (struct addrlist *lp, const char *hostname,
if (err)
return translate_ai_error (err);
for (a = addrs; a; a = a->ai_next) {
+ /* AIX 4.3.3 is broken. */
+ if (a->ai_addr->sa_family == 0)
+ a->ai_addr->sa_family = a->ai_family;
+
set_port_num (a->ai_addr, port);
err = add_addrinfo_to_list (lp, a);
if (err)