diff options
author | Micael Karlberg <[email protected]> | 2018-09-25 16:34:55 +0200 |
---|---|---|
committer | Micael Karlberg <[email protected]> | 2018-09-27 12:43:13 +0200 |
commit | 742a210ace9625646386eb71b8d33e9938eeaec1 (patch) | |
tree | 3d723d484615e74d63630512b6a53c7eaee1cb6e /lib | |
parent | 91ffcbf2bee63cd5314132edee56825973a62f72 (diff) | |
download | otp-742a210ace9625646386eb71b8d33e9938eeaec1.tar.gz otp-742a210ace9625646386eb71b8d33e9938eeaec1.tar.bz2 otp-742a210ace9625646386eb71b8d33e9938eeaec1.zip |
[socket-nif] Add proper recv timeout handling
Added proper recv timeout handling.
Made use of the enif_select(mode = cancel) feature. Each
time a timeout expires, the "active" recv (the surrent reader
select) has to be cancelled. Not yet tested...something for
the new test suite...
Also, added support for getopt(controlling_pprocess) that,
for some reason, was not yet implemented.
OTP-14831
Diffstat (limited to 'lib')
-rw-r--r-- | lib/kernel/test/socket_server.erl | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/kernel/test/socket_server.erl b/lib/kernel/test/socket_server.erl index 9142942428..45adffc5e6 100644 --- a/lib/kernel/test/socket_server.erl +++ b/lib/kernel/test/socket_server.erl @@ -922,8 +922,8 @@ send(#handler{socket = Sock, msg = true, type = dgram, stimeout = Timeout}, CMsgHdr = #{level => ip, type => tos, data => reliability}, CMsgHdrs = [CMsgHdr], MsgHdr = #{addr => Dest, - iov => [Msg], - ctrl => CMsgHdrs}, + ctrl => CMsgHdrs, + iov => [Msg]}, %% ok = socket:setopt(Sock, otp, debug, true), Res = socket:sendmsg(Sock, MsgHdr, Timeout), %% ok = socket:setopt(Sock, otp, debug, false), |