diff options
author | Micael Karlberg <[email protected]> | 2018-04-09 12:54:52 +0200 |
---|---|---|
committer | Micael Karlberg <[email protected]> | 2018-09-18 13:01:37 +0200 |
commit | 9e6fda01b1af0c42cee9f983d5bddecc7eb7e240 (patch) | |
tree | f452ccfc553ada516a53947f6e62fe0f0d584347 /erts/preloaded/src/socket.erl | |
parent | e752b4a8187903da609004c56f0f019b1d7b7605 (diff) | |
download | otp-9e6fda01b1af0c42cee9f983d5bddecc7eb7e240.tar.gz otp-9e6fda01b1af0c42cee9f983d5bddecc7eb7e240.tar.bz2 otp-9e6fda01b1af0c42cee9f983d5bddecc7eb7e240.zip |
[socket-nif] Completed listen
Diffstat (limited to 'erts/preloaded/src/socket.erl')
-rw-r--r-- | erts/preloaded/src/socket.erl | 32 |
1 files changed, 19 insertions, 13 deletions
diff --git a/erts/preloaded/src/socket.erl b/erts/preloaded/src/socket.erl index f8e3d0419a..0886c0d211 100644 --- a/erts/preloaded/src/socket.erl +++ b/erts/preloaded/src/socket.erl @@ -213,7 +213,10 @@ info() -> %% %% =========================================================================== +%% =========================================================================== +%% %% open - create an endpoint for communication +%% open(Domain, Type) -> open(Domain, Type, null). @@ -272,7 +275,10 @@ default_protocol(null, Type) -> throw({error, {no_default_protocol, Type}}) default_protocol(Protocol, _) -> Protocol. +%% =========================================================================== +%% %% bind - bind a name to a socket +%% -spec bind(Socket, FileOrAddr) -> ok | {error, Reason} when Socket :: socket(), @@ -318,7 +324,11 @@ bind({socket, _, SockRef}, Addr, Port) nif_bind(SockRef, {Addr, Port}). + +%% =========================================================================== +%% %% connect - initiate a connection on a socket +%% -spec connect(Socket, Addr, Port) -> ok | {error, Reason} when Socket :: socket(), @@ -364,7 +374,11 @@ connect({socket, _, SockRef}, Addr, Port, Timeout) end. + +%% =========================================================================== +%% %% listen - listen for connections on a socket +%% -spec listen(Socket, Backlog) -> ok | {error, Reason} when Socket :: socket(), @@ -375,13 +389,15 @@ listen(Socket) -> listen(Socket, ?SOCKET_LISTEN_BACKLOG_DEFAULT). listen({socket, _, SockRef}, Backlog) - when (is_integer(Backlog) andalso (Backlog >= 0)) orelse is_boolean(Backlog) -> - EBacklog = enc_backlog(Backlog), - nif_listen(SockRef, EBacklog). + when (is_integer(Backlog) andalso (Backlog >= 0)) -> + nif_listen(SockRef, Backlog). +%% =========================================================================== +%% %% accept, accept4 - accept a connection on a socket +%% -spec accept(LSocket, Timeout) -> {ok, Socket} | {error, Reason} when LSocket :: socket(), @@ -682,16 +698,6 @@ enc_protocol(seqpacket, sctp) -> ?SOCKET_PROTOCOL_SCTP; enc_protocol(Type, Proto) -> throw({error, {invalid_protocol, {Type, Proto}}}). --spec enc_backlog(Backlog) -> non_neg_integer() when - Backlog :: non_neg_integer() | boolean(). - -enc_backlog(true) -> - ?SOCKET_LISTEN_BACKLOG_DEFAULT; -enc_backlog(false) -> - 0; -enc_backlog(Backlog) when is_integer(Backlog) andalso (Backlog >= 0) -> - Backlog. - -spec enc_accept_flags(Flags) -> non_neg_integer() when Flags :: accept_flags(). |