Page MenuHomeFreeBSD

D35532.id.diff
No OneTemporary

D35532.id.diff

diff --git a/sys/netinet/tcp_usrreq.c b/sys/netinet/tcp_usrreq.c
--- a/sys/netinet/tcp_usrreq.c
+++ b/sys/netinet/tcp_usrreq.c
@@ -2206,13 +2206,13 @@
switch (sopt->sopt_name) {
#if defined(IPSEC_SUPPORT) || defined(TCP_SIGNATURE)
case TCP_MD5SIG:
- if (!TCPMD5_ENABLED()) {
- INP_WUNLOCK(inp);
+ INP_WUNLOCK(inp);
+ if (!TCPMD5_ENABLED())
return (ENOPROTOOPT);
- }
error = TCPMD5_PCBCTL(inp, sopt);
if (error)
return (error);
+ INP_WLOCK_RECHECK(inp);
goto unlock_and_done;
#endif /* IPSEC */
@@ -2584,10 +2584,9 @@
switch (sopt->sopt_name) {
#if defined(IPSEC_SUPPORT) || defined(TCP_SIGNATURE)
case TCP_MD5SIG:
- if (!TCPMD5_ENABLED()) {
- INP_WUNLOCK(inp);
+ INP_WUNLOCK(inp);
+ if (!TCPMD5_ENABLED())
return (ENOPROTOOPT);
- }
error = TCPMD5_PCBCTL(inp, sopt);
break;
#endif

File Metadata

Mime Type
text/plain
Expires
Mon, Jan 19, 6:54 AM (8 h, 7 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
27709615
Default Alt Text
D35532.id.diff (858 B)

Event Timeline