crypto: octeontx2 - out of bounds access in otx2_cpt_dl_custom_egrp_delete()
authorDan Carpenter <dan.carpenter@oracle.com>
Fri, 17 Dec 2021 07:12:32 +0000 (10:12 +0300)
committerHerbert Xu <herbert@gondor.apana.org.au>
Fri, 24 Dec 2021 03:18:27 +0000 (14:18 +1100)
If "egrp" is negative then it is causes an out of bounds access in
eng_grps->grp[].

Fixes: d9d7749773e8 ("crypto: octeontx2 - add apis for custom engine groups")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
drivers/crypto/marvell/octeontx2/otx2_cptpf_ucode.c

index 9aef379..27f6d0a 100644 (file)
@@ -1685,7 +1685,7 @@ int otx2_cpt_dl_custom_egrp_delete(struct otx2_cptpf_dev *cptpf,
        if (kstrtoint(tmp, 10, &egrp))
                goto err_print;
 
-       if (egrp >= OTX2_CPT_MAX_ENGINE_GROUPS) {
+       if (egrp < 0 || egrp >= OTX2_CPT_MAX_ENGINE_GROUPS) {
                dev_err(dev, "Invalid engine group %d", egrp);
                return -EINVAL;
        }