summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto/dsa
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/libcrypto/dsa')
-rw-r--r--src/lib/libcrypto/dsa/dsa_ameth.c118
1 files changed, 57 insertions, 61 deletions
diff --git a/src/lib/libcrypto/dsa/dsa_ameth.c b/src/lib/libcrypto/dsa/dsa_ameth.c
index 4c20b45b18..d4cce72fcb 100644
--- a/src/lib/libcrypto/dsa/dsa_ameth.c
+++ b/src/lib/libcrypto/dsa/dsa_ameth.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: dsa_ameth.c,v 1.55 2023/08/12 07:59:48 tb Exp $ */ 1/* $OpenBSD: dsa_ameth.c,v 1.56 2024/01/04 16:41:56 tb 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 2006. 3 * project 2006.
4 */ 4 */
@@ -674,64 +674,60 @@ dsa_pkey_ctrl(EVP_PKEY *pkey, int op, long arg1, void *arg2)
674 } 674 }
675} 675}
676 676
677/* NB these are sorted in pkey_id order, lowest first */ 677const EVP_PKEY_ASN1_METHOD dsa_asn1_meth = {
678 678 .pkey_id = EVP_PKEY_DSA,
679const EVP_PKEY_ASN1_METHOD dsa_asn1_meths[] = { 679 .pkey_base_id = EVP_PKEY_DSA,
680 { 680
681 .pkey_id = EVP_PKEY_DSA2, 681 .pem_str = "DSA",
682 .pkey_base_id = EVP_PKEY_DSA, 682 .info = "OpenSSL DSA method",
683 .pkey_flags = ASN1_PKEY_ALIAS 683
684 }, 684 .pub_decode = dsa_pub_decode,
685 685 .pub_encode = dsa_pub_encode,
686 { 686 .pub_cmp = dsa_pub_cmp,
687 .pkey_id = EVP_PKEY_DSA1, 687 .pub_print = dsa_pub_print,
688 .pkey_base_id = EVP_PKEY_DSA, 688
689 .pkey_flags = ASN1_PKEY_ALIAS 689 .priv_decode = dsa_priv_decode,
690 }, 690 .priv_encode = dsa_priv_encode,
691 691 .priv_print = dsa_priv_print,
692 { 692
693 .pkey_id = EVP_PKEY_DSA4, 693 .pkey_size = dsa_size,
694 .pkey_base_id = EVP_PKEY_DSA, 694 .pkey_bits = dsa_bits,
695 .pkey_flags = ASN1_PKEY_ALIAS 695 .pkey_security_bits = dsa_security_bits,
696 }, 696
697 697 .param_decode = dsa_param_decode,
698 { 698 .param_encode = dsa_param_encode,
699 .pkey_id = EVP_PKEY_DSA3, 699 .param_missing = dsa_missing_parameters,
700 .pkey_base_id = EVP_PKEY_DSA, 700 .param_copy = dsa_copy_parameters,
701 .pkey_flags = ASN1_PKEY_ALIAS 701 .param_cmp = dsa_cmp_parameters,
702 }, 702 .param_print = dsa_param_print,
703 703 .sig_print = dsa_sig_print,
704 { 704
705 .pkey_id = EVP_PKEY_DSA, 705 .pkey_free = dsa_free,
706 .pkey_base_id = EVP_PKEY_DSA, 706 .pkey_ctrl = dsa_pkey_ctrl,
707 707 .old_priv_decode = old_dsa_priv_decode,
708 .pem_str = "DSA", 708 .old_priv_encode = old_dsa_priv_encode
709 .info = "OpenSSL DSA method", 709};
710 710
711 .pub_decode = dsa_pub_decode, 711const EVP_PKEY_ASN1_METHOD dsa1_asn1_meth = {
712 .pub_encode = dsa_pub_encode, 712 .pkey_id = EVP_PKEY_DSA1,
713 .pub_cmp = dsa_pub_cmp, 713 .pkey_base_id = EVP_PKEY_DSA,
714 .pub_print = dsa_pub_print, 714 .pkey_flags = ASN1_PKEY_ALIAS,
715 715};
716 .priv_decode = dsa_priv_decode, 716
717 .priv_encode = dsa_priv_encode, 717const EVP_PKEY_ASN1_METHOD dsa2_asn1_meth = {
718 .priv_print = dsa_priv_print, 718 .pkey_id = EVP_PKEY_DSA2,
719 719 .pkey_base_id = EVP_PKEY_DSA,
720 .pkey_size = dsa_size, 720 .pkey_flags = ASN1_PKEY_ALIAS,
721 .pkey_bits = dsa_bits, 721};
722 .pkey_security_bits = dsa_security_bits, 722
723 723const EVP_PKEY_ASN1_METHOD dsa3_asn1_meth = {
724 .param_decode = dsa_param_decode, 724 .pkey_id = EVP_PKEY_DSA3,
725 .param_encode = dsa_param_encode, 725 .pkey_base_id = EVP_PKEY_DSA,
726 .param_missing = dsa_missing_parameters, 726 .pkey_flags = ASN1_PKEY_ALIAS,
727 .param_copy = dsa_copy_parameters, 727};
728 .param_cmp = dsa_cmp_parameters, 728
729 .param_print = dsa_param_print, 729const EVP_PKEY_ASN1_METHOD dsa4_asn1_meth = {
730 .sig_print = dsa_sig_print, 730 .pkey_id = EVP_PKEY_DSA4,
731 731 .pkey_base_id = EVP_PKEY_DSA,
732 .pkey_free = dsa_free, 732 .pkey_flags = ASN1_PKEY_ALIAS,
733 .pkey_ctrl = dsa_pkey_ctrl,
734 .old_priv_decode = old_dsa_priv_decode,
735 .old_priv_encode = old_dsa_priv_encode
736 }
737}; 733};