diff options
Diffstat (limited to 'src/lib/libcrypto/ec/eck_prn.c')
-rw-r--r-- | src/lib/libcrypto/ec/eck_prn.c | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/src/lib/libcrypto/ec/eck_prn.c b/src/lib/libcrypto/ec/eck_prn.c index 9bf05bb38c..598b83835f 100644 --- a/src/lib/libcrypto/ec/eck_prn.c +++ b/src/lib/libcrypto/ec/eck_prn.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: eck_prn.c,v 1.23 2023/07/02 13:48:47 tb Exp $ */ | 1 | /* $OpenBSD: eck_prn.c,v 1.24 2023/07/02 14:53:18 tb Exp $ */ |
2 | /* | 2 | /* |
3 | * Written by Nils Larsch for the OpenSSL project. | 3 | * Written by Nils Larsch for the OpenSSL project. |
4 | */ | 4 | */ |
@@ -203,7 +203,9 @@ ecpk_print_explicit_parameters(BIO *bp, const EC_GROUP *group, int off) | |||
203 | BIGNUM *p, *a, *b, *order, *cofactor; | 203 | BIGNUM *p, *a, *b, *order, *cofactor; |
204 | BIGNUM *gen = NULL; | 204 | BIGNUM *gen = NULL; |
205 | const EC_POINT *generator; | 205 | const EC_POINT *generator; |
206 | const unsigned char *conversion, *seed; | 206 | const char *conversion_form; |
207 | char *conversion = NULL; | ||
208 | const unsigned char *seed; | ||
207 | size_t seed_len; | 209 | size_t seed_len; |
208 | unsigned char *buffer = NULL; | 210 | unsigned char *buffer = NULL; |
209 | size_t buf_len, i; | 211 | size_t buf_len, i; |
@@ -286,13 +288,17 @@ ecpk_print_explicit_parameters(BIO *bp, const EC_GROUP *group, int off) | |||
286 | goto err; | 288 | goto err; |
287 | 289 | ||
288 | if (form == POINT_CONVERSION_COMPRESSED) | 290 | if (form == POINT_CONVERSION_COMPRESSED) |
289 | conversion = "Generator (compressed):"; | 291 | conversion_form = "compressed"; |
290 | else if (form == POINT_CONVERSION_UNCOMPRESSED) | 292 | else if (form == POINT_CONVERSION_UNCOMPRESSED) |
291 | conversion = "Generator (uncompressed):"; | 293 | conversion_form = "compressed"; |
292 | else if (form == POINT_CONVERSION_HYBRID) | 294 | else if (form == POINT_CONVERSION_HYBRID) |
293 | conversion = "Generator (hybrid):"; | 295 | conversion_form = "hybrid"; |
294 | else | 296 | else |
295 | conversion = "Generator (unknown):"; | 297 | conversion_form = "unknown"; |
298 | if (asprintf(&conversion, "Generator (%s):", conversion_form) == -1) { | ||
299 | conversion = NULL; | ||
300 | goto err; | ||
301 | } | ||
296 | if (!ASN1_bn_print(bp, conversion, gen, buffer, off)) | 302 | if (!ASN1_bn_print(bp, conversion, gen, buffer, off)) |
297 | goto err; | 303 | goto err; |
298 | 304 | ||
@@ -311,6 +317,7 @@ err: | |||
311 | BN_CTX_end(ctx); | 317 | BN_CTX_end(ctx); |
312 | BN_CTX_free(ctx); | 318 | BN_CTX_free(ctx); |
313 | free(buffer); | 319 | free(buffer); |
320 | free(conversion); | ||
314 | 321 | ||
315 | return ret; | 322 | return ret; |
316 | } | 323 | } |