> cryptodev_cb_init() may free partially allocated resources on failure,
> but does not reset their pointers afterwards.
> 
> A later call to cryptodev_cb_cleanup() may then attempt to release both
> resources even when one of them has already been freed, because the
> cleanup logic does not rely on both pointers being valid independently.
> 
> Set freed pointers to NULL in the cryptodev_cb_init() error path to
> make subsequent cleanup safe.
> 
> Found by Linux Verification Center (linuxtesting.org) with SVACE.
> 
> Fixes: 1c3ffb95595e ("cryptodev: add enqueue and dequeue callbacks")
> Cc: [email protected]
> 
> Signed-off-by: Daniil Agalakov <[email protected]>
> Signed-off-by: Daniil Iskhakov <[email protected]>
Applied to dpdk-next-crypto
Thanks.

Reply via email to