Lines Matching refs:prop
628 void rsa_free_key_prop(struct key_prop *prop) in rsa_free_key_prop() argument
630 if (!prop) in rsa_free_key_prop()
633 free((void *)prop->modulus); in rsa_free_key_prop()
634 free((void *)prop->public_exponent); in rsa_free_key_prop()
635 free((void *)prop->rr); in rsa_free_key_prop()
637 free(prop); in rsa_free_key_prop()
653 int rsa_gen_key_prop(const void *key, uint32_t keylen, struct key_prop **prop) in rsa_gen_key_prop() argument
659 *prop = calloc(sizeof(**prop), 1); in rsa_gen_key_prop()
660 if (!(*prop)) { in rsa_gen_key_prop()
673 (*prop)->num_bits = (rsa_key.n_sz - i) * 8; in rsa_gen_key_prop()
674 (*prop)->modulus = malloc(rsa_key.n_sz - i); in rsa_gen_key_prop()
675 if (!(*prop)->modulus) { in rsa_gen_key_prop()
679 memcpy((void *)(*prop)->modulus, &rsa_key.n[i], rsa_key.n_sz - i); in rsa_gen_key_prop()
681 n = calloc(sizeof(uint32_t), 1 + ((*prop)->num_bits >> 5)); in rsa_gen_key_prop()
682 rr = calloc(sizeof(uint32_t), 1 + (((*prop)->num_bits * 2) >> 5)); in rsa_gen_key_prop()
683 rrtmp = calloc(sizeof(uint32_t), 2 + (((*prop)->num_bits * 2) >> 5)); in rsa_gen_key_prop()
690 (*prop)->public_exponent = calloc(1, sizeof(uint64_t)); in rsa_gen_key_prop()
691 if (!(*prop)->public_exponent) { in rsa_gen_key_prop()
695 memcpy((void *)(*prop)->public_exponent + sizeof(uint64_t) in rsa_gen_key_prop()
698 (*prop)->exp_len = sizeof(uint64_t); in rsa_gen_key_prop()
702 (*prop)->n0inv = br_i32_ninv32(n[1]); in rsa_gen_key_prop()
705 rlen = (*prop)->num_bits * 2; /* #bits of R^2 = (2^num_bits)^2 */ in rsa_gen_key_prop()
713 rlen = ((*prop)->num_bits + 7) >> 3; /* #bytes of R^2 mod n */ in rsa_gen_key_prop()
714 (*prop)->rr = malloc(rlen); in rsa_gen_key_prop()
715 if (!(*prop)->rr) { in rsa_gen_key_prop()
719 br_i32_encode((void *)(*prop)->rr, rlen, rr); in rsa_gen_key_prop()
726 rsa_free_key_prop(*prop); in rsa_gen_key_prop()