aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorLoïc Hoguin <[email protected]>2013-04-11 14:42:57 +0200
committerLoïc Hoguin <[email protected]>2013-04-11 22:25:36 +0200
commit6256429dc97d69cbb19076acfea8e1fc3efb1286 (patch)
treef4be9062139d4c6595f88e075b71ce4aae477e6e /src
parent67beb4d01db70d38d9dd389fd5e2ea073bab44e7 (diff)
downloadcowboy-6256429dc97d69cbb19076acfea8e1fc3efb1286.tar.gz
cowboy-6256429dc97d69cbb19076acfea8e1fc3efb1286.tar.bz2
cowboy-6256429dc97d69cbb19076acfea8e1fc3efb1286.zip
Remove cowboy_req:peer_addr/1
This kind of function is highly dependent on the proxy used, therefore parsing was added for x-forwarded-for instead and we just let users write the function that works for them. The code can be easily extracted if anyone was using the function.
Diffstat (limited to 'src')
-rw-r--r--src/cowboy_req.erl24
1 files changed, 0 insertions, 24 deletions
diff --git a/src/cowboy_req.erl b/src/cowboy_req.erl
index 4ad2321..4ec42f9 100644
--- a/src/cowboy_req.erl
+++ b/src/cowboy_req.erl
@@ -46,7 +46,6 @@
-export([method/1]).
-export([version/1]).
-export([peer/1]).
--export([peer_addr/1]).
-export([host/1]).
-export([host_info/1]).
-export([port/1]).
@@ -230,29 +229,6 @@ version(Req) ->
peer(Req) ->
{Req#http_req.peer, Req}.
-%% @doc Returns the peer address calculated from headers.
--spec peer_addr(Req) -> {inet:ip_address(), Req} when Req::req().
-peer_addr(Req = #http_req{}) ->
- {RealIp, Req1} = header(<<"x-real-ip">>, Req),
- {ForwardedForRaw, Req2} = header(<<"x-forwarded-for">>, Req1),
- {{PeerIp, _PeerPort}, Req3} = peer(Req2),
- ForwardedFor = case ForwardedForRaw of
- undefined ->
- undefined;
- ForwardedForRaw ->
- case re:run(ForwardedForRaw, "^(?<first_ip>[^\\,]+)",
- [{capture, [first_ip], binary}]) of
- {match, [FirstIp]} -> FirstIp;
- _Any -> undefined
- end
- end,
- {ok, PeerAddr} = if
- is_binary(RealIp) -> inet_parse:address(binary_to_list(RealIp));
- is_binary(ForwardedFor) -> inet_parse:address(binary_to_list(ForwardedFor));
- true -> {ok, PeerIp}
- end,
- {PeerAddr, Req3}.
-
%% @doc Return the host binary string.
-spec host(Req) -> {binary(), Req} when Req::req().
host(Req) ->