david/ipxe
david
/
ipxe
Archived
1
0
Fork 0

[crypto] Free correct pointer on the error path

Signed-off-by: Michael Brown <mcb30@ipxe.org>
This commit is contained in:
Michael Brown 2017-03-21 14:07:07 +02:00
parent 9b581158b5
commit 36cffe054d
1 changed files with 4 additions and 3 deletions

View File

@ -145,7 +145,7 @@ static int pem_asn1 ( struct image *image, size_t offset,
*cursor = malloc ( sizeof ( **cursor ) + decoded_max_len ); *cursor = malloc ( sizeof ( **cursor ) + decoded_max_len );
if ( ! *cursor ) { if ( ! *cursor ) {
rc = -ENOMEM; rc = -ENOMEM;
goto err_alloc_decoded; goto err_alloc_cursor;
} }
decoded = ( ( ( void * ) *cursor ) + sizeof ( **cursor ) ); decoded = ( ( ( void * ) *cursor ) + sizeof ( **cursor ) );
@ -172,8 +172,9 @@ static int pem_asn1 ( struct image *image, size_t offset,
return offset; return offset;
err_decode: err_decode:
free ( decoded ); free ( *cursor );
err_alloc_decoded: *cursor = NULL;
err_alloc_cursor:
free ( encoded ); free ( encoded );
err_alloc_encoded: err_alloc_encoded:
err_end: err_end: