mirror of
https://github.com/jart/cosmopolitan.git
synced 2025-07-04 18:28:30 +00:00
Fix bugs and make improvements
- Fix regression with `%lu` - Added some more headers witnessed in the wild - Added `-M INT` option to redbean to tune max payload size - Work around InfoZIP 256 character limit on comment line size
This commit is contained in:
parent
3aa8983ec1
commit
1966369e8e
17 changed files with 574 additions and 415 deletions
|
@ -20,58 +20,114 @@
|
|||
|
||||
const char *GetHttpHeaderName(int h) {
|
||||
switch (h) {
|
||||
case kHttpAccept:
|
||||
return "Accept";
|
||||
case kHttpAcceptCharset:
|
||||
return "Accept-Charset";
|
||||
case kHttpAcceptEncoding:
|
||||
return "Accept-Encoding";
|
||||
case kHttpAcceptLanguage:
|
||||
return "Accept-Language";
|
||||
case kHttpAge:
|
||||
return "Age";
|
||||
case kHttpAllow:
|
||||
return "Allow";
|
||||
case kHttpAuthorization:
|
||||
return "Authorization";
|
||||
case kHttpHost:
|
||||
return "Host";
|
||||
case kHttpCacheControl:
|
||||
return "Cache-Control";
|
||||
case kHttpChunked:
|
||||
return "Chunked";
|
||||
case kHttpLink:
|
||||
return "Link";
|
||||
case kHttpConnection:
|
||||
return "Connection";
|
||||
case kHttpContentBase:
|
||||
return "Content-Base";
|
||||
case kHttpContentEncoding:
|
||||
return "Content-Encoding";
|
||||
case kHttpContentLanguage:
|
||||
return "Content-Language";
|
||||
case kHttpAccept:
|
||||
return "Accept";
|
||||
case kHttpAcceptLanguage:
|
||||
return "Accept-Language";
|
||||
case kHttpAcceptEncoding:
|
||||
return "Accept-Encoding";
|
||||
case kHttpUserAgent:
|
||||
return "User-Agent";
|
||||
case kHttpReferer:
|
||||
return "Referer";
|
||||
case kHttpXForwardedFor:
|
||||
return "X-Forwarded-For";
|
||||
case kHttpOrigin:
|
||||
return "Origin";
|
||||
case kHttpUpgradeInsecureRequests:
|
||||
return "Upgrade-Insecure-Requests";
|
||||
case kHttpPragma:
|
||||
return "Pragma";
|
||||
case kHttpCookie:
|
||||
return "Cookie";
|
||||
case kHttpDnt:
|
||||
return "DNT";
|
||||
case kHttpSecGpc:
|
||||
return "Sec-GPC";
|
||||
case kHttpFrom:
|
||||
return "From";
|
||||
case kHttpIfModifiedSince:
|
||||
return "If-Modified-Since";
|
||||
case kHttpXRequestedWith:
|
||||
return "X-Requested-With";
|
||||
case kHttpXForwardedHost:
|
||||
return "X-Forwarded-Host";
|
||||
case kHttpXForwardedProto:
|
||||
return "X-Forwarded-Proto";
|
||||
case kHttpXCsrfToken:
|
||||
return "X-CSRF-Token";
|
||||
case kHttpSaveData:
|
||||
return "Save-Data";
|
||||
case kHttpRange:
|
||||
return "Range";
|
||||
case kHttpContentLength:
|
||||
return "Content-Length";
|
||||
case kHttpContentType:
|
||||
return "Content-Type";
|
||||
case kHttpVary:
|
||||
return "Vary";
|
||||
case kHttpDate:
|
||||
return "Date";
|
||||
case kHttpServer:
|
||||
return "Server";
|
||||
case kHttpExpires:
|
||||
return "Expires";
|
||||
case kHttpContentEncoding:
|
||||
return "Content-Encoding";
|
||||
case kHttpLastModified:
|
||||
return "Last-Modified";
|
||||
case kHttpEtag:
|
||||
return "ETag";
|
||||
case kHttpAllow:
|
||||
return "Allow";
|
||||
case kHttpContentRange:
|
||||
return "Content-Range";
|
||||
case kHttpAcceptCharset:
|
||||
return "Accept-Charset";
|
||||
case kHttpAccessControlAllowCredentials:
|
||||
return "Access-Control-Allow-Credentials";
|
||||
case kHttpAccessControlAllowHeaders:
|
||||
return "Access-Control-Allow-Headers";
|
||||
case kHttpAccessControlAllowMethods:
|
||||
return "Access-Control-Allow-Methods";
|
||||
case kHttpAccessControlAllowOrigin:
|
||||
return "Access-Control-Allow-Origin";
|
||||
case kHttpAccessControlMaxAge:
|
||||
return "Access-Control-MaxAge";
|
||||
case kHttpAccessControlMethod:
|
||||
return "Access-Control-Method";
|
||||
case kHttpAccessControlRequestHeaders:
|
||||
return "Access-Control-RequestHeaders";
|
||||
case kHttpAccessControlRequestMethod:
|
||||
return "Access-Control-Request-Method";
|
||||
case kHttpAccessControlRequestMethods:
|
||||
return "Access-Control-Request-Methods";
|
||||
case kHttpAge:
|
||||
return "Age";
|
||||
case kHttpAuthorization:
|
||||
return "Authorization";
|
||||
case kHttpContentBase:
|
||||
return "Content-Base";
|
||||
case kHttpContentDescription:
|
||||
return "Content-Description";
|
||||
case kHttpContentDisposition:
|
||||
return "Content-Disposition";
|
||||
case kHttpContentLanguage:
|
||||
return "Content-Language";
|
||||
case kHttpContentLocation:
|
||||
return "Content-Location";
|
||||
case kHttpContentMd5:
|
||||
return "Content-MD5";
|
||||
case kHttpContentRange:
|
||||
return "Content-Range";
|
||||
case kHttpContentType:
|
||||
return "Content-Type";
|
||||
case kHttpDate:
|
||||
return "Date";
|
||||
case kHttpEtag:
|
||||
return "ETag";
|
||||
case kHttpExpires:
|
||||
return "Expires";
|
||||
case kHttpFrom:
|
||||
return "From";
|
||||
case kHttpHost:
|
||||
return "Host";
|
||||
case kHttpExpect:
|
||||
return "Expect";
|
||||
case kHttpIfMatch:
|
||||
return "If-Match";
|
||||
case kHttpIfModifiedSince:
|
||||
return "If-Modified-Since";
|
||||
case kHttpIfNoneMatch:
|
||||
return "If-None-Match";
|
||||
case kHttpIfRange:
|
||||
|
@ -80,76 +136,38 @@ const char *GetHttpHeaderName(int h) {
|
|||
return "If-Unmodified-Since";
|
||||
case kHttpKeepAlive:
|
||||
return "Keep-Alive";
|
||||
case kHttpLink:
|
||||
return "Link";
|
||||
case kHttpLocation:
|
||||
return "Location";
|
||||
case kHttpMaxForwards:
|
||||
return "Max-Forwards";
|
||||
case kHttpPragma:
|
||||
return "Pragma";
|
||||
case kHttpProxyAuthenticate:
|
||||
return "Proxy-Authenticate";
|
||||
case kHttpProxyAuthorization:
|
||||
return "Proxy-Authorization";
|
||||
case kHttpProxyConnection:
|
||||
return "Proxy-Connection";
|
||||
case kHttpRange:
|
||||
return "Range";
|
||||
case kHttpReferer:
|
||||
return "Referer";
|
||||
case kHttpTransferEncoding:
|
||||
return "Transfer-Encoding";
|
||||
case kHttpUpgrade:
|
||||
return "Upgrade";
|
||||
case kHttpUserAgent:
|
||||
return "User-Agent";
|
||||
case kHttpVia:
|
||||
return "Via";
|
||||
case kHttpLocation:
|
||||
return "Location";
|
||||
case kHttpPublic:
|
||||
return "Public";
|
||||
case kHttpRetryAfter:
|
||||
return "Retry-After";
|
||||
case kHttpServer:
|
||||
return "Server";
|
||||
case kHttpVary:
|
||||
return "Vary";
|
||||
case kHttpTe:
|
||||
return "TE";
|
||||
case kHttpTrailer:
|
||||
return "Trailer";
|
||||
case kHttpTransferEncoding:
|
||||
return "Transfer-Encoding";
|
||||
case kHttpUpgrade:
|
||||
return "Upgrade";
|
||||
case kHttpUri:
|
||||
return "Uri";
|
||||
case kHttpWarning:
|
||||
return "Warning";
|
||||
case kHttpWwwAuthenticate:
|
||||
return "WWW-Authenticate";
|
||||
case kHttpLastModified:
|
||||
return "Last-Modified";
|
||||
case kHttpTrailer:
|
||||
return "Trailer";
|
||||
case kHttpTe:
|
||||
return "TE";
|
||||
case kHttpDnt:
|
||||
return "DNT";
|
||||
case kHttpExpect:
|
||||
return "Expect";
|
||||
case kHttpContentDisposition:
|
||||
return "Content-Disposition";
|
||||
case kHttpContentDescription:
|
||||
return "Content-Description";
|
||||
case kHttpOrigin:
|
||||
return "Origin";
|
||||
case kHttpUpgradeInsecureRequests:
|
||||
return "Upgrade-Insecure-Requests";
|
||||
case kHttpUri:
|
||||
return "URI";
|
||||
case kHttpXCsrfToken:
|
||||
return "X-Csrf-Token";
|
||||
case kHttpXForwardedFor:
|
||||
return "X-Forwarded-For";
|
||||
case kHttpXForwardedHost:
|
||||
return "X-Forwarded-Host";
|
||||
case kHttpXForwardedProto:
|
||||
return "X-Forwarded-Proto";
|
||||
case kHttpXRequestedWith:
|
||||
return "X-Requested-With";
|
||||
case kHttpAccessControlRequestMethod:
|
||||
return "Access-Control-Request-Method";
|
||||
case kHttpAccessControlRequestHeaders:
|
||||
return "Access-Control-Request-Headers";
|
||||
case kHttpVia:
|
||||
return "Via";
|
||||
default:
|
||||
return NULL;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue