From d6f58b53513f647cc986dd027f6a0f23ac8ba152 Mon Sep 17 00:00:00 2001 From: Baptiste Daroussin Date: Wed, 29 Jan 2020 13:09:01 +0000 Subject: Import the libfetch patch to the bundled libfetch --- ports-mgmt/pkg/files/patch-libfetch | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 ports-mgmt/pkg/files/patch-libfetch (limited to 'ports-mgmt/pkg/files/patch-libfetch') diff --git a/ports-mgmt/pkg/files/patch-libfetch b/ports-mgmt/pkg/files/patch-libfetch new file mode 100644 index 000000000000..162a61b1a469 --- /dev/null +++ b/ports-mgmt/pkg/files/patch-libfetch @@ -0,0 +1,31 @@ +diff --git a/external/libfetch/fetch.c b/external/libfetch/fetch.c +index 47c03a79..df5d5547 100644 +--- external/libfetch/fetch.c ++++ external/libfetch/fetch.c +@@ -332,6 +332,8 @@ fetch_pctdecode(char *dst, const char *src, size_t dlen) + } + if (dlen-- > 0) + *dst++ = c; ++ else ++ return (NULL); + } + return (s); + } +@@ -381,11 +383,15 @@ fetchParseURL(const char *URL) + if (p && *p == '@') { + /* username */ + q = fetch_pctdecode(u->user, URL, URL_USERLEN); ++ if (q == NULL) ++ goto ouch; + + /* password */ +- if (*q == ':') ++ if (*q == ':') { + q = fetch_pctdecode(u->pwd, q + 1, URL_PWDLEN); +- ++ if (q == NULL) ++ goto ouch; ++ } + p++; + } else { + p = URL; -- cgit v1.2.3