Don't send packets containing ERROR chunks in response to unknown

chunks when being in a state where the verification tag to be used
is not known yet.

MFC after:		1 week
This commit is contained in:
tuexen 2020-06-28 14:11:36 +00:00
parent 4ab16786d6
commit 5280dee6ee

View File

@ -5178,7 +5178,11 @@ sctp_process_control(struct mbuf *m, int iphlen, int *offset, int length,
default:
unknown_chunk:
/* it's an unknown chunk! */
if ((ch->chunk_type & 0x40) && (stcb != NULL)) {
if ((ch->chunk_type & 0x40) &&
(stcb != NULL) &&
(SCTP_GET_STATE(stcb) != SCTP_STATE_EMPTY) &&
(SCTP_GET_STATE(stcb) != SCTP_STATE_INUSE) &&
(SCTP_GET_STATE(stcb) != SCTP_STATE_COOKIE_WAIT)) {
struct sctp_gen_error_cause *cause;
int len;