From: Goro FUJI Date: Mon, 13 Nov 2023 01:18:47 +0000 (+0000) Subject: http: allow longer HTTP/2 request method names X-Git-Tag: curl-8_5_0~109 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=26e5424ca863f02e0d6fab9e69a31a890da71821;p=thirdparty%2Fcurl.git http: allow longer HTTP/2 request method names - Increase the maximum request method name length from 11 to 23. For HTTP/1.1 and earlier there's not a specific limit in libcurl for method length except that it is limited by the initial HTTP request limit (DYN_HTTP_REQUEST). Prior to fc2f1e54 HTTP/2 was treated the same and there was no specific limit. According to Internet Assigned Numbers Authority (IANA) the longest registered method is UPDATEREDIRECTREF which is 17 characters. Also there are unregistered methods used by some companies that are longer than 11 characters. The limit was originally added by 61f52a97 but not used until fc2f1e54. Ref: https://www.iana.org/assignments/http-methods/http-methods.xhtml Closes https://github.com/curl/curl/pull/12311 --- diff --git a/lib/http.h b/lib/http.h index 9ee3c6537c..f38333af60 100644 --- a/lib/http.h +++ b/lib/http.h @@ -263,7 +263,7 @@ CURLcode Curl_http_decode_status(int *pstatus, const char *s, size_t len); * All about a core HTTP request, excluding body and trailers */ struct httpreq { - char method[12]; + char method[24]; char *scheme; char *authority; char *path;