Update.
authorUlrich Drepper <drepper@redhat.com>
Thu, 19 Aug 2004 18:56:52 +0000 (18:56 +0000)
committerUlrich Drepper <drepper@redhat.com>
Thu, 19 Aug 2004 18:56:52 +0000 (18:56 +0000)
2004-08-19  Jakub Jelinek  <jakub@redhat.com>

* sysdeps/posix/getaddrinfo.c (gaih_inet): Cast canon to (char *)
to avoid warning.

* resolv/nss_dns/dns-canon.c (_nss_dns_getcanonname_r): Initialize
status to NSS_STATUS_UNAVAIL.

2004-08-19  Ulrich Drepper  <drepper@redhat.com>

* sysdeps/posix/getaddrinfo.c (gaih_inet): Use h->h_name in the
cannoname lookup since it has the FQDN even if the original NAME
value has not.

ChangeLog
resolv/nss_dns/dns-canon.c
sysdeps/posix/getaddrinfo.c

index 1e72af0..3a2a65e 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,17 @@
+2004-08-19  Jakub Jelinek  <jakub@redhat.com>
+
+       * sysdeps/posix/getaddrinfo.c (gaih_inet): Cast canon to (char *)
+       to avoid warning.
+
+       * resolv/nss_dns/dns-canon.c (_nss_dns_getcanonname_r): Initialize
+       status to NSS_STATUS_UNAVAIL.
+
+2004-08-19  Ulrich Drepper  <drepper@redhat.com>
+
+       * sysdeps/posix/getaddrinfo.c (gaih_inet): Use h->h_name in the
+       cannoname lookup since it has the FQDN even if the original NAME
+       value has not.
+
 2004-08-18  Ulrich Drepper  <drepper@redhat.com>
 
        * sysdeps/posix/getaddrinfo.c (gaih_inet): Store NAME parameter
index ae3f40b..91708df 100644 (file)
@@ -52,7 +52,7 @@ _nss_dns_getcanonname_r (const char *name, char *buffer, size_t buflen,
     querybuf *buf;
     unsigned char *ptr;
   } ansp = { .ptr = buf };
-  enum nss_status status;
+  enum nss_status status = NSS_STATUS_UNAVAIL;
   int qtypes[] = { ns_t_a, ns_t_aaaa };
 #define nqtypes (sizeof (qtypes) / sizeof (qtypes[0]))
 
index d72457a..2d89b4a 100644 (file)
@@ -576,7 +576,7 @@ gaih_inet (const char *name, const struct gaih_service *service,
 
       if (at->family == AF_UNSPEC && (req->ai_flags & AI_NUMERICHOST) == 0)
        {
-         struct hostent *h;
+         struct hostent *h = NULL;
          struct gaih_addrtuple **pat = &at;
          int no_data = 0;
          int no_inet6_data = 0;
@@ -656,8 +656,9 @@ gaih_inet (const char *name, const struct gaih_service *service,
                          char *buf = alloca (max_fqdn_len);
                          char *s;
 
-                         if (DL_CALL_FCT (cfct, (name, buf, max_fqdn_len,
-                                                 &s, &rc, &herrno))
+                         if (DL_CALL_FCT (cfct, (h->h_name ?: name, buf,
+                                                 max_fqdn_len, &s, &rc,
+                                                 &herrno))
                              == NSS_STATUS_SUCCESS)
                            canon = s;
                          else
@@ -856,7 +857,7 @@ gaih_inet (const char *name, const struct gaih_service *service,
            (*pai)->ai_addr = (void *) (*pai + 1);
 
            /* We only add the canonical name once.  */
-           (*pai)->ai_canonname = canon;
+           (*pai)->ai_canonname = (char *) canon;
            canon = NULL;
 
 #if SALEN