From: sftcd Date: Wed, 15 Jan 2025 12:47:41 +0000 (+0000) Subject: tool_getparam: ECH param parsing refix X-Git-Tag: curl-8_12_0~110 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=ca1594e7076a17f362f5b17d9df2b6ecd69dc08d;p=thirdparty%2Fcurl.git tool_getparam: ECH param parsing refix Regression. Fixes #16006 Reported-by: Milon Renatus Closes #16010 --- diff --git a/src/tool_getparam.c b/src/tool_getparam.c index 5eb3794519..eb54d707a0 100644 --- a/src/tool_getparam.c +++ b/src/tool_getparam.c @@ -1132,13 +1132,11 @@ static ParameterError parse_ech(struct GlobalConfig *global, err = PARAM_LIBCURL_DOESNT_SUPPORT; else if(strlen(nextarg) > 4 && strncasecompare("pn:", nextarg, 3)) { /* a public_name */ - nextarg += 3; err = getstr(&config->ech_public, nextarg, DENY_BLANK); } else if(strlen(nextarg) > 5 && strncasecompare("ecl:", nextarg, 4)) { /* an ECHConfigList */ - nextarg += 4; - if('@' != *nextarg) { + if('@' != *(nextarg + 4)) { err = getstr(&config->ech_config, nextarg, DENY_BLANK); } else { @@ -1146,7 +1144,7 @@ static ParameterError parse_ech(struct GlobalConfig *global, char *tmpcfg = NULL; FILE *file; - nextarg++; /* skip over '@' */ + nextarg += 5; /* skip over 'ecl:@' */ if(!strcmp("-", nextarg)) { file = stdin; }