From: Vlad Yasevich Date: Wed, 15 Sep 2010 14:00:26 +0000 (-0400) Subject: sctp: Do not reset the packet during sctp_packet_config(). X-Git-Tag: v2.6.32.23~18 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=ca92b22ffac5a8b47d6be1a6f2e0dbe68b485f18;p=karo-tx-linux.git sctp: Do not reset the packet during sctp_packet_config(). commit 4bdab43323b459900578b200a4b8cf9713ac8fab upstream. sctp_packet_config() is called when getting the packet ready for appending of chunks. The function should not touch the current state, since it's possible to ping-pong between two transports when sending, and that can result packet corruption followed by skb overlfow crash. Reported-by: Thomas Dreibholz Signed-off-by: Vlad Yasevich Signed-off-by: David S. Miller Signed-off-by: Greg Kroah-Hartman --- diff --git a/net/sctp/output.c b/net/sctp/output.c index 5cbda8f1ddfd..d494100956af 100644 --- a/net/sctp/output.c +++ b/net/sctp/output.c @@ -91,7 +91,6 @@ struct sctp_packet *sctp_packet_config(struct sctp_packet *packet, SCTP_DEBUG_PRINTK("%s: packet:%p vtag:0x%x\n", __func__, packet, vtag); - sctp_packet_reset(packet); packet->vtag = vtag; if (ecn_capable && sctp_packet_empty(packet)) {