File tree Expand file tree Collapse file tree 1 file changed +11
-2
lines changed Expand file tree Collapse file tree 1 file changed +11
-2
lines changed Original file line number Diff line number Diff line change @@ -740,7 +740,12 @@ static struct sk_buff *macsec_encrypt(struct sk_buff *skb,
740
740
macsec_fill_iv (iv , secy -> sci , pn );
741
741
742
742
sg_init_table (sg , ret );
743
- skb_to_sgvec (skb , sg , 0 , skb -> len );
743
+ ret = skb_to_sgvec (skb , sg , 0 , skb -> len );
744
+ if (unlikely (ret < 0 )) {
745
+ macsec_txsa_put (tx_sa );
746
+ kfree_skb (skb );
747
+ return ERR_PTR (ret );
748
+ }
744
749
745
750
if (tx_sc -> encrypt ) {
746
751
int len = skb -> len - macsec_hdr_len (sci_present ) -
@@ -947,7 +952,11 @@ static struct sk_buff *macsec_decrypt(struct sk_buff *skb,
947
952
macsec_fill_iv (iv , sci , ntohl (hdr -> packet_number ));
948
953
949
954
sg_init_table (sg , ret );
950
- skb_to_sgvec (skb , sg , 0 , skb -> len );
955
+ ret = skb_to_sgvec (skb , sg , 0 , skb -> len );
956
+ if (unlikely (ret < 0 )) {
957
+ kfree_skb (skb );
958
+ return ERR_PTR (ret );
959
+ }
951
960
952
961
if (hdr -> tci_an & MACSEC_TCI_E ) {
953
962
/* confidentiality: ethernet + macsec header
You can’t perform that action at this time.
0 commit comments