SCTP: Fix to handle invalid parameter length correctly

If an INIT with invalid parameter length look like this:
Parameter Type : 1
Parameter Length: 800
and not contain any payload, SCTP will ignore this parameter and send
back a INIT-ACK.
This patch is fix to handle this invalid parameter length correctly.

Signed-off-by: Wei Yongjun <yjwei@cn.fujitsu.com>
Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com>

authored by Wei Yongjun and committed by Vlad Yasevich cb243a1a 609ee467

+1 -1
+1 -1
net/sctp/sm_make_chunk.c
··· 1833 1833 * VIOLATION error. We build the ERROR chunk here and let the normal 1834 1834 * error handling code build and send the packet. 1835 1835 */ 1836 - if (param.v < (void*)chunk->chunk_end - sizeof(sctp_paramhdr_t)) { 1836 + if (param.v != (void*)chunk->chunk_end) { 1837 1837 sctp_process_inv_paramlength(asoc, param.p, chunk, errp); 1838 1838 return 0; 1839 1839 }