aboutsummaryrefslogtreecommitdiffhomepage
path: root/pyecsca/codegen/templates/rand.c
blob: f29238a256cf75a980decfedec100a0f10badc19 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include "rand.h"
#include "action.h"
{% from "action.c" import start_action, end_action %}

bn_err bn_rand_mod(bn_t *out, const bn_t *mod) {
	{{ start_action("random_mod") }}

	#if MOD_RAND == MOD_RAND_SAMPLE
		bn_err err = bn_rand_mod_sample(out, mod);
	#elif MOD_RAND == MOD_RAND_REDUCE
		bn_err err = bn_rand_mod_reduce(out, mod);
	#endif

	{{ end_action("random_mod") }}
	return err;
}