Lines Matching defs:prsactx
82 PROV_RSA_CTX *prsactx;
86 prsactx = OPENSSL_zalloc(sizeof(PROV_RSA_CTX));
87 if (prsactx == NULL)
89 prsactx->libctx = PROV_LIBCTX_OF(provctx);
91 return prsactx;
97 PROV_RSA_CTX *prsactx = (PROV_RSA_CTX *)vprsactx;
99 if (!ossl_prov_is_running() || prsactx == NULL || vrsa == NULL)
102 if (!ossl_rsa_check_key(prsactx->libctx, vrsa, operation))
107 RSA_free(prsactx->rsa);
108 prsactx->rsa = vrsa;
109 prsactx->operation = operation;
111 switch (RSA_test_flags(prsactx->rsa, RSA_FLAG_TYPE_MASK)) {
113 prsactx->pad_mode = RSA_PKCS1_PADDING;
120 return rsa_set_ctx_params(prsactx, params);
138 PROV_RSA_CTX *prsactx = (PROV_RSA_CTX *)vprsactx;
145 size_t len = RSA_size(prsactx->rsa);
155 if (prsactx->pad_mode == RSA_PKCS1_OAEP_PADDING) {
156 int rsasize = RSA_size(prsactx->rsa);
163 if (prsactx->oaep_md == NULL) {
164 prsactx->oaep_md = EVP_MD_fetch(prsactx->libctx, "SHA-1", NULL);
165 if (prsactx->oaep_md == NULL) {
172 ossl_rsa_padding_add_PKCS1_OAEP_mgf1_ex(prsactx->libctx, tbuf,
174 prsactx->oaep_label,
175 prsactx->oaep_labellen,
176 prsactx->oaep_md,
177 prsactx->mgf1_md);
183 ret = RSA_public_encrypt(rsasize, tbuf, out, prsactx->rsa,
187 ret = RSA_public_encrypt(inlen, in, out, prsactx->rsa,
188 prsactx->pad_mode);
200 PROV_RSA_CTX *prsactx = (PROV_RSA_CTX *)vprsactx;
202 size_t len = RSA_size(prsactx->rsa);
207 if (prsactx->pad_mode == RSA_PKCS1_WITH_TLS_PADDING) {
232 if (prsactx->pad_mode == RSA_PKCS1_OAEP_PADDING
233 || prsactx->pad_mode == RSA_PKCS1_WITH_TLS_PADDING) {
240 ret = RSA_private_decrypt(inlen, in, tbuf, prsactx->rsa,
251 if (prsactx->pad_mode == RSA_PKCS1_OAEP_PADDING) {
252 if (prsactx->oaep_md == NULL) {
253 prsactx->oaep_md = EVP_MD_fetch(prsactx->libctx, "SHA-1", NULL);
254 if (prsactx->oaep_md == NULL) {
262 prsactx->oaep_label,
263 prsactx->oaep_labellen,
264 prsactx->oaep_md,
265 prsactx->mgf1_md);
268 if (prsactx->client_version <= 0) {
274 prsactx->libctx, out, outsize, tbuf, len,
275 prsactx->client_version, prsactx->alt_version);
279 ret = RSA_private_decrypt(inlen, in, out, prsactx->rsa,
280 prsactx->pad_mode);
289 PROV_RSA_CTX *prsactx = (PROV_RSA_CTX *)vprsactx;
291 RSA_free(prsactx->rsa);
293 EVP_MD_free(prsactx->oaep_md);
294 EVP_MD_free(prsactx->mgf1_md);
295 OPENSSL_free(prsactx->oaep_label);
297 OPENSSL_free(prsactx);
336 PROV_RSA_CTX *prsactx = (PROV_RSA_CTX *)vprsactx;
339 if (prsactx == NULL)
346 if (!OSSL_PARAM_set_int(p, prsactx->pad_mode))
355 if (prsactx->pad_mode == (int)padding_item[i].id) {
374 if (p != NULL && !OSSL_PARAM_set_utf8_string(p, prsactx->oaep_md == NULL
376 : EVP_MD_get0_name(prsactx->oaep_md)))
381 EVP_MD *mgf1_md = prsactx->mgf1_md == NULL ? prsactx->oaep_md
382 : prsactx->mgf1_md;
392 !OSSL_PARAM_set_octet_ptr(p, prsactx->oaep_label,
393 prsactx->oaep_labellen))
397 if (p != NULL && !OSSL_PARAM_set_uint(p, prsactx->client_version))
401 if (p != NULL && !OSSL_PARAM_set_uint(p, prsactx->alt_version))
426 PROV_RSA_CTX *prsactx = (PROV_RSA_CTX *)vprsactx;
432 if (prsactx == NULL)
451 EVP_MD_free(prsactx->oaep_md);
452 prsactx->oaep_md = EVP_MD_fetch(prsactx->libctx, mdname, mdprops);
454 if (prsactx->oaep_md == NULL)
492 if (pad_mode == RSA_PKCS1_OAEP_PADDING && prsactx->oaep_md == NULL) {
493 prsactx->oaep_md = EVP_MD_fetch(prsactx->libctx, "SHA1", mdprops);
494 if (prsactx->oaep_md == NULL)
497 prsactx->pad_mode = pad_mode;
516 EVP_MD_free(prsactx->mgf1_md);
517 prsactx->mgf1_md = EVP_MD_fetch(prsactx->libctx, mdname, str);
519 if (prsactx->mgf1_md == NULL)
530 OPENSSL_free(prsactx->oaep_label);
531 prsactx->oaep_label = (unsigned char *)tmp_label;
532 prsactx->oaep_labellen = tmp_labellen;
541 prsactx->client_version = client_version;
550 prsactx->alt_version = alt_version;