diff options
Diffstat (limited to 'sys/netinet6/sctp6_usrreq.c')
| -rw-r--r-- | sys/netinet6/sctp6_usrreq.c | 11 | 
1 files changed, 10 insertions, 1 deletions
diff --git a/sys/netinet6/sctp6_usrreq.c b/sys/netinet6/sctp6_usrreq.c index fe1328a4de5e..4af78d8f5547 100644 --- a/sys/netinet6/sctp6_usrreq.c +++ b/sys/netinet6/sctp6_usrreq.c @@ -111,7 +111,7 @@ sctp6_input_with_port(struct mbuf **i_pak, int *offp, uint16_t port)  		}  	}  	ip6 = mtod(m, struct ip6_hdr *); -	sh = (struct sctphdr *)(mtod(m, caddr_t) + iphlen); +	sh = (struct sctphdr *)(mtod(m, caddr_t)+iphlen);  	ch = (struct sctp_chunkhdr *)((caddr_t)sh + sizeof(struct sctphdr));  	offset -= sizeof(struct sctp_chunkhdr);  	memset(&src, 0, sizeof(struct sockaddr_in6)); @@ -481,6 +481,7 @@ SYSCTL_PROC(_net_inet6_sctp6, OID_AUTO, getcred, CTLTYPE_OPAQUE | CTLFLAG_RW,  static void  sctp6_abort(struct socket *so)  { +	struct epoch_tracker et;  	struct sctp_inpcb *inp;  	uint32_t flags; @@ -489,6 +490,7 @@ sctp6_abort(struct socket *so)  		SCTP_LTRACE_ERR_RET(inp, NULL, NULL, SCTP_FROM_SCTP6_USRREQ, EINVAL);  		return;  	} +	NET_EPOCH_ENTER(et);  sctp_must_try_again:  	flags = inp->sctp_flags;  #ifdef SCTP_LOG_CLOSING @@ -517,6 +519,7 @@ sctp_must_try_again:  			goto sctp_must_try_again;  		}  	} +	NET_EPOCH_EXIT(et);  	return;  } @@ -776,9 +779,12 @@ connected_type:  		 * optionaly switch back to this code (by changing back the  		 * defininitions but this is not advisable.  		 */ +		struct epoch_tracker et;  		int ret; +		NET_EPOCH_ENTER(et);  		ret = sctp_output(inp, inp->pkt, addr, inp->control, p, flags); +		NET_EPOCH_EXIT(et);  		inp->pkt = NULL;  		inp->control = NULL;  		return (ret); @@ -790,6 +796,7 @@ connected_type:  static int  sctp6_connect(struct socket *so, struct sockaddr *addr, struct thread *p)  { +	struct epoch_tracker et;  	uint32_t vrf_id;  	int error = 0;  	struct sctp_inpcb *inp; @@ -924,8 +931,10 @@ sctp6_connect(struct socket *so, struct sockaddr *addr, struct thread *p)  	}  	SCTP_SET_STATE(stcb, SCTP_STATE_COOKIE_WAIT);  	(void)SCTP_GETTIME_TIMEVAL(&stcb->asoc.time_entered); +	NET_EPOCH_ENTER(et);  	sctp_send_initiate(inp, stcb, SCTP_SO_LOCKED);  	SCTP_TCB_UNLOCK(stcb); +	NET_EPOCH_EXIT(et);  	return (error);  }  | 
