Lines Matching refs:r
231 static void bn_GF2m_mul_2x2(BN_ULONG *r, const BN_ULONG a1, const BN_ULONG a0, in bn_GF2m_mul_2x2() argument
236 bn_GF2m_mul_1x1(r + 3, r + 2, a1, b1); in bn_GF2m_mul_2x2()
237 bn_GF2m_mul_1x1(r + 1, r, a0, b0); in bn_GF2m_mul_2x2()
240 r[2] ^= m1 ^ r[1] ^ r[3]; /* h0 ^= m1 ^ l1 ^ h1; */ in bn_GF2m_mul_2x2()
241 r[1] = r[3] ^ r[2] ^ r[0] ^ m1 ^ m0; /* l1 ^= l0 ^ h0 ^ m0; */ in bn_GF2m_mul_2x2()
244 void bn_GF2m_mul_2x2(BN_ULONG *r, BN_ULONG a1, BN_ULONG a0, BN_ULONG b1,
252 int BN_GF2m_add(BIGNUM *r, const BIGNUM *a, const BIGNUM *b) in BN_GF2m_add() argument
268 if (bn_wexpand(r, at->top) == NULL) in BN_GF2m_add()
272 r->d[i] = at->d[i] ^ bt->d[i]; in BN_GF2m_add()
275 r->d[i] = at->d[i]; in BN_GF2m_add()
278 r->top = at->top; in BN_GF2m_add()
279 bn_correct_top(r); in BN_GF2m_add()
292 int BN_GF2m_mod_arr(BIGNUM *r, const BIGNUM *a, const int p[]) in BN_GF2m_mod_arr() argument
302 BN_zero(r); in BN_GF2m_mod_arr()
310 if (a != r) { in BN_GF2m_mod_arr()
311 if (!bn_wexpand(r, a->top)) in BN_GF2m_mod_arr()
314 r->d[j] = a->d[j]; in BN_GF2m_mod_arr()
316 r->top = a->top; in BN_GF2m_mod_arr()
318 z = r->d; in BN_GF2m_mod_arr()
322 for (j = r->top - 1; j > dN;) { in BN_GF2m_mod_arr()
380 bn_correct_top(r); in BN_GF2m_mod_arr()
390 int BN_GF2m_mod(BIGNUM *r, const BIGNUM *a, const BIGNUM *p) in BN_GF2m_mod() argument
401 ret = BN_GF2m_mod_arr(r, a, arr); in BN_GF2m_mod()
402 bn_check_top(r); in BN_GF2m_mod()
410 int BN_GF2m_mod_mul_arr(BIGNUM *r, const BIGNUM *a, const BIGNUM *b, in BN_GF2m_mod_mul_arr() argument
421 return BN_GF2m_mod_sqr_arr(r, a, p, ctx); in BN_GF2m_mod_mul_arr()
449 if (BN_GF2m_mod_arr(r, s, p)) in BN_GF2m_mod_mul_arr()
451 bn_check_top(r); in BN_GF2m_mod_mul_arr()
465 int BN_GF2m_mod_mul(BIGNUM *r, const BIGNUM *a, const BIGNUM *b, in BN_GF2m_mod_mul() argument
486 ret = BN_GF2m_mod_mul_arr(r, a, b, arr, ctx); in BN_GF2m_mod_mul()
487 bn_check_top(r); in BN_GF2m_mod_mul()
494 int BN_GF2m_mod_sqr_arr(BIGNUM *r, const BIGNUM *a, const int p[], in BN_GF2m_mod_sqr_arr() argument
514 if (!BN_GF2m_mod_arr(r, s, p)) in BN_GF2m_mod_sqr_arr()
516 bn_check_top(r); in BN_GF2m_mod_sqr_arr()
529 int BN_GF2m_mod_sqr(BIGNUM *r, const BIGNUM *a, const BIGNUM *p, BN_CTX *ctx) in BN_GF2m_mod_sqr() argument
548 ret = BN_GF2m_mod_sqr_arr(r, a, arr, ctx); in BN_GF2m_mod_sqr()
549 bn_check_top(r); in BN_GF2m_mod_sqr()
561 static int BN_GF2m_mod_inv_vartime(BIGNUM *r, const BIGNUM *a, in BN_GF2m_mod_inv_vartime() argument
712 if (!BN_copy(r, b)) in BN_GF2m_mod_inv_vartime()
714 bn_check_top(r); in BN_GF2m_mod_inv_vartime()
733 int BN_GF2m_mod_inv(BIGNUM *r, const BIGNUM *a, const BIGNUM *p, BN_CTX *ctx) in BN_GF2m_mod_inv() argument
750 if (!BN_GF2m_mod_mul(r, a, b, p, ctx)) in BN_GF2m_mod_inv()
754 if (!BN_GF2m_mod_inv_vartime(r, r, p, ctx)) in BN_GF2m_mod_inv()
758 if (!BN_GF2m_mod_mul(r, r, b, p, ctx)) in BN_GF2m_mod_inv()
774 int BN_GF2m_mod_inv_arr(BIGNUM *r, const BIGNUM *xx, const int p[], in BN_GF2m_mod_inv_arr() argument
787 ret = BN_GF2m_mod_inv(r, xx, field, ctx); in BN_GF2m_mod_inv_arr()
788 bn_check_top(r); in BN_GF2m_mod_inv_arr()
799 int BN_GF2m_mod_div(BIGNUM *r, const BIGNUM *y, const BIGNUM *x, in BN_GF2m_mod_div() argument
816 if (!BN_GF2m_mod_mul(r, y, xinv, p, ctx)) in BN_GF2m_mod_div()
818 bn_check_top(r); in BN_GF2m_mod_div()
832 int BN_GF2m_mod_div_arr(BIGNUM *r, const BIGNUM *yy, const BIGNUM *xx, in BN_GF2m_mod_div_arr() argument
847 ret = BN_GF2m_mod_div(r, yy, xx, field, ctx); in BN_GF2m_mod_div_arr()
848 bn_check_top(r); in BN_GF2m_mod_div_arr()
860 int BN_GF2m_mod_exp_arr(BIGNUM *r, const BIGNUM *a, const BIGNUM *b, in BN_GF2m_mod_exp_arr() argument
870 return BN_one(r); in BN_GF2m_mod_exp_arr()
873 return (BN_copy(r, a) != NULL); in BN_GF2m_mod_exp_arr()
891 if (!BN_copy(r, u)) in BN_GF2m_mod_exp_arr()
893 bn_check_top(r); in BN_GF2m_mod_exp_arr()
906 int BN_GF2m_mod_exp(BIGNUM *r, const BIGNUM *a, const BIGNUM *b, in BN_GF2m_mod_exp() argument
927 ret = BN_GF2m_mod_exp_arr(r, a, b, arr, ctx); in BN_GF2m_mod_exp()
928 bn_check_top(r); in BN_GF2m_mod_exp()
938 int BN_GF2m_mod_sqrt_arr(BIGNUM *r, const BIGNUM *a, const int p[], in BN_GF2m_mod_sqrt_arr() argument
948 BN_zero(r); in BN_GF2m_mod_sqrt_arr()
958 ret = BN_GF2m_mod_exp_arr(r, a, u, p, ctx); in BN_GF2m_mod_sqrt_arr()
959 bn_check_top(r); in BN_GF2m_mod_sqrt_arr()
972 int BN_GF2m_mod_sqrt(BIGNUM *r, const BIGNUM *a, const BIGNUM *p, BN_CTX *ctx) in BN_GF2m_mod_sqrt() argument
991 ret = BN_GF2m_mod_sqrt_arr(r, a, arr, ctx); in BN_GF2m_mod_sqrt()
992 bn_check_top(r); in BN_GF2m_mod_sqrt()
1002 int BN_GF2m_mod_solve_quad_arr(BIGNUM *r, const BIGNUM *a_, const int p[], in BN_GF2m_mod_solve_quad_arr() argument
1012 BN_zero(r); in BN_GF2m_mod_solve_quad_arr()
1027 BN_zero(r); in BN_GF2m_mod_solve_quad_arr()
1090 if (!BN_copy(r, z)) in BN_GF2m_mod_solve_quad_arr()
1092 bn_check_top(r); in BN_GF2m_mod_solve_quad_arr()
1107 int BN_GF2m_mod_solve_quad(BIGNUM *r, const BIGNUM *a, const BIGNUM *p, in BN_GF2m_mod_solve_quad() argument
1127 ret = BN_GF2m_mod_solve_quad_arr(r, a, arr, ctx); in BN_GF2m_mod_solve_quad()
1128 bn_check_top(r); in BN_GF2m_mod_solve_quad()