sctp: implement abort_pd for sctp_stream_interleave
abort_pd is added as a member of sctp_stream_interleave, used to abort partial delivery for data or idata, called in sctp_cmd_assoc_failed. Since stream interleave allows to do partial delivery for each stream at the same time, sctp_intl_abort_pd for idata would be very different from the old function sctp_ulpq_abort_pd for data. Note that sctp_ulpevent_make_pdapi will support per stream in this patch by adding pdapi_stream and pdapi_seq in sctp_pdapi_event, as described in section 6.1.7 of RFC6458. Signed-off-by: Xin Long <lucien.xin@gmail.com> Acked-by: Marcelo Ricardo Leitner <marcelo.leitner@gmail.com> Acked-by: Neil Horman <nhorman@tuxdriver.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
committed by
David S. Miller
parent
be4e0ce10d
commit
65f5e35783
@@ -1144,7 +1144,7 @@ void sctp_ulpq_abort_pd(struct sctp_ulpq *ulpq, gfp_t gfp)
|
||||
&sctp_sk(sk)->subscribe))
|
||||
ev = sctp_ulpevent_make_pdapi(ulpq->asoc,
|
||||
SCTP_PARTIAL_DELIVERY_ABORTED,
|
||||
gfp);
|
||||
0, 0, 0, gfp);
|
||||
if (ev)
|
||||
__skb_queue_tail(&sk->sk_receive_queue, sctp_event2skb(ev));
|
||||
|
||||
|
||||
Reference in New Issue
Block a user