diff options
Diffstat (limited to 'src/invalid/invalid.c')
| -rw-r--r-- | src/invalid/invalid.c | 10 |
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 { |
