MFH: r524543

Import the libfetch patch to the bundled libfetch

Approved by:	portmgr (implicit)
This commit is contained in:
Baptiste Daroussin 2020-01-29 13:10:14 +00:00
parent bc3de934a4
commit f4ede0e8e3
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/branches/2020Q1/; revision=524544
2 changed files with 32 additions and 0 deletions

View File

@ -3,6 +3,7 @@
PORTNAME= pkg
DISTVERSION= 1.12.0
_PKG_VERSION= ${DISTVERSION}
PORTREVISION= 1
CATEGORIES= ports-mgmt
#MASTER_SITES= \
# http://files.etoilebsd.net/${PORTNAME}/ \

View File

@ -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;