From 71b31cee92f5e0c92f57e94c4916e9e19bbafb3f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Hoguin?= Date: Sun, 20 Mar 2011 18:03:11 +0100 Subject: Make sure we can only reply to an HTTP request inside Handler:handle. Of course since requests are a record the response state can be explicitly overriden, but standard use prevents errors by making sure only one reply is sent. --- include/http.hrl | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'include') diff --git a/include/http.hrl b/include/http.hrl index a36fa93..e0fe4f6 100644 --- a/include/http.hrl +++ b/include/http.hrl @@ -13,9 +13,12 @@ %% OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. -record(http_req, { + %% Transport. socket = undefined :: undefined | socket(), transport = undefined :: undefined | module(), connection = keepalive :: keepalive | close, + + %% Request. method = 'GET' :: http_method(), version = {1, 1} :: http_version(), peer = undefined :: undefined | {Address::ip_address(), Port::port_number()}, @@ -26,6 +29,9 @@ qs_vals = undefined :: undefined | bindings(), raw_qs = undefined :: undefined | string(), bindings = undefined :: undefined | bindings(), - headers = [] :: http_headers() + headers = [] :: http_headers(), %% cookies = undefined :: undefined | http_cookies() %% @todo + + %% Response. + resp_state = locked :: locked | waiting | done }). -- cgit v1.2.3