]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
don't drop trailing dot in res_nquerydomain(..., name, NULL, ...)
authorAlexandre Oliva <aoliva@redhat.com>
Wed, 15 Oct 2014 06:52:43 +0000 (03:52 -0300)
committerAlexandre Oliva <aoliva@redhat.com>
Fri, 7 Nov 2014 09:18:53 +0000 (07:18 -0200)
If we drop it here, we will fail to detect a duplicate trailing dot
later on.  Retaining, OTOH, has no ill effects whatsoever, and it even
saves us the trouble of copying the domain name minus the trailing
dot, like we used to do.

for ChangeLog

PR 16469
* resolv/res_query.c (__libc_res_nquerydomain): Retain
        trailing dot.
* NEWS: Fixes 16469.

NEWS
resolv/res_query.c

diff --git a/NEWS b/NEWS
index 382d38dbdfd322cf66d0984f1e24279c6981435c..9c664a91ea12e11f8ff31936dc3675ec316f645d 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -9,8 +9,8 @@ Version 2.21
 
 * The following bugs are resolved with this release:
 
-  6652, 12926, 14138, 14171, 15215, 15884, 17266, 17344, 17363, 17370,
-  17371, 17411, 17460, 17485, 17501, 17508, 17522.
+  6652, 12926, 14138, 14171, 15215, 15884, 16649, 17266, 17344, 17363,
+  17370, 17371, 17411, 17460, 17485, 17501, 17508, 17522.
 \f
 Version 2.20
 
index e4ee2a60056e92b86a242e04905a521e3cf5cca2..338ad82411e7cd9a4fff64884658df9ef97e1e01 100644 (file)
@@ -561,10 +561,6 @@ __libc_res_nquerydomain(res_state statp,
                       name, domain?domain:"<Nil>", class, type);
 #endif
        if (domain == NULL) {
-               /*
-                * Check for trailing '.';
-                * copy without '.' if present.
-                */
                n = strlen(name);
 
                /* Decrement N prior to checking it against MAXDNAME
@@ -575,11 +571,7 @@ __libc_res_nquerydomain(res_state statp,
                        RES_SET_H_ERRNO(statp, NO_RECOVERY);
                        return (-1);
                }
-               if (name[n] == '.') {
-                       strncpy(nbuf, name, n);
-                       nbuf[n] = '\0';
-               } else
-                       longname = name;
+               longname = name;
        } else {
                n = strlen(name);
                d = strlen(domain);