mirror of
https://git.rtems.org/rtems-libbsd/
synced 2025-10-16 17:54:55 +08:00
Update to FreeBSD head 2018-06-01
Git mirror commit fb63610a69b0eb7f69a201ba05c4c1a7a2739cf9. Update #3472.
This commit is contained in:
@@ -206,7 +206,7 @@ sctp_notify(struct sctp_inpcb *inp,
|
||||
#endif
|
||||
/* no need to unlock here, since the TCB is gone */
|
||||
} else if (icmp_code == ICMP_UNREACH_NEEDFRAG) {
|
||||
if ((net->dest_state & SCTP_ADDR_NO_PMTUD) == 0) {
|
||||
if (net->dest_state & SCTP_ADDR_NO_PMTUD) {
|
||||
SCTP_TCB_UNLOCK(stcb);
|
||||
return;
|
||||
}
|
||||
@@ -707,22 +707,10 @@ sctp_disconnect(struct socket *so)
|
||||
if (SCTP_GET_STATE(asoc) !=
|
||||
SCTP_STATE_COOKIE_WAIT) {
|
||||
/* Left with Data unread */
|
||||
struct mbuf *err;
|
||||
struct mbuf *op_err;
|
||||
|
||||
err = sctp_get_mbuf_for_msg(sizeof(struct sctp_paramhdr), 0, M_NOWAIT, 1, MT_DATA);
|
||||
if (err) {
|
||||
/*
|
||||
* Fill in the user
|
||||
* initiated abort
|
||||
*/
|
||||
struct sctp_paramhdr *ph;
|
||||
|
||||
ph = mtod(err, struct sctp_paramhdr *);
|
||||
SCTP_BUF_LEN(err) = sizeof(struct sctp_paramhdr);
|
||||
ph->param_type = htons(SCTP_CAUSE_USER_INITIATED_ABT);
|
||||
ph->param_length = htons(SCTP_BUF_LEN(err));
|
||||
}
|
||||
sctp_send_abort_tcb(stcb, err, SCTP_SO_LOCKED);
|
||||
op_err = sctp_generate_cause(SCTP_CAUSE_USER_INITIATED_ABT, "");
|
||||
sctp_send_abort_tcb(stcb, op_err, SCTP_SO_LOCKED);
|
||||
SCTP_STAT_INCR_COUNTER32(sctps_aborted);
|
||||
}
|
||||
SCTP_INP_RUNLOCK(inp);
|
||||
|
Reference in New Issue
Block a user