From: Daniel Stenberg Date: Fri, 2 Aug 2019 11:46:49 +0000 (+0200) Subject: alt-svc: more liberal ALPN name parsing X-Git-Tag: curl-7_66_0~170 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=1132f43012e44cb779fd916036da9599f31983d6;p=thirdparty%2Fcurl.git alt-svc: more liberal ALPN name parsing Allow pretty much anything to be part of the ALPN identifier. In particular minus, which is used for "h3-20" (in-progress HTTP/3 versions) etc. Updated test 356. Closes #4182 --- diff --git a/lib/altsvc.c b/lib/altsvc.c index 85a4e01b50..e4d3ea6056 100644 --- a/lib/altsvc.c +++ b/lib/altsvc.c @@ -343,7 +343,7 @@ static CURLcode getalnum(const char **ptr, char *alpnbuf, size_t buflen) while(*p && ISBLANK(*p)) p++; protop = p; - while(*p && ISALNUM(*p)) + while(*p && !ISBLANK(*p) && (*p != ';') && (*p != '=')) p++; len = p - protop; diff --git a/tests/data/test356 b/tests/data/test356 index e2ac4860d4..1be05fe6f4 100644 --- a/tests/data/test356 +++ b/tests/data/test356 @@ -16,7 +16,7 @@ Content-Length: 6 Connection: close Content-Type: text/html Funny-head: yesyes -Alt-Svc: h1="nowhere.foo:81" +Alt-Svc: h1="nowhere.foo:81", un-kno22!wn=":82" -foo-