aboutsummaryrefslogtreecommitdiff
path: root/src/invalid/invalid.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/invalid/invalid.c')
-rw-r--r--src/invalid/invalid.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/invalid/invalid.c b/src/invalid/invalid.c
index 765a566..1d3f153 100644
--- a/src/invalid/invalid.c
+++ b/src/invalid/invalid.c
@@ -2,6 +2,7 @@
* ecgen, tool for generating Elliptic curve domain parameters
* Copyright (C) 2017 J08nY
*/
+#include <io/config.h>
#include "invalid.h"
#include "exhaustive/exhaustive.h"
#include "invalid_thread.h"
@@ -34,7 +35,14 @@ static void invalid_invalid_ginit(gen_t *generators, const config_t *cfg) {
generators[OFFSET_A] = &gen_skip;
generators[OFFSET_B] = &b_random;
generators[OFFSET_CURVE] = &curve_nonzero;
- generators[OFFSET_ORDER] = &order_any;
+ switch(cfg->field) {
+ case FIELD_PRIME:
+ generators[OFFSET_ORDER] = &order_sea;
+ break;
+ case FIELD_BINARY:
+ generators[OFFSET_ORDER] = &order_any;
+ break;
+ }
if (cfg->unique) {
generators[OFFSET_GENERATORS] = &gens_one;
} else {