diff options
| author | J08nY | 2018-07-13 18:37:12 +0200 |
|---|---|---|
| committer | J08nY | 2018-07-13 18:37:12 +0200 |
| commit | 77d2fb233cbd77f27b25756dccf71cdba86cf93e (patch) | |
| tree | 2d72e799cc37f635c7fca4576cbd0ba78ea83768 /src | |
| parent | 2fe66f44550b47f8622946f7d8673c4f8bc5c73c (diff) | |
| download | ecgen-77d2fb233cbd77f27b25756dccf71cdba86cf93e.tar.gz ecgen-77d2fb233cbd77f27b25756dccf71cdba86cf93e.tar.zst ecgen-77d2fb233cbd77f27b25756dccf71cdba86cf93e.zip | |
Check size of requested CM order when generating.
Diffstat (limited to 'src')
| -rw-r--r-- | src/cm/cm.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/cm/cm.c b/src/cm/cm.c index c604876..a3a70a2 100644 --- a/src/cm/cm.c +++ b/src/cm/cm.c @@ -181,6 +181,14 @@ static int cm_init(exhaustive_t *setup) { fprintf(err, "Order requested not a number: %s\n", cfg->cm_order); return 1; } + long ord_log = logint0(order, gen_2, NULL); + if (ord_log > cfg->bits) { + pari_fprintf(err, + "Order requested does not fit(2^%li) into requested " + "bitsize(2^%li): %Pi\n", + ord_log, cfg->bits, order); + return 1; + } if (delims == 0) { ord_prime = (bool)isprime(order); } else { |
