aboutsummaryrefslogtreecommitdiffstats
path: root/lib/kernel
diff options
context:
space:
mode:
authorMicael Karlberg <[email protected]>2018-07-20 13:00:22 +0200
committerMicael Karlberg <[email protected]>2018-09-18 14:50:18 +0200
commit75498c0dd7682bae7787c4e2cd8d2680fa2b9c45 (patch)
tree0d9dcdf630ed818b688747b566b4dfa3bb82c4c9 /lib/kernel
parent3f1d17f3031b71ca6ff1f8e051859ad55e55822b (diff)
downloadotp-75498c0dd7682bae7787c4e2cd8d2680fa2b9c45.tar.gz
otp-75498c0dd7682bae7787c4e2cd8d2680fa2b9c45.tar.bz2
otp-75498c0dd7682bae7787c4e2cd8d2680fa2b9c45.zip
[socket-nif] Add support for socket (level socket) option(s) [rcv|snd]lowat
Added support for socket level socket option RCVLOWAT and SNDLOWAT. These are both a little strange, at least on Linux. See the man pages for more info. For instance, sndlowat cannot be set on Linux. OTP-14831
Diffstat (limited to 'lib/kernel')
-rw-r--r--lib/kernel/test/socket_server.erl8
1 files changed, 6 insertions, 2 deletions
diff --git a/lib/kernel/test/socket_server.erl b/lib/kernel/test/socket_server.erl
index 80de3574d1..10239b0265 100644
--- a/lib/kernel/test/socket_server.erl
+++ b/lib/kernel/test/socket_server.erl
@@ -597,8 +597,10 @@ handler_init(Manager, ID, Peek, Sock) ->
RP = GSO(reuseport),
OOBI = GSO(oobinline),
RcvBuf = GSO(rcvbuf),
+ RcvLW = GSO(rcvlowat),
RcvTO = GSO(rcvtimeo),
SndBuf = GSO(sndbuf),
+ SndLW = GSO(sndlowat),
SndTO = GSO(sndtimeo),
Linger = GSO(linger),
MTU = GIP(mtu),
@@ -619,8 +621,10 @@ handler_init(Manager, ID, Peek, Sock) ->
"~n (socket) Bind To Device: ~s"
"~n (socket) OOBInline: ~s"
"~n (socket) RcvBuf: ~s"
+ "~n (socket) RcvLW: ~s"
"~n (socket) RcvTO: ~s"
"~n (socket) SndBuf: ~s"
+ "~n (socket) SndLW: ~s"
"~n (socket) SndTO: ~s"
"~n (socket) Linger: ~s"
"~n (ip) MTU: ~s"
@@ -634,11 +638,11 @@ handler_init(Manager, ID, Peek, Sock) ->
"~n (ip) Recv TTL: ~s",
[Domain, Type, Proto,
RA, RP, B2D, OOBI,
- RcvBuf, RcvTO, SndBuf, SndTO,
+ RcvBuf, RcvLW, RcvTO, SndBuf, SndLW, SndTO,
Linger,
MTU, MTUDisc, MALL, MIF, MLoop, MTTL,
NF, RecvTOS, RecvTTL]),
-
+
handler_loop(#handler{peek = Peek,
manager = Manager,
type = Type,