mbedtls_pem_write_buffer: Correctly report needed buffer size for all possible line lengths and counts
Signed-off-by: Jethro Beekman <jethro@fortanix.com>
This commit is contained in:
parent
f57273c817
commit
746df88e90
3 changed files with 33 additions and 1 deletions
|
@ -491,7 +491,7 @@ int mbedtls_pem_write_buffer(const char *header, const char *footer,
|
|||
size_t len = 0, use_len, add_len = 0;
|
||||
|
||||
mbedtls_base64_encode(NULL, 0, &use_len, der_data, der_len);
|
||||
add_len = strlen(header) + strlen(footer) + (use_len / 64) + 1;
|
||||
add_len = strlen(header) + strlen(footer) + (((use_len > 2) ? (use_len - 2) : 0) / 64) + 1;
|
||||
|
||||
if (use_len + add_len > buf_len) {
|
||||
*olen = use_len + add_len;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue