]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
lib-http: Add accessors for some response details
authorAki Tuomi <aki.tuomi@dovecot.fi>
Mon, 15 Feb 2016 11:55:41 +0000 (13:55 +0200)
committerAki Tuomi <aki.tuomi@dovecot.fi>
Fri, 19 Feb 2016 11:19:10 +0000 (13:19 +0200)
src/lib-http/http-server-response.c
src/lib-http/http-server.h

index af4ed9bf61e6db6c8ef406acff2a271873ab8ded..2fa863753fc2ee72cd2824a1c5e0c225fbe9a969 100644 (file)
@@ -767,3 +767,17 @@ http_server_response_get_payload_output(struct http_server_response *resp,
                o_stream_create(&hsostream->ostream, conn->conn.output, -1);
        return resp->blocking_output;
 }
+
+void http_server_response_get_status(struct http_server_response *resp,
+       int *status_r, const char **reason_r)
+{
+       i_assert(resp != NULL);
+       *status_r = resp->status;
+       *reason_r = resp->reason;
+}
+
+uoff_t http_server_response_get_total_size(struct http_server_response *resp)
+{
+       i_assert(resp != NULL);
+       return resp->payload_size + str_len(resp->headers);
+}
index 82f8197c03b503a45243c368be7577f6a0b4c71a..78f48db580624cd68c90bfe5aa923888a2845644 100644 (file)
@@ -166,6 +166,10 @@ struct ostream *
 http_server_response_get_payload_output(struct http_server_response *resp,
        bool blocking);
 
+/* get some information about response */
+void http_server_response_get_status(struct http_server_response *resp,
+       int *status_r, const char **reason_r);
+uoff_t http_server_response_get_total_size(struct http_server_response *resp);
 void http_server_response_add_auth(
        struct http_server_response *resp,
        const struct http_auth_challenge *chlng);