Mercurial > dovecot > core-2.2
view src/lib-http/http-response.h @ 22711:25d4771ad0fd
lib-storage: mailbox_list_index - indentation cleanup
author | Timo Sirainen <timo.sirainen@dovecot.fi> |
---|---|
date | Thu, 14 Dec 2017 02:10:27 +0200 |
parents | f9bed7bc73e0 |
children |
line wrap: on
line source
#ifndef HTTP_RESPONSE_H #define HTTP_RESPONSE_H #include "array.h" #include "http-header.h" #define http_response_header http_header_field /* FIXME: remove in v2.3 */ #define HTTP_RESPONSE_STATUS_INTERNAL 9000 enum http_response_payload_type { HTTP_RESPONSE_PAYLOAD_TYPE_ALLOWED, HTTP_RESPONSE_PAYLOAD_TYPE_NOT_PRESENT, HTTP_RESPONSE_PAYLOAD_TYPE_ONLY_UNSUCCESSFUL }; struct http_response { unsigned char version_major; unsigned char version_minor; unsigned int status; const char *reason; const char *location; time_t date, retry_after; const struct http_header *header; struct istream *payload; /* FIXME: remove in v2.3 */ ARRAY_TYPE(http_header_field) headers; ARRAY_TYPE(const_string) connection_options; unsigned int connection_close:1; }; void http_response_init(struct http_response *resp, unsigned int status, const char *reason); static inline const struct http_header_field * http_response_header_find(const struct http_response *resp, const char *name) { if (resp->header == NULL) return NULL; return http_header_field_find(resp->header, name); } static inline const char * http_response_header_get(const struct http_response *resp, const char *name) { if (resp->header == NULL) return NULL; return http_header_field_get(resp->header, name); } static inline const ARRAY_TYPE(http_header_field) * http_response_header_get_fields(const struct http_response *resp) { if (resp->header == NULL) return NULL; return http_header_get_fields(resp->header); } static inline const char * http_response_get_message(const struct http_response *resp) { if (resp->status >= HTTP_RESPONSE_STATUS_INTERNAL) return resp->reason; return t_strdup_printf("%u %s", resp->status, resp->reason); } bool http_response_has_connection_option(const struct http_response *resp, const char *option); int http_response_get_payload_size(const struct http_response *resp, uoff_t *size_r); #endif