Page MenuHomeFreeBSD

D33508.id100148.diff
No OneTemporary

D33508.id100148.diff

diff --git a/sys/netinet6/raw_ip6.c b/sys/netinet6/raw_ip6.c
--- a/sys/netinet6/raw_ip6.c
+++ b/sys/netinet6/raw_ip6.c
@@ -800,24 +800,24 @@
if ((error = sa6_embedscope(addr, V_ip6_use_defzone)) != 0)
return (error);
- INP_INFO_WLOCK(&V_ripcbinfo);
INP_WLOCK(inp);
+ INP_INFO_WLOCK(&V_ripcbinfo);
/* Source address selection. XXX: need pcblookup? */
NET_EPOCH_ENTER(et);
error = in6_selectsrc_socket(addr, inp->in6p_outputopts,
inp, so->so_cred, scope_ambiguous, &in6a, NULL);
NET_EPOCH_EXIT(et);
if (error) {
- INP_WUNLOCK(inp);
INP_INFO_WUNLOCK(&V_ripcbinfo);
+ INP_WUNLOCK(inp);
return (error);
}
inp->in6p_faddr = addr->sin6_addr;
inp->in6p_laddr = in6a;
soisconnected(so);
- INP_WUNLOCK(inp);
INP_INFO_WUNLOCK(&V_ripcbinfo);
+ INP_WUNLOCK(inp);
return (0);
}

File Metadata

Mime Type
text/plain
Expires
Fri, Jan 10, 4:57 PM (14 h, 17 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
15744245
Default Alt Text
D33508.id100148.diff (815 B)

Event Timeline