Lines Matching refs:r

136 void RSA_free(RSA *r)  in RSA_free()  argument
140 if (r == NULL) in RSA_free()
143 CRYPTO_DOWN_REF(&r->references, &i); in RSA_free()
144 REF_PRINT_COUNT("RSA", r); in RSA_free()
149 if (r->meth != NULL && r->meth->finish != NULL) in RSA_free()
150 r->meth->finish(r); in RSA_free()
152 ENGINE_finish(r->engine); in RSA_free()
156 CRYPTO_free_ex_data(CRYPTO_EX_INDEX_RSA, r, &r->ex_data); in RSA_free()
159 CRYPTO_THREAD_lock_free(r->lock); in RSA_free()
160 CRYPTO_FREE_REF(&r->references); in RSA_free()
163 BN_clear_free(r->n); in RSA_free()
164 BN_clear_free(r->e); in RSA_free()
166 BN_free(r->n); in RSA_free()
167 BN_free(r->e); in RSA_free()
169 BN_clear_free(r->d); in RSA_free()
170 BN_clear_free(r->p); in RSA_free()
171 BN_clear_free(r->q); in RSA_free()
172 BN_clear_free(r->dmp1); in RSA_free()
173 BN_clear_free(r->dmq1); in RSA_free()
174 BN_clear_free(r->iqmp); in RSA_free()
177 ossl_rsa_acvp_test_free(r->acvp_test); in RSA_free()
181 RSA_PSS_PARAMS_free(r->pss); in RSA_free()
182 sk_RSA_PRIME_INFO_pop_free(r->prime_infos, ossl_rsa_multip_info_free); in RSA_free()
184 BN_BLINDING_free(r->blinding); in RSA_free()
185 BN_BLINDING_free(r->mt_blinding); in RSA_free()
186 OPENSSL_free(r); in RSA_free()
189 int RSA_up_ref(RSA *r) in RSA_up_ref() argument
193 if (CRYPTO_UP_REF(&r->references, &i) <= 0) in RSA_up_ref()
196 REF_PRINT_COUNT("RSA", r); in RSA_up_ref()
201 OSSL_LIB_CTX *ossl_rsa_get0_libctx(RSA *r) in ossl_rsa_get0_libctx() argument
203 return r->libctx; in ossl_rsa_get0_libctx()
206 void ossl_rsa_set0_libctx(RSA *r, OSSL_LIB_CTX *libctx) in ossl_rsa_set0_libctx() argument
208 r->libctx = libctx; in ossl_rsa_set0_libctx()
212 int RSA_set_ex_data(RSA *r, int idx, void *arg) in RSA_set_ex_data() argument
214 return CRYPTO_set_ex_data(&r->ex_data, idx, arg); in RSA_set_ex_data()
217 void *RSA_get_ex_data(const RSA *r, int idx) in RSA_get_ex_data() argument
219 return CRYPTO_get_ex_data(&r->ex_data, idx); in RSA_get_ex_data()
257 uint64_t r = 0; in icbrt64() local
262 r <<= 1; in icbrt64()
263 b = 3 * r * (r + 1) + 1; in icbrt64()
266 r++; in icbrt64()
269 return r * cbrt_scale; in icbrt64()
281 uint32_t i, r = 0; in ilog_e() local
292 r += scale; in ilog_e()
298 r += i; in ilog_e()
301 r = (r * (uint64_t)scale) / log_e; in ilog_e()
302 return r; in ilog_e()
401 int RSA_set0_key(RSA *r, BIGNUM *n, BIGNUM *e, BIGNUM *d) in RSA_set0_key() argument
407 if ((r->n == NULL && n == NULL) in RSA_set0_key()
408 || (r->e == NULL && e == NULL)) in RSA_set0_key()
412 BN_free(r->n); in RSA_set0_key()
413 r->n = n; in RSA_set0_key()
416 BN_free(r->e); in RSA_set0_key()
417 r->e = e; in RSA_set0_key()
420 BN_clear_free(r->d); in RSA_set0_key()
421 r->d = d; in RSA_set0_key()
422 BN_set_flags(r->d, BN_FLG_CONSTTIME); in RSA_set0_key()
424 r->dirty_cnt++; in RSA_set0_key()
429 int RSA_set0_factors(RSA *r, BIGNUM *p, BIGNUM *q) in RSA_set0_factors() argument
434 if ((r->p == NULL && p == NULL) in RSA_set0_factors()
435 || (r->q == NULL && q == NULL)) in RSA_set0_factors()
439 BN_clear_free(r->p); in RSA_set0_factors()
440 r->p = p; in RSA_set0_factors()
441 BN_set_flags(r->p, BN_FLG_CONSTTIME); in RSA_set0_factors()
444 BN_clear_free(r->q); in RSA_set0_factors()
445 r->q = q; in RSA_set0_factors()
446 BN_set_flags(r->q, BN_FLG_CONSTTIME); in RSA_set0_factors()
448 r->dirty_cnt++; in RSA_set0_factors()
453 int RSA_set0_crt_params(RSA *r, BIGNUM *dmp1, BIGNUM *dmq1, BIGNUM *iqmp) in RSA_set0_crt_params() argument
458 if ((r->dmp1 == NULL && dmp1 == NULL) in RSA_set0_crt_params()
459 || (r->dmq1 == NULL && dmq1 == NULL) in RSA_set0_crt_params()
460 || (r->iqmp == NULL && iqmp == NULL)) in RSA_set0_crt_params()
464 BN_clear_free(r->dmp1); in RSA_set0_crt_params()
465 r->dmp1 = dmp1; in RSA_set0_crt_params()
466 BN_set_flags(r->dmp1, BN_FLG_CONSTTIME); in RSA_set0_crt_params()
469 BN_clear_free(r->dmq1); in RSA_set0_crt_params()
470 r->dmq1 = dmq1; in RSA_set0_crt_params()
471 BN_set_flags(r->dmq1, BN_FLG_CONSTTIME); in RSA_set0_crt_params()
474 BN_clear_free(r->iqmp); in RSA_set0_crt_params()
475 r->iqmp = iqmp; in RSA_set0_crt_params()
476 BN_set_flags(r->iqmp, BN_FLG_CONSTTIME); in RSA_set0_crt_params()
478 r->dirty_cnt++; in RSA_set0_crt_params()
488 int RSA_set0_multi_prime_params(RSA *r, BIGNUM *primes[], BIGNUM *exps[], in RSA_set0_multi_prime_params() argument
502 if (r->prime_infos != NULL) in RSA_set0_multi_prime_params()
503 old = r->prime_infos; in RSA_set0_multi_prime_params()
510 BN_clear_free(pinfo->r); in RSA_set0_multi_prime_params()
513 pinfo->r = primes[i]; in RSA_set0_multi_prime_params()
516 BN_set_flags(pinfo->r, BN_FLG_CONSTTIME); in RSA_set0_multi_prime_params()
526 r->prime_infos = prime_infos; in RSA_set0_multi_prime_params()
528 if (!ossl_rsa_multip_calc_product(r)) { in RSA_set0_multi_prime_params()
529 r->prime_infos = old; in RSA_set0_multi_prime_params()
543 r->version = RSA_ASN1_VERSION_MULTI; in RSA_set0_multi_prime_params()
544 r->dirty_cnt++; in RSA_set0_multi_prime_params()
554 void RSA_get0_key(const RSA *r, in RSA_get0_key() argument
558 *n = r->n; in RSA_get0_key()
560 *e = r->e; in RSA_get0_key()
562 *d = r->d; in RSA_get0_key()
565 void RSA_get0_factors(const RSA *r, const BIGNUM **p, const BIGNUM **q) in RSA_get0_factors() argument
568 *p = r->p; in RSA_get0_factors()
570 *q = r->q; in RSA_get0_factors()
574 int RSA_get_multi_prime_extra_count(const RSA *r) in RSA_get_multi_prime_extra_count() argument
578 pnum = sk_RSA_PRIME_INFO_num(r->prime_infos); in RSA_get_multi_prime_extra_count()
584 int RSA_get0_multi_prime_factors(const RSA *r, const BIGNUM *primes[]) in RSA_get0_multi_prime_factors() argument
589 if ((pnum = RSA_get_multi_prime_extra_count(r)) == 0) in RSA_get0_multi_prime_factors()
597 pinfo = sk_RSA_PRIME_INFO_value(r->prime_infos, i); in RSA_get0_multi_prime_factors()
598 primes[i] = pinfo->r; in RSA_get0_multi_prime_factors()
605 void RSA_get0_crt_params(const RSA *r, in RSA_get0_crt_params() argument
610 *dmp1 = r->dmp1; in RSA_get0_crt_params()
612 *dmq1 = r->dmq1; in RSA_get0_crt_params()
614 *iqmp = r->iqmp; in RSA_get0_crt_params()
618 int RSA_get0_multi_prime_crt_params(const RSA *r, const BIGNUM *exps[], in RSA_get0_multi_prime_crt_params() argument
623 if ((pnum = RSA_get_multi_prime_extra_count(r)) == 0) in RSA_get0_multi_prime_crt_params()
633 pinfo = sk_RSA_PRIME_INFO_value(r->prime_infos, i); in RSA_get0_multi_prime_crt_params()
645 const BIGNUM *RSA_get0_n(const RSA *r) in RSA_get0_n() argument
647 return r->n; in RSA_get0_n()
650 const BIGNUM *RSA_get0_e(const RSA *r) in RSA_get0_e() argument
652 return r->e; in RSA_get0_e()
655 const BIGNUM *RSA_get0_d(const RSA *r) in RSA_get0_d() argument
657 return r->d; in RSA_get0_d()
660 const BIGNUM *RSA_get0_p(const RSA *r) in RSA_get0_p() argument
662 return r->p; in RSA_get0_p()
665 const BIGNUM *RSA_get0_q(const RSA *r) in RSA_get0_q() argument
667 return r->q; in RSA_get0_q()
670 const BIGNUM *RSA_get0_dmp1(const RSA *r) in RSA_get0_dmp1() argument
672 return r->dmp1; in RSA_get0_dmp1()
675 const BIGNUM *RSA_get0_dmq1(const RSA *r) in RSA_get0_dmq1() argument
677 return r->dmq1; in RSA_get0_dmq1()
680 const BIGNUM *RSA_get0_iqmp(const RSA *r) in RSA_get0_iqmp() argument
682 return r->iqmp; in RSA_get0_iqmp()
685 const RSA_PSS_PARAMS *RSA_get0_pss_params(const RSA *r) in RSA_get0_pss_params() argument
690 return r->pss; in RSA_get0_pss_params()
695 int ossl_rsa_set0_pss_params(RSA *r, RSA_PSS_PARAMS *pss) in ossl_rsa_set0_pss_params() argument
700 RSA_PSS_PARAMS_free(r->pss); in ossl_rsa_set0_pss_params()
701 r->pss = pss; in ossl_rsa_set0_pss_params()
707 RSA_PSS_PARAMS_30 *ossl_rsa_get0_pss_params_30(RSA *r) in ossl_rsa_get0_pss_params_30() argument
709 return &r->pss_params; in ossl_rsa_get0_pss_params_30()
712 void RSA_clear_flags(RSA *r, int flags) in RSA_clear_flags() argument
714 r->flags &= ~flags; in RSA_clear_flags()
717 int RSA_test_flags(const RSA *r, int flags) in RSA_test_flags() argument
719 return r->flags & flags; in RSA_test_flags()
722 void RSA_set_flags(RSA *r, int flags) in RSA_set_flags() argument
724 r->flags |= flags; in RSA_set_flags()
727 int RSA_get_version(RSA *r) in RSA_get_version() argument
730 return r->version; in RSA_get_version()
734 ENGINE *RSA_get0_engine(const RSA *r) in RSA_get0_engine() argument
736 return r->engine; in RSA_get0_engine()
756 int ossl_rsa_set0_all_params(RSA *r, STACK_OF(BIGNUM) *primes, in DEFINE_STACK_OF()
774 if (!RSA_set0_factors(r, sk_BIGNUM_value(primes, 0), in DEFINE_STACK_OF()
792 if (!RSA_set0_crt_params(r, sk_BIGNUM_value(exps, 0), in DEFINE_STACK_OF()
804 old_infos = r->prime_infos; in DEFINE_STACK_OF()
828 pinfo->r = prime; in DEFINE_STACK_OF()
831 BN_set_flags(pinfo->r, BN_FLG_CONSTTIME); in DEFINE_STACK_OF()
837 r->prime_infos = prime_infos; in DEFINE_STACK_OF()
839 if (!ossl_rsa_multip_calc_product(r)) { in DEFINE_STACK_OF()
840 r->prime_infos = old_infos; in DEFINE_STACK_OF()
860 r->version = pnum > 2 ? RSA_ASN1_VERSION_MULTI : RSA_ASN1_VERSION_DEFAULT; in DEFINE_STACK_OF()
861 r->dirty_cnt++; in DEFINE_STACK_OF()
874 int ossl_rsa_get0_all_params(RSA *r, STACK_OF(BIGNUM_const) *primes, in DEFINE_SPECIAL_STACK_OF_CONST()
883 if (r == NULL) in DEFINE_SPECIAL_STACK_OF_CONST()
887 if (RSA_get0_p(r) == NULL) in DEFINE_SPECIAL_STACK_OF_CONST()
890 sk_BIGNUM_const_push(primes, RSA_get0_p(r)); in DEFINE_SPECIAL_STACK_OF_CONST()
891 sk_BIGNUM_const_push(primes, RSA_get0_q(r)); in DEFINE_SPECIAL_STACK_OF_CONST()
892 sk_BIGNUM_const_push(exps, RSA_get0_dmp1(r)); in DEFINE_SPECIAL_STACK_OF_CONST()
893 sk_BIGNUM_const_push(exps, RSA_get0_dmq1(r)); in DEFINE_SPECIAL_STACK_OF_CONST()
894 sk_BIGNUM_const_push(coeffs, RSA_get0_iqmp(r)); in DEFINE_SPECIAL_STACK_OF_CONST()
897 pnum = RSA_get_multi_prime_extra_count(r); in DEFINE_SPECIAL_STACK_OF_CONST()
899 pinfo = sk_RSA_PRIME_INFO_value(r->prime_infos, i); in DEFINE_SPECIAL_STACK_OF_CONST()
900 sk_BIGNUM_const_push(primes, pinfo->r); in DEFINE_SPECIAL_STACK_OF_CONST()
910 int ossl_rsa_check_factors(RSA *r) in ossl_rsa_check_factors() argument
925 ossl_rsa_get0_all_params(r, factors, exps, coeffs); in ossl_rsa_check_factors()
926 n = safe_BN_num_bits(RSA_get0_n(r)); in ossl_rsa_check_factors()
928 if (safe_BN_num_bits(RSA_get0_d(r)) > n) in ossl_rsa_check_factors()