diff options
author | Daniel Stenberg <daniel@haxx.se> | 2019-08-02 13:46:49 +0200 |
---|---|---|
committer | Daniel Stenberg <daniel@haxx.se> | 2019-08-03 21:54:00 +0200 |
commit | 1132f43012e44cb779fd916036da9599f31983d6 (patch) | |
tree | 204ebb2934ab20b724670cca7b99126bb0235072 | |
parent | decefd5778f0b1f3b0e1178f2264b39f3c294f10 (diff) |
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
-rw-r--r-- | lib/altsvc.c | 2 | ||||
-rw-r--r-- | tests/data/test356 | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/lib/altsvc.c b/lib/altsvc.c index 85a4e01b5..e4d3ea605 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 e2ac4860d..1be05fe6f 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- </data> |