You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafficserver.apache.org by zw...@apache.org on 2010/10/08 00:48:15 UTC

svn commit: r1005658 - in /trafficserver/traffic/trunk: CHANGES iocore/dns/DNS.cc

Author: zwoop
Date: Thu Oct  7 22:48:15 2010
New Revision: 1005658

URL: http://svn.apache.org/viewvc?rev=1005658&view=rev
Log:
Fix problems with proxy.config.dns.validate_query_name when we add on "search domains" to the url (e.g. "localhost" -> "localhost.ogre.com").

Modified:
    trafficserver/traffic/trunk/CHANGES
    trafficserver/traffic/trunk/iocore/dns/DNS.cc

Modified: trafficserver/traffic/trunk/CHANGES
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/CHANGES?rev=1005658&r1=1005657&r2=1005658&view=diff
==============================================================================
--- trafficserver/traffic/trunk/CHANGES (original)
+++ trafficserver/traffic/trunk/CHANGES Thu Oct  7 22:48:15 2010
@@ -2,6 +2,13 @@
 
 Changes with Apache Traffic Server 2.1.4
 
+  *) Build TS with clang (author: Igor Galic) [TS-427].
+
+  *) Better support and handling of DNS round-robin options (author: Zhao
+   Yongming) [TS-313].
+
+  *) Make it possible to "write" Content-Length headers > 2GB [TS-471].
+
   *) Better support for Age: headers, and avoiding overflows [TS-470].
 
   *) Added a configure option to size the API stats "slots". The new

Modified: trafficserver/traffic/trunk/iocore/dns/DNS.cc
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/iocore/dns/DNS.cc?rev=1005658&r1=1005657&r2=1005658&view=diff
==============================================================================
--- trafficserver/traffic/trunk/iocore/dns/DNS.cc (original)
+++ trafficserver/traffic/trunk/iocore/dns/DNS.cc Thu Oct  7 22:48:15 2010
@@ -944,6 +944,7 @@ DNSEntry::mainEvent(int event, Event * e
       if (domains && !strnchr(qname, '.', MAXDNAME)) {
         qname[qname_len] = '.';
         ink_strncpy(qname + qname_len + 1, *domains, MAXDNAME - (qname_len + 1));
+        qname_len = strlen(qname);
         ++domains;
       }
       Debug("dns", "enqueing query %s", qname);
@@ -1037,8 +1038,10 @@ dns_result(DNSHandler * h, DNSEntry * e,
           if (e->qname[e->qname_len - 1] != '.') {
             e->qname[e->qname_len] = '.';
             ink_strncpy(e->qname + e->qname_len + 1, *e->domains, MAXDNAME - (e->qname_len + 1));
+            e->qname_len = strlen(e->qname);
           } else {
             ink_strncpy(e->qname + e->qname_len, *e->domains, MAXDNAME - e->qname_len);
+            e->qname_len = strlen(e->qname);
           }
         } else {
           if (e->qname_len + strlen(*e->domains) + 2 > MAXDNAME) {
@@ -1047,6 +1050,7 @@ dns_result(DNSHandler * h, DNSEntry * e,
           }
           e->qname[e->qname_len] = '.';
           ink_strncpy(e->qname + e->qname_len + 1, *e->domains, MAXDNAME - (e->qname_len + 1));
+          e->qname_len = strlen(e->qname);
         }
         ++(e->domains);
         e->retries = dns_retries;
@@ -1276,7 +1280,7 @@ dns_process(DNSHandler * handler, HostEn
       // case sensitivity.
       if ((qlen != rlen) || (strncasecmp(e->qname, (const char*)bp, qlen) != 0)) {
         // Bad mojo, forged?
-        Warning("received DNS response with query name of %s, but response query name is %s", e->qname, bp);
+        Warning("received DNS response with query name of '%s', but response query name is '%s'", e->qname, bp);
         goto Lerror;
       } else {
         Debug("dns", "query name validated properly for %s", e->qname);