From d69d0adfa72383736fe9705f5060881baefe2d21 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Hoguin?= Date: Sun, 20 Mar 2011 16:09:05 +0100 Subject: Lazy-retrieve the peer name and port to avoid wasting time each request. --- src/cowboy_http_req.erl | 3 +++ 1 file changed, 3 insertions(+) (limited to 'src/cowboy_http_req.erl') diff --git a/src/cowboy_http_req.erl b/src/cowboy_http_req.erl index 1938bc7..3dcac2f 100644 --- a/src/cowboy_http_req.erl +++ b/src/cowboy_http_req.erl @@ -44,6 +44,9 @@ version(Req) -> -spec peer(Req::#http_req{}) -> {{Address::ip_address(), Port::port_number()}, Req::#http_req{}}. +peer(Req=#http_req{socket=Socket, transport=Transport, peer=undefined}) -> + {ok, Peer} = Transport:peername(Socket), + {Peer, Req#http_req{peer=Peer}}; peer(Req) -> {Req#http_req.peer, Req}. -- cgit v1.2.3