tor

The Tor anonymity network
git clone https://git.dasho.dev/tor.git
Log | Files | Refs | README | LICENSE

commit 4e3d144fb0940d8ee5a89427d471ea3656e8e122
parent 7c98105d5617a0423c2d45941e7c0906de649128
Author: Nick Mathewson <nickm@torproject.org>
Date:   Thu, 11 Apr 2019 17:40:05 -0400

Don't leak on logic error in string_is_valid_nonrfc_hostname()

This is CID 1437438.  No backport needed: this is unreachable, and
guarded with a BUG() check.

Diffstat:
Msrc/lib/net/address.c | 8++++++--
1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/src/lib/net/address.c b/src/lib/net/address.c @@ -2027,8 +2027,12 @@ string_is_valid_nonrfc_hostname(const char *string) smartlist_split_string(components,string,".",0,0); - if (BUG(smartlist_len(components) == 0)) - return 0; // LCOV_EXCL_LINE should be impossible given the earlier checks. + if (BUG(smartlist_len(components) == 0)) { + // LCOV_EXCL_START should be impossible given the earlier checks. + smartlist_free(components); + return 0; + // LCOV_EXCL_STOP + } /* Allow a single terminating '.' used rarely to indicate domains * are FQDNs rather than relative. */