diff options
| author | Bob Beck <[email protected]> | 2026-08-05 17:54:47 +0200 |
|---|---|---|
| committer | Tomas Mraz <[email protected]> | 2026-08-27 15:52:18 +0200 |
| commit | 52a9a4f24750ef15a23343729acad71942c5bc55 (patch) | |
| tree | 952e12a9f6d31eacfcfe62ce560a9bc06e7fcd6b /apps | |
| parent | Don't read an ASN1_STRING data raw and assume it's 0 byte terminated (diff) | |
| download | openssl-52a9a4f24750ef15a23343729acad71942c5bc55.tar.gz openssl-52a9a4f24750ef15a23343729acad71942c5bc55.zip | |
Don't call strlcpy on a non-string.
Again, ASN1_STRING_get0_data has never been guaranteed to be nul terminated.
Reviewed-by: Neil Horman <[email protected]>
Reviewed-by: Andrew Dinh <[email protected]>
Reviewed-by: Nikola Pajkovsky <[email protected]>
Merge-date: Thu Aug 27 13:52:40 2026
Merged-from: https://github.com/openssl/openssl/pull/32178
Diffstat (limited to 'apps')
| -rw-r--r-- | apps/ca.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/apps/ca.c b/apps/ca.c index 1c42a2dfe03..4fb4fe3d744 100644 --- a/apps/ca.c +++ b/apps/ca.c @@ -2428,7 +2428,8 @@ static char *make_revocation_str(REVINFO_TYPE rev_type, const char *rev_arg) i += strlen(other) + 1; str = app_malloc(i, "revocation reason"); - OPENSSL_strlcpy(str, (const char *)ASN1_STRING_get0_data(revtm), i); + BIO_snprintf(str, i, "%.*s", (int)ASN1_STRING_get_length(revtm), + (const char *)ASN1_STRING_get0_data(revtm)); if (reason) { OPENSSL_strlcat(str, ",", i); OPENSSL_strlcat(str, reason, i); |
