aboutsummaryrefslogtreecommitdiff
path: root/src/exhaustive/exhaustive.c
diff options
context:
space:
mode:
authorJ08nY2023-05-12 12:31:38 +0200
committerJ08nY2023-05-12 12:33:24 +0200
commitf1601f6807ba13caea6a0a7bf0ff8c52e7670ff0 (patch)
treedb9c5d9f926338be901641f28e28ee7c0690bfa7 /src/exhaustive/exhaustive.c
parentcfb85f1f760e5203d9777201006280c74d2f6975 (diff)
downloadecgen-f1601f6807ba13caea6a0a7bf0ff8c52e7670ff0.tar.gz
ecgen-f1601f6807ba13caea6a0a7bf0ff8c52e7670ff0.tar.zst
ecgen-f1601f6807ba13caea6a0a7bf0ff8c52e7670ff0.zip
Diffstat (limited to 'src/exhaustive/exhaustive.c')
-rw-r--r--src/exhaustive/exhaustive.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/exhaustive/exhaustive.c b/src/exhaustive/exhaustive.c
index 57b72ce..a8d0f22 100644
--- a/src/exhaustive/exhaustive.c
+++ b/src/exhaustive/exhaustive.c
@@ -47,6 +47,8 @@ static void exhaustive_ginit(gen_f *generators) {
generators[OFFSET_ORDER] = &order_gen_prime;
} else if (cfg->cofactor) {
generators[OFFSET_ORDER] = &order_gen_cofactor;
+ } else if (cfg->smooth) {
+ generators[OFFSET_ORDER] = &order_gen_smooth;
} else {
generators[OFFSET_ORDER] = &order_gen_any;
}
@@ -157,6 +159,8 @@ static void exhaustive_ginit(gen_f *generators) {
generators[OFFSET_ORDER] = &order_gen_prime;
} else if (cfg->cofactor) {
generators[OFFSET_ORDER] = &order_gen_cofactor;
+ } else if (cfg->smooth) {
+ generators[OFFSET_ORDER] = &order_gen_smooth;
} else if (cfg->koblitz) {
generators[OFFSET_ORDER] = &order_gen_koblitz;
} else {
@@ -256,6 +260,13 @@ static void exhaustive_ainit(arg_t **gen_argss, arg_t **check_argss) {
gen_argss[OFFSET_GENERATORS] = gens_arg;
}
+ if (cfg->smooth) {
+ arg_t *order_arg = arg_new();
+ order_arg->args = &cfg->smooth_value;
+ order_arg->nargs = 1;
+ gen_argss[OFFSET_ORDER] = order_arg;
+ }
+
if (cfg->hex_check) {
arg_t *point_arg = arg_new();
point_arg->args = cfg->hex_check;