Page MenuHomeFreeBSD

D46881.diff
No OneTemporary

D46881.diff

diff --git a/sys/kern/uipc_socket.c b/sys/kern/uipc_socket.c
--- a/sys/kern/uipc_socket.c
+++ b/sys/kern/uipc_socket.c
@@ -4117,23 +4117,31 @@
goto integer;
case SO_SNDBUF:
+ SOCK_LOCK(so);
optval = SOLISTENING(so) ? so->sol_sbsnd_hiwat :
so->so_snd.sb_hiwat;
+ SOCK_UNLOCK(so);
goto integer;
case SO_RCVBUF:
+ SOCK_LOCK(so);
optval = SOLISTENING(so) ? so->sol_sbrcv_hiwat :
so->so_rcv.sb_hiwat;
+ SOCK_UNLOCK(so);
goto integer;
case SO_SNDLOWAT:
+ SOCK_LOCK(so);
optval = SOLISTENING(so) ? so->sol_sbsnd_lowat :
so->so_snd.sb_lowat;
+ SOCK_UNLOCK(so);
goto integer;
case SO_RCVLOWAT:
+ SOCK_LOCK(so);
optval = SOLISTENING(so) ? so->sol_sbrcv_lowat :
so->so_rcv.sb_lowat;
+ SOCK_UNLOCK(so);
goto integer;
case SO_SNDTIMEO:
@@ -4190,15 +4198,21 @@
break;
case SO_LISTENQLIMIT:
+ SOCK_LOCK(so);
optval = SOLISTENING(so) ? so->sol_qlimit : 0;
+ SOCK_UNLOCK(so);
goto integer;
case SO_LISTENQLEN:
+ SOCK_LOCK(so);
optval = SOLISTENING(so) ? so->sol_qlen : 0;
+ SOCK_UNLOCK(so);
goto integer;
case SO_LISTENINCQLEN:
+ SOCK_LOCK(so);
optval = SOLISTENING(so) ? so->sol_incqlen : 0;
+ SOCK_UNLOCK(so);
goto integer;
case SO_TS_CLOCK:

File Metadata

Mime Type
text/plain
Expires
Sun, Jul 5, 5:40 PM (37 m, 32 s)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
34718851
Default Alt Text
D46881.diff (1 KB)

Event Timeline