diff options
Diffstat (limited to 'src/lib/libcrypto/dsa/dsa_asn1.c')
| -rw-r--r-- | src/lib/libcrypto/dsa/dsa_asn1.c | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/src/lib/libcrypto/dsa/dsa_asn1.c b/src/lib/libcrypto/dsa/dsa_asn1.c index 70a826ca95..5e4f882cfc 100644 --- a/src/lib/libcrypto/dsa/dsa_asn1.c +++ b/src/lib/libcrypto/dsa/dsa_asn1.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: dsa_asn1.c,v 1.30 2023/03/25 09:09:28 tb Exp $ */ | 1 | /* $OpenBSD: dsa_asn1.c,v 1.31 2023/07/08 14:28:15 beck Exp $ */ |
| 2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL | 2 | /* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL |
| 3 | * project 2000. | 3 | * project 2000. |
| 4 | */ | 4 | */ |
| @@ -126,12 +126,14 @@ d2i_DSA_SIG(DSA_SIG **a, const unsigned char **in, long len) | |||
| 126 | return (DSA_SIG *)ASN1_item_d2i((ASN1_VALUE **)a, in, len, | 126 | return (DSA_SIG *)ASN1_item_d2i((ASN1_VALUE **)a, in, len, |
| 127 | &DSA_SIG_it); | 127 | &DSA_SIG_it); |
| 128 | } | 128 | } |
| 129 | LCRYPTO_ALIAS(d2i_DSA_SIG); | ||
| 129 | 130 | ||
| 130 | int | 131 | int |
| 131 | i2d_DSA_SIG(const DSA_SIG *a, unsigned char **out) | 132 | i2d_DSA_SIG(const DSA_SIG *a, unsigned char **out) |
| 132 | { | 133 | { |
| 133 | return ASN1_item_i2d((ASN1_VALUE *)a, out, &DSA_SIG_it); | 134 | return ASN1_item_i2d((ASN1_VALUE *)a, out, &DSA_SIG_it); |
| 134 | } | 135 | } |
| 136 | LCRYPTO_ALIAS(i2d_DSA_SIG); | ||
| 135 | 137 | ||
| 136 | void | 138 | void |
| 137 | DSA_SIG_get0(const DSA_SIG *sig, const BIGNUM **pr, const BIGNUM **ps) | 139 | DSA_SIG_get0(const DSA_SIG *sig, const BIGNUM **pr, const BIGNUM **ps) |
| @@ -141,6 +143,7 @@ DSA_SIG_get0(const DSA_SIG *sig, const BIGNUM **pr, const BIGNUM **ps) | |||
| 141 | if (ps != NULL) | 143 | if (ps != NULL) |
| 142 | *ps = sig->s; | 144 | *ps = sig->s; |
| 143 | } | 145 | } |
| 146 | LCRYPTO_ALIAS(DSA_SIG_get0); | ||
| 144 | 147 | ||
| 145 | int | 148 | int |
| 146 | DSA_SIG_set0(DSA_SIG *sig, BIGNUM *r, BIGNUM *s) | 149 | DSA_SIG_set0(DSA_SIG *sig, BIGNUM *r, BIGNUM *s) |
| @@ -155,6 +158,7 @@ DSA_SIG_set0(DSA_SIG *sig, BIGNUM *r, BIGNUM *s) | |||
| 155 | 158 | ||
| 156 | return 1; | 159 | return 1; |
| 157 | } | 160 | } |
| 161 | LCRYPTO_ALIAS(DSA_SIG_set0); | ||
| 158 | 162 | ||
| 159 | /* Override the default free and new methods */ | 163 | /* Override the default free and new methods */ |
| 160 | static int | 164 | static int |
| @@ -243,12 +247,14 @@ d2i_DSAPrivateKey(DSA **a, const unsigned char **in, long len) | |||
| 243 | return (DSA *)ASN1_item_d2i((ASN1_VALUE **)a, in, len, | 247 | return (DSA *)ASN1_item_d2i((ASN1_VALUE **)a, in, len, |
| 244 | &DSAPrivateKey_it); | 248 | &DSAPrivateKey_it); |
| 245 | } | 249 | } |
| 250 | LCRYPTO_ALIAS(d2i_DSAPrivateKey); | ||
| 246 | 251 | ||
| 247 | int | 252 | int |
| 248 | i2d_DSAPrivateKey(const DSA *a, unsigned char **out) | 253 | i2d_DSAPrivateKey(const DSA *a, unsigned char **out) |
| 249 | { | 254 | { |
| 250 | return ASN1_item_i2d((ASN1_VALUE *)a, out, &DSAPrivateKey_it); | 255 | return ASN1_item_i2d((ASN1_VALUE *)a, out, &DSAPrivateKey_it); |
| 251 | } | 256 | } |
| 257 | LCRYPTO_ALIAS(i2d_DSAPrivateKey); | ||
| 252 | 258 | ||
| 253 | static const ASN1_AUX DSAparams_aux = { | 259 | static const ASN1_AUX DSAparams_aux = { |
| 254 | .app_data = NULL, | 260 | .app_data = NULL, |
| @@ -299,36 +305,42 @@ d2i_DSAparams(DSA **a, const unsigned char **in, long len) | |||
| 299 | return (DSA *)ASN1_item_d2i((ASN1_VALUE **)a, in, len, | 305 | return (DSA *)ASN1_item_d2i((ASN1_VALUE **)a, in, len, |
| 300 | &DSAparams_it); | 306 | &DSAparams_it); |
| 301 | } | 307 | } |
| 308 | LCRYPTO_ALIAS(d2i_DSAparams); | ||
| 302 | 309 | ||
| 303 | int | 310 | int |
| 304 | i2d_DSAparams(const DSA *a, unsigned char **out) | 311 | i2d_DSAparams(const DSA *a, unsigned char **out) |
| 305 | { | 312 | { |
| 306 | return ASN1_item_i2d((ASN1_VALUE *)a, out, &DSAparams_it); | 313 | return ASN1_item_i2d((ASN1_VALUE *)a, out, &DSAparams_it); |
| 307 | } | 314 | } |
| 315 | LCRYPTO_ALIAS(i2d_DSAparams); | ||
| 308 | 316 | ||
| 309 | DSA * | 317 | DSA * |
| 310 | d2i_DSAparams_bio(BIO *bp, DSA **a) | 318 | d2i_DSAparams_bio(BIO *bp, DSA **a) |
| 311 | { | 319 | { |
| 312 | return ASN1_item_d2i_bio(&DSAparams_it, bp, a); | 320 | return ASN1_item_d2i_bio(&DSAparams_it, bp, a); |
| 313 | } | 321 | } |
| 322 | LCRYPTO_ALIAS(d2i_DSAparams_bio); | ||
| 314 | 323 | ||
| 315 | int | 324 | int |
| 316 | i2d_DSAparams_bio(BIO *bp, DSA *a) | 325 | i2d_DSAparams_bio(BIO *bp, DSA *a) |
| 317 | { | 326 | { |
| 318 | return ASN1_item_i2d_bio(&DSAparams_it, bp, a); | 327 | return ASN1_item_i2d_bio(&DSAparams_it, bp, a); |
| 319 | } | 328 | } |
| 329 | LCRYPTO_ALIAS(i2d_DSAparams_bio); | ||
| 320 | 330 | ||
| 321 | DSA * | 331 | DSA * |
| 322 | d2i_DSAparams_fp(FILE *fp, DSA **a) | 332 | d2i_DSAparams_fp(FILE *fp, DSA **a) |
| 323 | { | 333 | { |
| 324 | return ASN1_item_d2i_fp(&DSAparams_it, fp, a); | 334 | return ASN1_item_d2i_fp(&DSAparams_it, fp, a); |
| 325 | } | 335 | } |
| 336 | LCRYPTO_ALIAS(d2i_DSAparams_fp); | ||
| 326 | 337 | ||
| 327 | int | 338 | int |
| 328 | i2d_DSAparams_fp(FILE *fp, DSA *a) | 339 | i2d_DSAparams_fp(FILE *fp, DSA *a) |
| 329 | { | 340 | { |
| 330 | return ASN1_item_i2d_fp(&DSAparams_it, fp, a); | 341 | return ASN1_item_i2d_fp(&DSAparams_it, fp, a); |
| 331 | } | 342 | } |
| 343 | LCRYPTO_ALIAS(i2d_DSAparams_fp); | ||
| 332 | 344 | ||
| 333 | static const ASN1_AUX DSAPublicKey_aux = { | 345 | static const ASN1_AUX DSAPublicKey_aux = { |
| 334 | .app_data = NULL, | 346 | .app_data = NULL, |
| @@ -385,18 +397,21 @@ d2i_DSAPublicKey(DSA **a, const unsigned char **in, long len) | |||
| 385 | return (DSA *)ASN1_item_d2i((ASN1_VALUE **)a, in, len, | 397 | return (DSA *)ASN1_item_d2i((ASN1_VALUE **)a, in, len, |
| 386 | &DSAPublicKey_it); | 398 | &DSAPublicKey_it); |
| 387 | } | 399 | } |
| 400 | LCRYPTO_ALIAS(d2i_DSAPublicKey); | ||
| 388 | 401 | ||
| 389 | int | 402 | int |
| 390 | i2d_DSAPublicKey(const DSA *a, unsigned char **out) | 403 | i2d_DSAPublicKey(const DSA *a, unsigned char **out) |
| 391 | { | 404 | { |
| 392 | return ASN1_item_i2d((ASN1_VALUE *)a, out, &DSAPublicKey_it); | 405 | return ASN1_item_i2d((ASN1_VALUE *)a, out, &DSAPublicKey_it); |
| 393 | } | 406 | } |
| 407 | LCRYPTO_ALIAS(i2d_DSAPublicKey); | ||
| 394 | 408 | ||
| 395 | DSA * | 409 | DSA * |
| 396 | DSAparams_dup(DSA *dsa) | 410 | DSAparams_dup(DSA *dsa) |
| 397 | { | 411 | { |
| 398 | return ASN1_item_dup(&DSAparams_it, dsa); | 412 | return ASN1_item_dup(&DSAparams_it, dsa); |
| 399 | } | 413 | } |
| 414 | LCRYPTO_ALIAS(DSAparams_dup); | ||
| 400 | 415 | ||
| 401 | int | 416 | int |
| 402 | DSA_sign(int type, const unsigned char *dgst, int dlen, unsigned char *sig, | 417 | DSA_sign(int type, const unsigned char *dgst, int dlen, unsigned char *sig, |
| @@ -422,6 +437,7 @@ DSA_sign(int type, const unsigned char *dgst, int dlen, unsigned char *sig, | |||
| 422 | 437 | ||
| 423 | return ret; | 438 | return ret; |
| 424 | } | 439 | } |
| 440 | LCRYPTO_ALIAS(DSA_sign); | ||
| 425 | 441 | ||
| 426 | /* | 442 | /* |
| 427 | * data has already been hashed (probably with SHA or SHA-1). | 443 | * data has already been hashed (probably with SHA or SHA-1). |
| @@ -457,3 +473,4 @@ DSA_verify(int type, const unsigned char *dgst, int dgst_len, | |||
| 457 | 473 | ||
| 458 | return ret; | 474 | return ret; |
| 459 | } | 475 | } |
| 476 | LCRYPTO_ALIAS(DSA_verify); | ||
