DPP2: Fix error path handling in enterprise provisioning
The allocated memory pointed by the pem pointer was freed on an error
path without clearing the pointer to NULL before returning it from the
function. This could have resulted in use of freed memory in an error
case. Fix this by clearing the pointer so that the function returns NULL
properly in the case of this error.
Fixes: ace3723d98
("DPP2: Enterprise provisioning (Enrollee)")
Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
This commit is contained in:
parent
f724dd1bfd
commit
3d490296bc
1 changed files with 1 additions and 0 deletions
|
@ -2868,6 +2868,7 @@ struct wpabuf * dpp_pkcs7_certs(const struct wpabuf *pkcs7)
|
||||||
res = BIO_read(out, wpabuf_put(pem, 0), rlen);
|
res = BIO_read(out, wpabuf_put(pem, 0), rlen);
|
||||||
if (res <= 0) {
|
if (res <= 0) {
|
||||||
wpabuf_free(pem);
|
wpabuf_free(pem);
|
||||||
|
pem = NULL;
|
||||||
goto fail;
|
goto fail;
|
||||||
}
|
}
|
||||||
wpabuf_put(pem, res);
|
wpabuf_put(pem, res);
|
||||||
|
|
Loading…
Reference in a new issue