diff options
author | beck <> | 2000-03-19 11:13:58 +0000 |
---|---|---|
committer | beck <> | 2000-03-19 11:13:58 +0000 |
commit | 796d609550df3a33fc11468741c5d2f6d3df4c11 (patch) | |
tree | 6c6d539061caa20372dad0ac4ddb1dfae2fbe7fe /src/lib/libcrypto/rsa/rsa.h | |
parent | 5be3114c1fd7e0dfea1e38d3abb4cbba75244419 (diff) | |
download | openbsd-796d609550df3a33fc11468741c5d2f6d3df4c11.tar.gz openbsd-796d609550df3a33fc11468741c5d2f6d3df4c11.tar.bz2 openbsd-796d609550df3a33fc11468741c5d2f6d3df4c11.zip |
OpenSSL 0.9.5 merge
*warning* this bumps shared lib minors for libssl and libcrypto from 2.1 to 2.2
if you are using the ssl26 packages for ssh and other things to work you will
need to get new ones (see ~beck/libsslsnap/<arch>) on cvs or ~beck/src-patent.tar.gz on cvs
Diffstat (limited to 'src/lib/libcrypto/rsa/rsa.h')
-rw-r--r-- | src/lib/libcrypto/rsa/rsa.h | 33 |
1 files changed, 27 insertions, 6 deletions
diff --git a/src/lib/libcrypto/rsa/rsa.h b/src/lib/libcrypto/rsa/rsa.h index 9230b2fcc9..f9f9b5cfe9 100644 --- a/src/lib/libcrypto/rsa/rsa.h +++ b/src/lib/libcrypto/rsa/rsa.h | |||
@@ -91,6 +91,18 @@ typedef struct rsa_meth_st | |||
91 | int (*finish)(RSA *rsa); /* called at free */ | 91 | int (*finish)(RSA *rsa); /* called at free */ |
92 | int flags; /* RSA_METHOD_FLAG_* things */ | 92 | int flags; /* RSA_METHOD_FLAG_* things */ |
93 | char *app_data; /* may be needed! */ | 93 | char *app_data; /* may be needed! */ |
94 | /* New sign and verify functions: some libraries don't allow arbitrary data | ||
95 | * to be signed/verified: this allows them to be used. Note: for this to work | ||
96 | * the RSA_public_decrypt() and RSA_private_encrypt() should *NOT* be used | ||
97 | * RSA_sign(), RSA_verify() should be used instead. Note: for backwards | ||
98 | * compatibility this functionality is only enabled if the RSA_FLAG_SIGN_VER | ||
99 | * option is set in 'flags'. | ||
100 | */ | ||
101 | int (*rsa_sign)(int type, unsigned char *m, unsigned int m_len, | ||
102 | unsigned char *sigret, unsigned int *siglen, RSA *rsa); | ||
103 | int (*rsa_verify)(int dtype, unsigned char *m, unsigned int m_len, | ||
104 | unsigned char *sigbuf, unsigned int siglen, RSA *rsa); | ||
105 | |||
94 | } RSA_METHOD; | 106 | } RSA_METHOD; |
95 | 107 | ||
96 | struct rsa_st | 108 | struct rsa_st |
@@ -140,12 +152,16 @@ struct rsa_st | |||
140 | */ | 152 | */ |
141 | #define RSA_FLAG_EXT_PKEY 0x20 | 153 | #define RSA_FLAG_EXT_PKEY 0x20 |
142 | 154 | ||
155 | /* This flag in the RSA_METHOD enables the new rsa_sign, rsa_verify functions. | ||
156 | */ | ||
157 | #define RSA_FLAG_SIGN_VER 0x40 | ||
158 | |||
143 | #define RSA_PKCS1_PADDING 1 | 159 | #define RSA_PKCS1_PADDING 1 |
144 | #define RSA_SSLV23_PADDING 2 | 160 | #define RSA_SSLV23_PADDING 2 |
145 | #define RSA_NO_PADDING 3 | 161 | #define RSA_NO_PADDING 3 |
146 | #define RSA_PKCS1_OAEP_PADDING 4 | 162 | #define RSA_PKCS1_OAEP_PADDING 4 |
147 | 163 | ||
148 | #define RSA_set_app_data(s,arg) RSA_set_ex_data(s,0,(char *)arg) | 164 | #define RSA_set_app_data(s,arg) RSA_set_ex_data(s,0,arg) |
149 | #define RSA_get_app_data(s) RSA_get_ex_data(s,0) | 165 | #define RSA_get_app_data(s) RSA_get_ex_data(s,0) |
150 | 166 | ||
151 | RSA * RSA_new(void); | 167 | RSA * RSA_new(void); |
@@ -181,6 +197,8 @@ RSA_METHOD *RSA_PKCS1_RSAref(void); | |||
181 | /* these are the actual SSLeay RSA functions */ | 197 | /* these are the actual SSLeay RSA functions */ |
182 | RSA_METHOD *RSA_PKCS1_SSLeay(void); | 198 | RSA_METHOD *RSA_PKCS1_SSLeay(void); |
183 | 199 | ||
200 | RSA_METHOD *RSA_null_method(void); | ||
201 | |||
184 | void ERR_load_RSA_strings(void ); | 202 | void ERR_load_RSA_strings(void ); |
185 | 203 | ||
186 | RSA * d2i_RSAPublicKey(RSA **a, unsigned char **pp, long length); | 204 | RSA * d2i_RSAPublicKey(RSA **a, unsigned char **pp, long length); |
@@ -241,10 +259,10 @@ int RSA_padding_add_none(unsigned char *to,int tlen, | |||
241 | int RSA_padding_check_none(unsigned char *to,int tlen, | 259 | int RSA_padding_check_none(unsigned char *to,int tlen, |
242 | unsigned char *f,int fl,int rsa_len); | 260 | unsigned char *f,int fl,int rsa_len); |
243 | 261 | ||
244 | int RSA_get_ex_new_index(long argl, char *argp, int (*new_func)(), | 262 | int RSA_get_ex_new_index(long argl, void *argp, CRYPTO_EX_new *new_func, |
245 | int (*dup_func)(), void (*free_func)()); | 263 | CRYPTO_EX_dup *dup_func, CRYPTO_EX_free *free_func); |
246 | int RSA_set_ex_data(RSA *r,int idx,char *arg); | 264 | int RSA_set_ex_data(RSA *r,int idx,void *arg); |
247 | char *RSA_get_ex_data(RSA *r, int idx); | 265 | void *RSA_get_ex_data(RSA *r, int idx); |
248 | 266 | ||
249 | /* BEGIN ERROR CODES */ | 267 | /* BEGIN ERROR CODES */ |
250 | /* The following lines are auto generated by the script mkerr.pl. Any changes | 268 | /* The following lines are auto generated by the script mkerr.pl. Any changes |
@@ -262,6 +280,7 @@ char *RSA_get_ex_data(RSA *r, int idx); | |||
262 | #define RSA_F_RSA_EAY_PUBLIC_ENCRYPT 104 | 280 | #define RSA_F_RSA_EAY_PUBLIC_ENCRYPT 104 |
263 | #define RSA_F_RSA_GENERATE_KEY 105 | 281 | #define RSA_F_RSA_GENERATE_KEY 105 |
264 | #define RSA_F_RSA_NEW_METHOD 106 | 282 | #define RSA_F_RSA_NEW_METHOD 106 |
283 | #define RSA_F_RSA_NULL 124 | ||
265 | #define RSA_F_RSA_PADDING_ADD_NONE 107 | 284 | #define RSA_F_RSA_PADDING_ADD_NONE 107 |
266 | #define RSA_F_RSA_PADDING_ADD_PKCS1_OAEP 121 | 285 | #define RSA_F_RSA_PADDING_ADD_PKCS1_OAEP 121 |
267 | #define RSA_F_RSA_PADDING_ADD_PKCS1_TYPE_1 108 | 286 | #define RSA_F_RSA_PADDING_ADD_PKCS1_TYPE_1 108 |
@@ -292,10 +311,11 @@ char *RSA_get_ex_data(RSA *r, int idx); | |||
292 | #define RSA_R_DATA_TOO_LARGE_FOR_KEY_SIZE 110 | 311 | #define RSA_R_DATA_TOO_LARGE_FOR_KEY_SIZE 110 |
293 | #define RSA_R_DATA_TOO_SMALL 111 | 312 | #define RSA_R_DATA_TOO_SMALL 111 |
294 | #define RSA_R_DATA_TOO_SMALL_FOR_KEY_SIZE 122 | 313 | #define RSA_R_DATA_TOO_SMALL_FOR_KEY_SIZE 122 |
295 | #define RSA_R_D_E_NOT_CONGRUENT_TO_1 123 | ||
296 | #define RSA_R_DIGEST_TOO_BIG_FOR_RSA_KEY 112 | 314 | #define RSA_R_DIGEST_TOO_BIG_FOR_RSA_KEY 112 |
297 | #define RSA_R_DMP1_NOT_CONGRUENT_TO_D 124 | 315 | #define RSA_R_DMP1_NOT_CONGRUENT_TO_D 124 |
298 | #define RSA_R_DMQ1_NOT_CONGRUENT_TO_D 125 | 316 | #define RSA_R_DMQ1_NOT_CONGRUENT_TO_D 125 |
317 | #define RSA_R_D_E_NOT_CONGRUENT_TO_1 123 | ||
318 | #define RSA_R_INVALID_MESSAGE_LENGTH 131 | ||
299 | #define RSA_R_IQMP_NOT_INVERSE_OF_Q 126 | 319 | #define RSA_R_IQMP_NOT_INVERSE_OF_Q 126 |
300 | #define RSA_R_KEY_SIZE_TOO_SMALL 120 | 320 | #define RSA_R_KEY_SIZE_TOO_SMALL 120 |
301 | #define RSA_R_NULL_BEFORE_BLOCK_MISSING 113 | 321 | #define RSA_R_NULL_BEFORE_BLOCK_MISSING 113 |
@@ -304,6 +324,7 @@ char *RSA_get_ex_data(RSA *r, int idx); | |||
304 | #define RSA_R_PADDING_CHECK_FAILED 114 | 324 | #define RSA_R_PADDING_CHECK_FAILED 114 |
305 | #define RSA_R_P_NOT_PRIME 128 | 325 | #define RSA_R_P_NOT_PRIME 128 |
306 | #define RSA_R_Q_NOT_PRIME 129 | 326 | #define RSA_R_Q_NOT_PRIME 129 |
327 | #define RSA_R_RSA_OPERATIONS_NOT_SUPPORTED 130 | ||
307 | #define RSA_R_SSLV3_ROLLBACK_ATTACK 115 | 328 | #define RSA_R_SSLV3_ROLLBACK_ATTACK 115 |
308 | #define RSA_R_THE_ASN1_OBJECT_IDENTIFIER_IS_NOT_KNOWN_FOR_THIS_MD 116 | 329 | #define RSA_R_THE_ASN1_OBJECT_IDENTIFIER_IS_NOT_KNOWN_FOR_THIS_MD 116 |
309 | #define RSA_R_UNKNOWN_ALGORITHM_TYPE 117 | 330 | #define RSA_R_UNKNOWN_ALGORITHM_TYPE 117 |