Lines Matching refs:params

653 static int hpre_dh_set_params(struct hpre_ctx *ctx, struct dh *params)
658 if (params->p_size > HPRE_DH_MAX_P_SZ)
661 if (hpre_is_dh_params_length_valid(params->p_size <<
665 sz = ctx->key_sz = params->p_size;
671 memcpy(ctx->dh.xa_p + sz, params->p, sz);
674 if (params->g_size == 1 && *(char *)params->g == HPRE_DH_G_FLAG) {
687 memcpy(ctx->dh.g + (sz - params->g_size), params->g, params->g_size);
719 struct dh params;
722 if (crypto_dh_decode_key(buf, len, &params) < 0)
728 ret = hpre_dh_set_params(ctx, &params);
732 memcpy(ctx->dh.xa_p + (ctx->key_sz - params.key_size), params.key,
733 params.key_size);
1270 static int hpre_ecdh_fill_curve(struct hpre_ctx *ctx, struct ecdh *params,
1297 if (params->key_size == cur_sz && memcmp(params->key, n, cur_sz) >= 0) {
1322 static int hpre_ecdh_set_param(struct hpre_ctx *ctx, struct ecdh *params)
1333 if (!curve_sz || params->key_size > curve_sz)
1349 ret = hpre_ecdh_fill_curve(ctx, params, curve_sz);
1371 static int ecdh_gen_privkey(struct hpre_ctx *ctx, struct ecdh *params)
1382 ret = crypto_rng_get_bytes(crypto_default_rng, (u8 *)params->key,
1383 params->key_size);
1398 struct ecdh params;
1401 if (crypto_ecdh_decode_key(buf, len, &params) < 0) {
1407 if (!params.key || !params.key_size) {
1408 params.key = key;
1415 params.key_size = curve_sz - 1;
1416 ret = ecdh_gen_privkey(ctx, &params);
1421 if (hpre_key_is_zero(params.key, params.key_size)) {
1428 ret = hpre_ecdh_set_param(ctx, &params);
1435 sz_shift = (sz << 1) + sz - params.key_size;
1436 memcpy(ctx->ecdh.p + sz_shift, params.key, params.key_size);