diff options
author | beck <> | 2002-06-11 12:26:02 +0000 |
---|---|---|
committer | beck <> | 2002-06-11 12:26:02 +0000 |
commit | f93ac9817d952baaa63dc9f3008ea7678ccc1697 (patch) | |
tree | afaadc674f82aa6847a70b5338ecf064114c7c3a /src | |
parent | a359633ab5fea6e08cd7f0886274c69a601dee32 (diff) | |
download | openbsd-f93ac9817d952baaa63dc9f3008ea7678ccc1697.tar.gz openbsd-f93ac9817d952baaa63dc9f3008ea7678ccc1697.tar.bz2 openbsd-f93ac9817d952baaa63dc9f3008ea7678ccc1697.zip |
Make DSA work now... at least for things that can do bn_mod_exp.
Diffstat (limited to 'src')
-rw-r--r-- | src/lib/libcrypto/engine/hw_cryptodev.c | 11 | ||||
-rw-r--r-- | src/lib/libssl/src/crypto/engine/hw_cryptodev.c | 11 |
2 files changed, 8 insertions, 14 deletions
diff --git a/src/lib/libcrypto/engine/hw_cryptodev.c b/src/lib/libcrypto/engine/hw_cryptodev.c index 8f55798421..8eea1935a6 100644 --- a/src/lib/libcrypto/engine/hw_cryptodev.c +++ b/src/lib/libcrypto/engine/hw_cryptodev.c | |||
@@ -809,6 +809,7 @@ cryptodev_dsa_do_sign(const unsigned char *dgst, int dlen, DSA *dsa) | |||
809 | goto err; | 809 | goto err; |
810 | } | 810 | } |
811 | 811 | ||
812 | printf("bar\n"); | ||
812 | memset(&kop, 0, sizeof kop); | 813 | memset(&kop, 0, sizeof kop); |
813 | kop.crk_op = CRK_DSA_SIGN; | 814 | kop.crk_op = CRK_DSA_SIGN; |
814 | 815 | ||
@@ -849,6 +850,7 @@ cryptodev_dsa_verify(const unsigned char *dgst, int dlen, | |||
849 | struct crypt_kop kop; | 850 | struct crypt_kop kop; |
850 | int dsaret = 1; | 851 | int dsaret = 1; |
851 | 852 | ||
853 | printf("foo\n"); | ||
852 | memset(&kop, 0, sizeof kop); | 854 | memset(&kop, 0, sizeof kop); |
853 | kop.crk_op = CRK_DSA_VERIFY; | 855 | kop.crk_op = CRK_DSA_VERIFY; |
854 | 856 | ||
@@ -1021,14 +1023,10 @@ ENGINE_load_cryptodev(void) | |||
1021 | } | 1023 | } |
1022 | } | 1024 | } |
1023 | 1025 | ||
1024 | #if 0 | ||
1025 | /* dsa is currently busted. */ | ||
1026 | if (ENGINE_set_DSA(engine, &cryptodev_dsa)) { | 1026 | if (ENGINE_set_DSA(engine, &cryptodev_dsa)) { |
1027 | const DSA_METHOD *meth = DSA_OpenSSL(); | 1027 | const DSA_METHOD *meth = DSA_OpenSSL(); |
1028 | 1028 | ||
1029 | cryptodev_dsa.dsa_do_sign = meth->dsa_do_sign; | 1029 | memcpy(&cryptodev_dsa, meth, sizeof(DSA_METHOD)); |
1030 | cryptodev_dsa.dsa_do_verify = meth->dsa_do_verify; | ||
1031 | cryptodev_dsa.bn_mod_exp = meth->bn_mod_exp; | ||
1032 | if (cryptodev_asymfeat & CRF_DSA_SIGN) | 1030 | if (cryptodev_asymfeat & CRF_DSA_SIGN) |
1033 | cryptodev_dsa.dsa_do_sign = cryptodev_dsa_do_sign; | 1031 | cryptodev_dsa.dsa_do_sign = cryptodev_dsa_do_sign; |
1034 | if (cryptodev_asymfeat & CRF_DSA_VERIFY) | 1032 | if (cryptodev_asymfeat & CRF_DSA_VERIFY) |
@@ -1036,7 +1034,6 @@ ENGINE_load_cryptodev(void) | |||
1036 | if (cryptodev_asymfeat & CRF_MOD_EXP) | 1034 | if (cryptodev_asymfeat & CRF_MOD_EXP) |
1037 | cryptodev_dsa.bn_mod_exp = cryptodev_dsa_bn_mod_exp; | 1035 | cryptodev_dsa.bn_mod_exp = cryptodev_dsa_bn_mod_exp; |
1038 | } | 1036 | } |
1039 | #endif | ||
1040 | 1037 | ||
1041 | 1038 | ||
1042 | if (ENGINE_set_DH(engine, &cryptodev_dh)){ | 1039 | if (ENGINE_set_DH(engine, &cryptodev_dh)){ |
diff --git a/src/lib/libssl/src/crypto/engine/hw_cryptodev.c b/src/lib/libssl/src/crypto/engine/hw_cryptodev.c index 8f55798421..8eea1935a6 100644 --- a/src/lib/libssl/src/crypto/engine/hw_cryptodev.c +++ b/src/lib/libssl/src/crypto/engine/hw_cryptodev.c | |||
@@ -809,6 +809,7 @@ cryptodev_dsa_do_sign(const unsigned char *dgst, int dlen, DSA *dsa) | |||
809 | goto err; | 809 | goto err; |
810 | } | 810 | } |
811 | 811 | ||
812 | printf("bar\n"); | ||
812 | memset(&kop, 0, sizeof kop); | 813 | memset(&kop, 0, sizeof kop); |
813 | kop.crk_op = CRK_DSA_SIGN; | 814 | kop.crk_op = CRK_DSA_SIGN; |
814 | 815 | ||
@@ -849,6 +850,7 @@ cryptodev_dsa_verify(const unsigned char *dgst, int dlen, | |||
849 | struct crypt_kop kop; | 850 | struct crypt_kop kop; |
850 | int dsaret = 1; | 851 | int dsaret = 1; |
851 | 852 | ||
853 | printf("foo\n"); | ||
852 | memset(&kop, 0, sizeof kop); | 854 | memset(&kop, 0, sizeof kop); |
853 | kop.crk_op = CRK_DSA_VERIFY; | 855 | kop.crk_op = CRK_DSA_VERIFY; |
854 | 856 | ||
@@ -1021,14 +1023,10 @@ ENGINE_load_cryptodev(void) | |||
1021 | } | 1023 | } |
1022 | } | 1024 | } |
1023 | 1025 | ||
1024 | #if 0 | ||
1025 | /* dsa is currently busted. */ | ||
1026 | if (ENGINE_set_DSA(engine, &cryptodev_dsa)) { | 1026 | if (ENGINE_set_DSA(engine, &cryptodev_dsa)) { |
1027 | const DSA_METHOD *meth = DSA_OpenSSL(); | 1027 | const DSA_METHOD *meth = DSA_OpenSSL(); |
1028 | 1028 | ||
1029 | cryptodev_dsa.dsa_do_sign = meth->dsa_do_sign; | 1029 | memcpy(&cryptodev_dsa, meth, sizeof(DSA_METHOD)); |
1030 | cryptodev_dsa.dsa_do_verify = meth->dsa_do_verify; | ||
1031 | cryptodev_dsa.bn_mod_exp = meth->bn_mod_exp; | ||
1032 | if (cryptodev_asymfeat & CRF_DSA_SIGN) | 1030 | if (cryptodev_asymfeat & CRF_DSA_SIGN) |
1033 | cryptodev_dsa.dsa_do_sign = cryptodev_dsa_do_sign; | 1031 | cryptodev_dsa.dsa_do_sign = cryptodev_dsa_do_sign; |
1034 | if (cryptodev_asymfeat & CRF_DSA_VERIFY) | 1032 | if (cryptodev_asymfeat & CRF_DSA_VERIFY) |
@@ -1036,7 +1034,6 @@ ENGINE_load_cryptodev(void) | |||
1036 | if (cryptodev_asymfeat & CRF_MOD_EXP) | 1034 | if (cryptodev_asymfeat & CRF_MOD_EXP) |
1037 | cryptodev_dsa.bn_mod_exp = cryptodev_dsa_bn_mod_exp; | 1035 | cryptodev_dsa.bn_mod_exp = cryptodev_dsa_bn_mod_exp; |
1038 | } | 1036 | } |
1039 | #endif | ||
1040 | 1037 | ||
1041 | 1038 | ||
1042 | if (ENGINE_set_DH(engine, &cryptodev_dh)){ | 1039 | if (ENGINE_set_DH(engine, &cryptodev_dh)){ |