aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWei Yongjun <yjwei@cn.fujitsu.com>2009-03-12 05:49:19 -0400
committerDavid S. Miller <davem@davemloft.net>2009-03-13 14:37:58 -0400
commit76595024ffab3599bd28ea014f6c23c1a8c8dd2c (patch)
treec7beb060526957cf24e215d0d676219b5482ac29
parent5ffad5acebec735b7a368851bf22394b734cae8a (diff)
sctp: fix to send FORWARD-TSN chunk only if peer has such capable
RFC3758 Section 3.3.1. Sending Forward-TSN-Supported param in INIT Note that if the endpoint chooses NOT to include the parameter, then at no time during the life of the association can it send or process a FORWARD TSN. If peer does not support PR-SCTP capable, don't send FORWARD-TSN chunk to peer. Signed-off-by: Wei Yongjun <yjwei@cn.fujitsu.com> Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--net/sctp/outqueue.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/net/sctp/outqueue.c b/net/sctp/outqueue.c
index a367d15a21aa..d765fc53e74d 100644
--- a/net/sctp/outqueue.c
+++ b/net/sctp/outqueue.c
@@ -1758,6 +1758,9 @@ static void sctp_generate_fwdtsn(struct sctp_outq *q, __u32 ctsn)
1758 struct sctp_chunk *chunk; 1758 struct sctp_chunk *chunk;
1759 struct list_head *lchunk, *temp; 1759 struct list_head *lchunk, *temp;
1760 1760
1761 if (!asoc->peer.prsctp_capable)
1762 return;
1763
1761 /* PR-SCTP C1) Let SackCumAck be the Cumulative TSN ACK carried in the 1764 /* PR-SCTP C1) Let SackCumAck be the Cumulative TSN ACK carried in the
1762 * received SACK. 1765 * received SACK.
1763 * 1766 *