Commit b6631c60 authored by Navid Emamdoost's avatar Navid Emamdoost Committed by Jakub Kicinski
Browse files

sctp: Fix memory leak in sctp_sf_do_5_2_4_dupcook



In the implementation of sctp_sf_do_5_2_4_dupcook() the allocated
new_asoc is leaked if security_sctp_assoc_request() fails. Release it
via sctp_association_free().

Fixes: 2277c7cd ("sctp: Add LSM hooks")
Signed-off-by: default avatarNavid Emamdoost <navid.emamdoost@gmail.com>
Acked-by: default avatarMarcelo Ricardo Leitner <marcelo.leitner@gmail.com>
Signed-off-by: default avatarJakub Kicinski <jakub.kicinski@netronome.com>
parent 34c36f45
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -2160,8 +2160,10 @@ enum sctp_disposition sctp_sf_do_5_2_4_dupcook(

	/* Update socket peer label if first association. */
	if (security_sctp_assoc_request((struct sctp_endpoint *)ep,
					chunk->skb))
					chunk->skb)) {
		sctp_association_free(new_asoc);
		return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands);
	}

	/* Set temp so that it won't be added into hashtable */
	new_asoc->temp = 1;