dccp: fix memory leak during tear-down of unsuccessful connection request

[ Upstream commit 72ef9c4125 ]

This patch fixes a memory leak, which happens if the connection request
is not fulfilled between parsing the DCCP options and handling the SYN
(because e.g. the backlog is full), because we forgot to free the
list of ack vectors.

Reported-by: Jianwen Ji <jiji@redhat.com>
Signed-off-by: Hannes Frederic Sowa <hannes@stressinduktion.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Hannes Frederic Sowa
2017-03-13 00:01:30 +01:00
committed by Greg Kroah-Hartman
parent 4ab956b561
commit 676fe97852

View File

@@ -749,6 +749,7 @@ static void ccid2_hc_tx_exit(struct sock *sk)
for (i = 0; i < hc->tx_seqbufc; i++) for (i = 0; i < hc->tx_seqbufc; i++)
kfree(hc->tx_seqbuf[i]); kfree(hc->tx_seqbuf[i]);
hc->tx_seqbufc = 0; hc->tx_seqbufc = 0;
dccp_ackvec_parsed_cleanup(&hc->tx_av_chunks);
} }
static void ccid2_hc_rx_packet_recv(struct sock *sk, struct sk_buff *skb) static void ccid2_hc_rx_packet_recv(struct sock *sk, struct sk_buff *skb)