]> git.ipfire.org Git - thirdparty/haproxy.git/commitdiff
BUG/MINOR: tools: fix url2sa return value with IPv4
authorWilliam Lallemand <wlallemand@haproxy.org>
Thu, 24 Mar 2022 20:59:03 +0000 (21:59 +0100)
committerWilliam Lallemand <wlallemand@haproxy.org>
Fri, 25 Mar 2022 10:49:27 +0000 (11:49 +0100)
Fix 8a91374 ("BUG/MINOR: tools: url2sa reads ipv4 too far") introduced a
regression in the value returned when parsing an ipv4 host.

Tthe consumed length is supposed to be as far as the first character of
the path, only its not computed correctly anymore and return the length
minus the size of the scheme.

Fixed the issue by reverting 'curr' and 'url' as they were before the
patch.

Must be backported in every stable branch where the 8a91374 patch was
backported.

src/tools.c

index f62032b9c19de97dbeccee56296197f58b3f7c97..33cbfc9f6ac33cf1a49e4b2c15cb77960bcaea12 100644 (file)
@@ -1709,9 +1709,7 @@ int url2sa(const char *url, int ulen, struct sockaddr_storage *addr, struct spli
                                out->host_len = ret;
                        }
 
-                       /* we need to assign again curr and end from the trash */
-                       url = trash.area;
-                       curr = trash.area + ret;
+                       curr += ret;
 
                        /* Decode port. */
                        if (*curr == ':') {