#include "httpcodes.h" TStringBuf HttpCodeStrEx(int code) noexcept { switch (code) { case HTTP_CONTINUE: return TStringBuf("100 Continue"); case HTTP_SWITCHING_PROTOCOLS: return TStringBuf("101 Switching protocols"); case HTTP_PROCESSING: return TStringBuf("102 Processing"); case HTTP_EARLY_HINTS: return TStringBuf ("103 Early Hints"); case HTTP_OK: return TStringBuf("200 Ok"); case HTTP_CREATED: return TStringBuf("201 Created"); case HTTP_ACCEPTED: return TStringBuf("202 Accepted"); case HTTP_NON_AUTHORITATIVE_INFORMATION: return TStringBuf("203 None authoritative information"); case HTTP_NO_CONTENT: return TStringBuf("204 No content"); case HTTP_RESET_CONTENT: return TStringBuf("205 Reset content"); case HTTP_PARTIAL_CONTENT: return TStringBuf("206 Partial content"); case HTTP_MULTI_STATUS: return TStringBuf("207 Multi status"); case HTTP_ALREADY_REPORTED: return TStringBuf("208 Already reported"); case HTTP_IM_USED: return TStringBuf("226 IM used"); case HTTP_MULTIPLE_CHOICES: return TStringBuf("300 Multiple choices"); case HTTP_MOVED_PERMANENTLY: return TStringBuf("301 Moved permanently"); case HTTP_FOUND: return TStringBuf("302 Moved temporarily"); case HTTP_SEE_OTHER: return TStringBuf("303 See other"); case HTTP_NOT_MODIFIED: return TStringBuf("304 Not modified"); case HTTP_USE_PROXY: return TStringBuf("305 Use proxy"); case HTTP_TEMPORARY_REDIRECT: return TStringBuf("307 Temporarily redirect"); case HTTP_PERMANENT_REDIRECT: return TStringBuf("308 Permanent redirect"); case HTTP_BAD_REQUEST: return TStringBuf("400 Bad request"); case HTTP_UNAUTHORIZED: return TStringBuf("401 Unauthorized"); case HTTP_PAYMENT_REQUIRED: return TStringBuf("402 Payment required"); case HTTP_FORBIDDEN: return TStringBuf("403 Forbidden"); case HTTP_NOT_FOUND: return TStringBuf("404 Not found"); case HTTP_METHOD_NOT_ALLOWED: return TStringBuf("405 Method not allowed"); case HTTP_NOT_ACCEPTABLE: return TStringBuf("406 Not acceptable"); case HTTP_PROXY_AUTHENTICATION_REQUIRED: return TStringBuf("407 Proxy Authentication required"); case HTTP_REQUEST_TIME_OUT: return TStringBuf("408 Request time out"); case HTTP_CONFLICT: return TStringBuf("409 Conflict"); case HTTP_GONE: return TStringBuf("410 Gone"); case HTTP_LENGTH_REQUIRED: return TStringBuf("411 Length required"); case HTTP_PRECONDITION_FAILED: return TStringBuf("412 Precondition failed"); case HTTP_REQUEST_ENTITY_TOO_LARGE: return TStringBuf("413 Request entity too large"); case HTTP_REQUEST_URI_TOO_LARGE: return TStringBuf("414 Request uri too large"); case HTTP_UNSUPPORTED_MEDIA_TYPE: return TStringBuf("415 Unsupported media type"); case HTTP_REQUESTED_RANGE_NOT_SATISFIABLE: return TStringBuf("416 Requested Range Not Satisfiable"); case HTTP_EXPECTATION_FAILED: return TStringBuf("417 Expectation Failed"); case HTTP_I_AM_A_TEAPOT: return TStringBuf("418 I Am A Teapot"); case HTTP_AUTHENTICATION_TIMEOUT: return TStringBuf("419 Authentication Timeout"); case HTTP_MISDIRECTED_REQUEST: return TStringBuf("421 Misdirected Request"); case HTTP_UNPROCESSABLE_ENTITY: return TStringBuf("422 Unprocessable Entity"); case HTTP_LOCKED: return TStringBuf("423 Locked"); case HTTP_FAILED_DEPENDENCY: return TStringBuf("424 Failed Dependency"); case HTTP_UNORDERED_COLLECTION: return TStringBuf("425 Unordered Collection"); case HTTP_UPGRADE_REQUIRED: return TStringBuf("426 Upgrade Required"); case HTTP_PRECONDITION_REQUIRED: return TStringBuf("428 Precondition Required"); case HTTP_TOO_MANY_REQUESTS: return TStringBuf("429 Too Many Requests"); case HTTP_REQUEST_HEADER_FIELDS_TOO_LARGE: return TStringBuf("431 Request Header Fields Too Large"); case HTTP_UNAVAILABLE_FOR_LEGAL_REASONS: return TStringBuf("451 Unavailable For Legal Reason"); case HTTP_INTERNAL_SERVER_ERROR: return TStringBuf("500 Internal server error"); case HTTP_NOT_IMPLEMENTED: return TStringBuf("501 Not implemented"); case HTTP_BAD_GATEWAY: return TStringBuf("502 Bad gateway"); case HTTP_SERVICE_UNAVAILABLE: return TStringBuf("503 Service unavailable"); case HTTP_GATEWAY_TIME_OUT: return TStringBuf("504 Gateway time out"); case HTTP_HTTP_VERSION_NOT_SUPPORTED: return TStringBuf("505 HTTP version not supported"); case HTTP_VARIANT_ALSO_NEGOTIATES: return TStringBuf("506 Variant also negotiates"); case HTTP_INSUFFICIENT_STORAGE: return TStringBuf("507 Insufficient storage"); case HTTP_LOOP_DETECTED: return TStringBuf("508 Loop Detected"); case HTTP_BANDWIDTH_LIMIT_EXCEEDED: return TStringBuf("509 Bandwidth Limit Exceeded"); case HTTP_NOT_EXTENDED: return TStringBuf("510 Not Extended"); case HTTP_NETWORK_AUTHENTICATION_REQUIRED: return TStringBuf("511 Network Authentication Required"); case HTTP_UNASSIGNED_512: return TStringBuf("512 Unassigned"); default: return TStringBuf("000 Unknown HTTP code"); } }