diff options
Diffstat (limited to 'src/lib/libcrypto/dh/dh_check.c')
-rw-r--r-- | src/lib/libcrypto/dh/dh_check.c | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/src/lib/libcrypto/dh/dh_check.c b/src/lib/libcrypto/dh/dh_check.c index 65602e494f..f0373f7d68 100644 --- a/src/lib/libcrypto/dh/dh_check.c +++ b/src/lib/libcrypto/dh/dh_check.c | |||
@@ -58,10 +58,10 @@ | |||
58 | 58 | ||
59 | #include <stdio.h> | 59 | #include <stdio.h> |
60 | #include "cryptlib.h" | 60 | #include "cryptlib.h" |
61 | #include "bn.h" | 61 | #include <openssl/bn.h> |
62 | #include "dh.h" | 62 | #include <openssl/dh.h> |
63 | 63 | ||
64 | /* Check that p is a strong prime and | 64 | /* Check that p is a safe prime and |
65 | * if g is 2, 3 or 5, check that is is a suitable generator | 65 | * if g is 2, 3 or 5, check that is is a suitable generator |
66 | * where | 66 | * where |
67 | * for 2, p mod 24 == 11 | 67 | * for 2, p mod 24 == 11 |
@@ -70,9 +70,7 @@ | |||
70 | * should hold. | 70 | * should hold. |
71 | */ | 71 | */ |
72 | 72 | ||
73 | int DH_check(dh,ret) | 73 | int DH_check(const DH *dh, int *ret) |
74 | DH *dh; | ||
75 | int *ret; | ||
76 | { | 74 | { |
77 | int ok=0; | 75 | int ok=0; |
78 | BN_CTX *ctx=NULL; | 76 | BN_CTX *ctx=NULL; |
@@ -90,11 +88,13 @@ int *ret; | |||
90 | l=BN_mod_word(dh->p,24); | 88 | l=BN_mod_word(dh->p,24); |
91 | if (l != 11) *ret|=DH_NOT_SUITABLE_GENERATOR; | 89 | if (l != 11) *ret|=DH_NOT_SUITABLE_GENERATOR; |
92 | } | 90 | } |
93 | /* else if (BN_is_word(dh->g,DH_GENERATOR_3)) | 91 | #if 0 |
92 | else if (BN_is_word(dh->g,DH_GENERATOR_3)) | ||
94 | { | 93 | { |
95 | l=BN_mod_word(dh->p,12); | 94 | l=BN_mod_word(dh->p,12); |
96 | if (l != 5) *ret|=DH_NOT_SUITABLE_GENERATOR; | 95 | if (l != 5) *ret|=DH_NOT_SUITABLE_GENERATOR; |
97 | }*/ | 96 | } |
97 | #endif | ||
98 | else if (BN_is_word(dh->g,DH_GENERATOR_5)) | 98 | else if (BN_is_word(dh->g,DH_GENERATOR_5)) |
99 | { | 99 | { |
100 | l=BN_mod_word(dh->p,10); | 100 | l=BN_mod_word(dh->p,10); |
@@ -110,7 +110,7 @@ int *ret; | |||
110 | { | 110 | { |
111 | if (!BN_rshift1(q,dh->p)) goto err; | 111 | if (!BN_rshift1(q,dh->p)) goto err; |
112 | if (!BN_is_prime(q,BN_prime_checks,NULL,ctx,NULL)) | 112 | if (!BN_is_prime(q,BN_prime_checks,NULL,ctx,NULL)) |
113 | *ret|=DH_CHECK_P_NOT_STRONG_PRIME; | 113 | *ret|=DH_CHECK_P_NOT_SAFE_PRIME; |
114 | } | 114 | } |
115 | ok=1; | 115 | ok=1; |
116 | err: | 116 | err: |