mirror of https://github.com/torvalds/linux.git
There are three bugs in this code:
1) If we ccp_init_data() fails for &src then we need to free aad.
Use goto e_aad instead of goto e_ctx.
2) The label to free the &final_wa was named incorrectly as "e_tag" but
it should have been "e_final_wa". One error path leaked &final_wa.
3) The &tag was leaked on one error path. In that case, I added a free
before the goto because the resource was local to that block.
Fixes:
|
||
|---|---|---|
| .. | ||
| Kconfig | ||
| Makefile | ||
| ccp-crypto-aes-cmac.c | ||
| ccp-crypto-aes-galois.c | ||
| ccp-crypto-aes-xts.c | ||
| ccp-crypto-aes.c | ||
| ccp-crypto-des3.c | ||
| ccp-crypto-main.c | ||
| ccp-crypto-rsa.c | ||
| ccp-crypto-sha.c | ||
| ccp-crypto.h | ||
| ccp-debugfs.c | ||
| ccp-dev-v3.c | ||
| ccp-dev-v5.c | ||
| ccp-dev.c | ||
| ccp-dev.h | ||
| ccp-dmaengine.c | ||
| ccp-ops.c | ||
| psp-dev.c | ||
| psp-dev.h | ||
| sev-dev.c | ||
| sev-dev.h | ||
| sp-dev.c | ||
| sp-dev.h | ||
| sp-pci.c | ||
| sp-platform.c | ||
| tee-dev.c | ||
| tee-dev.h | ||