From 065fb3a6b873342ae913acb0590e4c99e09375b2 Mon Sep 17 00:00:00 2001 From: Tatsuhiro Tsujikawa Date: Sat, 15 Oct 2011 23:10:00 +0900 Subject: [PATCH] HttpProxyOptionHandler: Enclose hostname with square brackets if hostname is IPv6 numeric address. --- src/OptionHandlerImpl.cc | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/OptionHandlerImpl.cc b/src/OptionHandlerImpl.cc index e94570b5..e0b9d33a 100644 --- a/src/OptionHandlerImpl.cc +++ b/src/OptionHandlerImpl.cc @@ -697,7 +697,12 @@ void HttpProxyOptionHandler::parseArg(Option& option, const std::string& optarg) if(uri.size() > 7) { uri += "@"; } - strappend(uri, req.getHost(), A2STR::COLON_C, util::uitos(req.getPort())); + if(req.isIPv6LiteralAddress()) { + strappend(uri, "[", req.getHost(), "]"); + } else { + uri += req.getHost(); + } + strappend(uri, A2STR::COLON_C, util::uitos(req.getPort())); option.put(optName_, uri); } }