Author: igalic
Date: Thu Sep 22 03:52:35 2011
New Revision: 1173947
URL: http://svn.apache.org/viewvc?rev=1173947&view=rev
Log:
TS-953: consolidate string copy/concat for the iocore/dns.
Modified:
trafficserver/traffic/trunk/iocore/dns/DNS.cc
trafficserver/traffic/trunk/iocore/dns/SRV.cc
trafficserver/traffic/trunk/iocore/dns/SRV.h
trafficserver/traffic/trunk/iocore/dns/test_I_DNS.cc
Modified: trafficserver/traffic/trunk/iocore/dns/DNS.cc
URL:
http://svn.apache.org/viewvc/trafficserver/traffic/trunk/iocore/dns/DNS.cc?rev=1173947&r1=1173946&r2=1173947&view=diff
==============================================================================
--- trafficserver/traffic/trunk/iocore/dns/DNS.cc (original)
+++ trafficserver/traffic/trunk/iocore/dns/DNS.cc Thu Sep 22 03:52:35 2011
@@ -150,7 +150,7 @@ make_ipv4_ptr(in_addr_t addr, char *buff
*p++ = ((u[0] / 10) % 10) + '0';
*p++ = u[0] % 10 + '0';
*p++ = '.';
- ink_strncpy(p, "in-addr.arpa", MAXDNAME - (p - buffer + 1));
+ ink_strlcpy(p, "in-addr.arpa", MAXDNAME - (p - buffer + 1));
}
void
@@ -168,7 +168,7 @@ make_ipv6_ptr(in6_addr const* addr, char
*p++ = '.';
}
- ink_strncpy(p, "ip6.arpa", MAXDNAME - (p - buffer + 1));
+ ink_strlcpy(p, "ip6.arpa", MAXDNAME - (p - buffer + 1));
}
// Public functions
@@ -389,8 +389,7 @@ DNSEntry::init(const char *x, int len, i
qname_len = len;
qname[len] = 0;
} else {
- strncpy(qname, x, MAXDNAME);
- qname[MAXDNAME - 1] = '\0';
+ ink_strlcpy(qname, x, MAXDNAME);
qname_len = strlen(qname);
}
} else { //T_PTR
@@ -1053,7 +1052,7 @@ DNSEntry::mainEvent(int event, Event *e)
domains = dnsH->m_res->dnsrch;
if (domains && !strnchr(qname, '.', MAXDNAME)) {
qname[qname_len] = '.';
- ink_strncpy(qname + qname_len + 1, *domains, MAXDNAME - (qname_len +
1));
+ ink_strlcpy(qname + qname_len + 1, *domains, MAXDNAME - (qname_len +
1));
qname_len = strlen(qname);
++domains;
}
@@ -1148,10 +1147,10 @@ dns_result(DNSHandler *h, DNSEntry *e, H
}
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));
+ ink_strlcpy(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);
+ ink_strlcpy(e->qname + e->qname_len, *e->domains, MAXDNAME -
e->qname_len);
e->qname_len = strlen(e->qname);
}
} else {
@@ -1160,7 +1159,7 @@ dns_result(DNSHandler *h, DNSEntry *e, H
goto LnextDomain;
}
e->qname[e->qname_len] = '.';
- ink_strncpy(e->qname + e->qname_len + 1, *e->domains, MAXDNAME -
(e->qname_len + 1));
+ ink_strlcpy(e->qname + e->qname_len + 1, *e->domains, MAXDNAME -
(e->qname_len + 1));
e->qname_len = strlen(e->qname);
}
++(e->domains);
@@ -1404,7 +1403,7 @@ dns_process(DNSHandler *handler, HostEnt
if (local_num_entries >= DEFAULT_NUM_TRY_SERVER) {
if ((attempt_num_entries % 50) == 0) {
try_servers = (try_servers + 1) % SIZE(try_server_names);
- strncpy(try_server_names[try_servers], e->qname, strlen(e->qname));
+ ink_strlcpy(try_server_names[try_servers], e->qname, MAXDNAME);
memset(&try_server_names[try_servers][strlen(e->qname)], 0, 1);
attempt_num_entries = 0;
}
@@ -1412,7 +1411,7 @@ dns_process(DNSHandler *handler, HostEnt
} else {
// fill up try_server_names for try_primary_named
try_servers = local_num_entries++;
- strncpy(try_server_names[try_servers], e->qname, strlen(e->qname));
+ ink_strlcpy(try_server_names[try_servers], e->qname, MAXDNAME);
memset(&try_server_names[try_servers][strlen(e->qname)], 0, 1);
}
@@ -1467,7 +1466,7 @@ dns_process(DNSHandler *handler, HostEnt
++error;
break;
}
- ink_strncpy((char *) bp, (char *) tbuf, buflen);
+ ink_strlcpy((char *) bp, (char *) tbuf, buflen);
bp += n;
buflen -= n;
Debug("dns", "received cname = %s", tbuf);
@@ -1574,7 +1573,7 @@ dns_process(DNSHandler *handler, HostEnt
//
if (!buf->ent.h_name) {
Debug("dns", "inserting name = %s", e->qname);
- ink_strncpy((char *) bp, e->qname, sizeof(buf->hostbuf) - (bp -
buf->hostbuf));
+ ink_strlcpy((char *) bp, e->qname, sizeof(buf->hostbuf) - (bp -
buf->hostbuf));
buf->ent.h_name = (char *) bp;
}
dns_result(handler, e, buf, retry);
Modified: trafficserver/traffic/trunk/iocore/dns/SRV.cc
URL:
http://svn.apache.org/viewvc/trafficserver/traffic/trunk/iocore/dns/SRV.cc?rev=1173947&r1=1173946&r2=1173947&view=diff
==============================================================================
--- trafficserver/traffic/trunk/iocore/dns/SRV.cc (original)
+++ trafficserver/traffic/trunk/iocore/dns/SRV.cc Thu Sep 22 03:52:35 2011
@@ -1,6 +1,6 @@
/** @file
- A brief file description
+ Support for SRV records
@section license License
@@ -19,19 +19,15 @@
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
- */
-
-/*
-
- indent -ncs -nut -npcs -l 132 -br SRV.cc
+ @section description
Support for SRV records
http://www.faqs.org/rfcs/rfc2782.html
http://www.nongnu.org/ruli/
http://libsrv.cvs.sourceforge.net/libsrv/libsrv/src/libsrv.c
+ */
-*/
#include "P_DNS.h"
@@ -128,8 +124,7 @@ SRVHosts::getWeightedHost(char *ret_val)
Debug("dns_srv", "using SRV record of: pri: %d, wei: %d, port: %d, host: %s",
i->getPriority(), i->getWeight(), i->getPort(), i->getHost());
- ink_strncpy(ret_val, i->getHost(), MAXDNAME);
- ret_val[MAXDNAME - 1] = '\0';
+ ink_strlcpy(ret_val, i->getHost(), MAXDNAME);
if (strcmp(ret_val, "") == 0 || strcmp(ret_val, ".") == 0) {
goto err;
}
Modified: trafficserver/traffic/trunk/iocore/dns/SRV.h
URL:
http://svn.apache.org/viewvc/trafficserver/traffic/trunk/iocore/dns/SRV.h?rev=1173947&r1=1173946&r2=1173947&view=diff
==============================================================================
--- trafficserver/traffic/trunk/iocore/dns/SRV.h (original)
+++ trafficserver/traffic/trunk/iocore/dns/SRV.h Thu Sep 22 03:52:35 2011
@@ -96,8 +96,7 @@ public:
host[0] = '\0';
return;
}
- strncpy(host, (char *) h, MAXDNAME);
- host[MAXDNAME - 1] = '\0'; /* just in case */
+ ink_strlcpy(host, h, sizeof(host));
}
};
Modified: trafficserver/traffic/trunk/iocore/dns/test_I_DNS.cc
URL:
http://svn.apache.org/viewvc/trafficserver/traffic/trunk/iocore/dns/test_I_DNS.cc?rev=1173947&r1=1173946&r2=1173947&view=diff
==============================================================================
--- trafficserver/traffic/trunk/iocore/dns/test_I_DNS.cc (original)
+++ trafficserver/traffic/trunk/iocore/dns/test_I_DNS.cc Thu Sep 22 03:52:35
2011
@@ -96,7 +96,7 @@ init_diags(char *bdt, char *bat)
{
FILE *diags_log_fp;
char diags_logpath[500];
- strcpy(diags_logpath, DIAGS_LOG_FILE);
+ ink_strlcpy(diags_logpath, DIAGS_LOG_FILE, sizeof(diags_logpath));
diags_log_fp = fopen(diags_logpath, "w");
if (diags_log_fp) {