Repository: trafficserver Updated Branches: refs/heads/master 1e5d1732f -> 2857d531a
TS-1570: Followup fix to avoid test_certlookup regression. Project: http://git-wip-us.apache.org/repos/asf/trafficserver/repo Commit: http://git-wip-us.apache.org/repos/asf/trafficserver/commit/2857d531 Tree: http://git-wip-us.apache.org/repos/asf/trafficserver/tree/2857d531 Diff: http://git-wip-us.apache.org/repos/asf/trafficserver/diff/2857d531 Branch: refs/heads/master Commit: 2857d531abda9f3f917303dfcebfec28ce3a7f02 Parents: 1e5d173 Author: Alan M. Carroll <solidwallofc...@yahoo-inc.com> Authored: Mon Dec 8 17:47:51 2014 -0800 Committer: Alan M. Carroll <solidwallofc...@yahoo-inc.com> Committed: Mon Dec 8 17:47:51 2014 -0800 ---------------------------------------------------------------------- lib/ts/ink_inet.cc | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/trafficserver/blob/2857d531/lib/ts/ink_inet.cc ---------------------------------------------------------------------- diff --git a/lib/ts/ink_inet.cc b/lib/ts/ink_inet.cc index de874ff..7922c69 100644 --- a/lib/ts/ink_inet.cc +++ b/lib/ts/ink_inet.cc @@ -229,17 +229,18 @@ ats_ip_parse(ts::ConstBuffer src, ts::ConstBuffer* addr, ts::ConstBuffer* port, ++src; } } else { - *addr = src.splitOn(':'); - if (*addr) { - colon_p = true; - } else { // no colon found, use everything. + ts::ConstBuffer post = src.after(':'); + if (post && ! post.find(':')) { + *addr = src.splitOn(post.data()-1); + colon_p = true; + } else { // presume no port, use everything. *addr = src; src.reset(); } } if (colon_p) { ts::ConstBuffer tmp(src); - while (ParseRules::is_digit(*src)) + while (src && ParseRules::is_digit(*src)) ++src; if (tmp.data() == src.data()) { // no digits at all