#ifndef HTTP_STATUS_CODES_H
#define HTTP_STATUS_CODES_H

enum codes {
    HTTP_OK = 200,
    HTTP_CREATED = 201,
    HTTP_ACCEPTED = 202,
    HTTP_RESET_CONTENT = 205,
    HTTP_MOVED_PERMANENTLY = 301,
    HTTP_FOUND = 302,
    HTTP_SEE_OTHER = 303, // redirect for post/put
    HTTP_TEMPORARY_REDIRECT = 307,
    HTTP_PERMANENT_REDIRECT = 308, // altering method is prohibited unlike 301
    HTTP_BAD_REQUEST = 400,
    HTTP_UNAUTHORIZED = 401,
    HTTP_FORBIDDEN = 403,
    HTTP_NOT_FOUND = 404,
    HTTP_METHOD_NOT_ALLOWED = 405,
    HTTP_LENGTH_REQUIRED = 411,
    HTTP_CONTENT_TOO_LARGE = 413,
    HTTP_URI_TOO_LONG = 414,
    HTTP_REQUEST_HEADER_FIELDS_TOO_LARGE = 431,
    HTTP_UNAVAILABLE_FOR_LEGAL_REASONS = 451,
    HTTP_INTERNAL_ERROR = 500,
    HTTP_NOT_IMPLEMENTED = 501,
    HTTP_VERSION_NOT_SUPPORTED = 505,
    HTTP_NOT_EXTENDED = 510, // extensions provided by C-MAN header 
};

#endif