From d000c0c3b310941be79cf6f3f505cb5166ed97c1 Mon Sep 17 00:00:00 2001 From: Kawe Mazidjatari <48657826+Mauler125@users.noreply.github.com> Date: Mon, 12 Jun 2023 19:44:01 +0200 Subject: [PATCH] Fix 'CVE-2017-8817' Merge: curl/curl@0b664ba968437715819b --- r5dev/thirdparty/curl/curl_fnmatch.c | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/r5dev/thirdparty/curl/curl_fnmatch.c b/r5dev/thirdparty/curl/curl_fnmatch.c index 46d3ada1..5dd53232 100644 --- a/r5dev/thirdparty/curl/curl_fnmatch.c +++ b/r5dev/thirdparty/curl/curl_fnmatch.c @@ -133,6 +133,9 @@ static int setcharset(unsigned char **p, unsigned char *charset) unsigned char c; for(;;) { c = **p; + if(!c) + return SETCHARSET_FAIL; + switch(state) { case CURLFNM_SCHS_DEFAULT: if(ISALNUM(c)) { /* ASCII value */ @@ -196,9 +199,6 @@ static int setcharset(unsigned char **p, unsigned char *charset) else return SETCHARSET_FAIL; } - else if(c == '\0') { - return SETCHARSET_FAIL; - } else { charset[c] = 1; (*p)++; @@ -277,9 +277,6 @@ static int setcharset(unsigned char **p, unsigned char *charset) else if(c == ']') { return SETCHARSET_OK; } - else if(c == '\0') { - return SETCHARSET_FAIL; - } else if(ISPRINT(c)) { charset[c] = 1; (*p)++;