HostPortPair::FromString() will accept "foobar:+34", because it uses base::StringToInt() to parse the port portion.
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/94e42f599fa98662868c993cc4e432fd25a40f99 commit 94e42f599fa98662868c993cc4e432fd25a40f99 Author: eroman <eroman@chromium.org> Date: Wed Mar 23 22:07:08 2016 Add base/parse_number.h to generalize number parsing done in //net. In particular, the current use of base::StringToInt() is problematic as it permits strings with a leading plus sign, which is invalid in most places where //net parses numbers. BUG=596523, 596538 Review URL: https://codereview.chromium.org/1829873002 Cr-Commit-Position: refs/heads/master@{#382936} [modify] https://crrev.com/94e42f599fa98662868c993cc4e432fd25a40f99/net/base/host_port_pair.cc [modify] https://crrev.com/94e42f599fa98662868c993cc4e432fd25a40f99/net/base/host_port_pair_unittest.cc [modify] https://crrev.com/94e42f599fa98662868c993cc4e432fd25a40f99/net/base/ip_address.cc [add] https://crrev.com/94e42f599fa98662868c993cc4e432fd25a40f99/net/base/parse_number.cc [add] https://crrev.com/94e42f599fa98662868c993cc4e432fd25a40f99/net/base/parse_number.h [add] https://crrev.com/94e42f599fa98662868c993cc4e432fd25a40f99/net/base/parse_number_unittest.cc [modify] https://crrev.com/94e42f599fa98662868c993cc4e432fd25a40f99/net/base/sdch_manager.cc [modify] https://crrev.com/94e42f599fa98662868c993cc4e432fd25a40f99/net/net.gypi
Comment 1 by xunji...@chromium.org
, Mar 22 2016Status: Available (was: Untriaged)