diff options
author | Wei Yongjun <yjwei@cn.fujitsu.com> | 2010-04-30 21:42:44 -0400 |
---|---|---|
committer | Vlad Yasevich <vladislav.yasevich@hp.com> | 2010-04-30 21:42:44 -0400 |
commit | 52688d6ec977e69b164e0bd3de51d43cf6d4b7b3 (patch) | |
tree | b4e0d9de8fdbf8b29a95d85b81fdc8ba7201fff8 /include/net | |
parent | bd69b981a354be40cc709f3046f0c56f00da6163 (diff) | |
download | blackbird-op-linux-52688d6ec977e69b164e0bd3de51d43cf6d4b7b3.tar.gz blackbird-op-linux-52688d6ec977e69b164e0bd3de51d43cf6d4b7b3.zip |
sctp: discard ABORT chunk with zero verification tag in COOKIE-WAIT state
In current implementation if ABORT chunk is received with T flag is set
and zero verification tag in COOKIE-WAIT state, the ABORT chunk will be
always accepted. This is because in COOKIE-WAIT state, the endpoint does
not know the peer's verification tag, and it's zero in the endpoint.
Signed-off-by: Wei Yongjun <yjwei@cn.fujitsu.com>
Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com>
Diffstat (limited to 'include/net')
-rw-r--r-- | include/net/sctp/sm.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/include/net/sctp/sm.h b/include/net/sctp/sm.h index 851c813adb3a..273a8bb683e3 100644 --- a/include/net/sctp/sm.h +++ b/include/net/sctp/sm.h @@ -437,7 +437,7 @@ sctp_vtag_verify_either(const struct sctp_chunk *chunk, */ if ((!sctp_test_T_bit(chunk) && (ntohl(chunk->sctp_hdr->vtag) == asoc->c.my_vtag)) || - (sctp_test_T_bit(chunk) && + (sctp_test_T_bit(chunk) && asoc->c.peer_vtag && (ntohl(chunk->sctp_hdr->vtag) == asoc->c.peer_vtag))) { return 1; } |