changeset 19761:52a0e0fcf910

lib-http: Add accessors for some response details
author Aki Tuomi <aki.tuomi@dovecot.fi>
date Mon, 15 Feb 2016 13:55:41 +0200
parents a46848c73d7f
children efc5e383c0c7
files src/lib-http/http-server-response.c src/lib-http/http-server.h
diffstat 2 files changed, 18 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/src/lib-http/http-server-response.c	Thu Feb 18 19:27:13 2016 +0200
+++ b/src/lib-http/http-server-response.c	Mon Feb 15 13:55:41 2016 +0200
@@ -767,3 +767,17 @@
 		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);
+}
--- a/src/lib-http/http-server.h	Thu Feb 18 19:27:13 2016 +0200
+++ b/src/lib-http/http-server.h	Mon Feb 15 13:55:41 2016 +0200
@@ -166,6 +166,10 @@
 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);