Skip to content

Commit 5aba2ba

Browse files
qsndavem330
authored andcommitted
macsec: fix memory leaks when skb_to_sgvec fails
Fixes: cda7ea6 ("macsec: check return value of skb_to_sgvec always") Signed-off-by: Sabrina Dubroca <[email protected]> Signed-off-by: David S. Miller <[email protected]>
1 parent c0576e3 commit 5aba2ba

File tree

1 file changed

+2
-0
lines changed

1 file changed

+2
-0
lines changed

drivers/net/macsec.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -742,6 +742,7 @@ static struct sk_buff *macsec_encrypt(struct sk_buff *skb,
742742
sg_init_table(sg, ret);
743743
ret = skb_to_sgvec(skb, sg, 0, skb->len);
744744
if (unlikely(ret < 0)) {
745+
aead_request_free(req);
745746
macsec_txsa_put(tx_sa);
746747
kfree_skb(skb);
747748
return ERR_PTR(ret);
@@ -954,6 +955,7 @@ static struct sk_buff *macsec_decrypt(struct sk_buff *skb,
954955
sg_init_table(sg, ret);
955956
ret = skb_to_sgvec(skb, sg, 0, skb->len);
956957
if (unlikely(ret < 0)) {
958+
aead_request_free(req);
957959
kfree_skb(skb);
958960
return ERR_PTR(ret);
959961
}

0 commit comments

Comments
 (0)