You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Pretty much current git master (commit d75e6ce) plus a fix for the ngtcp2 build (not relevant).
operating system
Arch Linux.
Further information
It appears there is a bug in what Curl_altsvc_parse expects and what the caller provides. The function expects to work on a single header line without CRLF, this is being verified by the unit tests (tests/unit/unit1654.c).
However, the actual HTTP code passes the header including the CRLF. This means that after parsing the last part of the alt-svc header (h3-27=":4433"), it returns early because there were no more options. It did not save the new alternative service entry though...
/* Handle the optional 'ma' and 'persist' flags. Unknown flags are skipped. */for(;;) {
while(*p&&ISBLANK(*p) &&*p!=';'&&*p!=',')
p++;
if(!*p||*p==',') // <-- should have triggered, but it does not because p = "\r\n"break;
p++; /* pass the semicolon */if(!*p)
break;
result=getalnum(&p, option, sizeof(option));
The text was updated successfully, but these errors were encountered:
Fixed the alt-svc parser to treat a newline as end of line.
The unit tests in test 1654 were done without CRLF and thus didn't quite
match the real world. Now they use CRLF as well.
Reported-by: Peter Wu
Fixes#5445
Fixed the alt-svc parser to treat a newline as end of line.
The unit tests in test 1654 were done without CRLF and thus didn't quite
match the real world. Now they use CRLF as well.
Reported-by: Peter Wu
Assisted-by: Peter Wu
Assisted-by: Jay Satiro
Fixes#5445Closes#5446
Fixed the alt-svc parser to treat a newline as end of line.
The unit tests in test 1654 were done without CRLF and thus didn't quite
match the real world. Now they use CRLF as well.
Reported-by: Peter Wu
Assisted-by: Peter Wu
Assisted-by: Jay Satiro
Fixes#5445Closes#5446
I did this
This produces:
I expected the following
alt.cache
should contain a h3-27 entry which should have enabled h3-27 support on the next attempt.curl/libcurl version
Pretty much current git master (commit d75e6ce) plus a fix for the ngtcp2 build (not relevant).
operating system
Arch Linux.
Further information
It appears there is a bug in what
Curl_altsvc_parse
expects and what the caller provides. The function expects to work on a single header line without CRLF, this is being verified by the unit tests (tests/unit/unit1654.c).However, the actual HTTP code passes the header including the CRLF. This means that after parsing the last part of the alt-svc header (
h3-27=":4433"
), it returns early because there were no more options. It did not save the new alternative service entry though...The text was updated successfully, but these errors were encountered: