aboutsummaryrefslogtreecommitdiffstats
path: root/src/gun.erl
diff options
context:
space:
mode:
authorLoïc Hoguin <[email protected]>2017-05-01 21:12:50 +0200
committerLoïc Hoguin <[email protected]>2017-05-01 21:12:50 +0200
commit3aab5ef99b98f618f701510d76bcf639b915794f (patch)
treeea3e2f815c698ce363380006fca1445bde887bc5 /src/gun.erl
parent3f0b598edff1f411e31aca18ea96562b0d724257 (diff)
downloadgun-3aab5ef99b98f618f701510d76bcf639b915794f.tar.gz
gun-3aab5ef99b98f618f701510d76bcf639b915794f.tar.bz2
gun-3aab5ef99b98f618f701510d76bcf639b915794f.zip
Add gun:info/11.0.0-pre.3
So far only for getting the socket ip and port on the local side. More values may be added later on.
Diffstat (limited to 'src/gun.erl')
-rw-r--r--src/gun.erl7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/gun.erl b/src/gun.erl
index 8267460..173bb2d 100644
--- a/src/gun.erl
+++ b/src/gun.erl
@@ -17,6 +17,7 @@
%% Connection.
-export([open/2]).
-export([open/3]).
+-export([info/1]).
-export([close/1]).
-export([shutdown/1]).
@@ -218,6 +219,12 @@ consider_tracing(ServerPid, #{trace := true}) ->
consider_tracing(_, _) ->
ok.
+-spec info(pid()) -> map().
+info(ServerPid) ->
+ {_, #state{socket=Socket, transport=Transport}} = sys:get_state(ServerPid),
+ {ok, {SockIP, SockPort}} = Transport:sockname(Socket),
+ #{sock_ip => SockIP, sock_port => SockPort}.
+
-spec close(pid()) -> ok.
close(ServerPid) ->
supervisor:terminate_child(gun_sup, ServerPid).