aboutsummaryrefslogtreecommitdiff
path: root/src/invalid
diff options
context:
space:
mode:
authorJ08nY2017-02-10 01:24:48 +0100
committerJ08nY2017-02-10 01:24:48 +0100
commitde90c5cd76bcd45c82f34d1f3d60b529b7d5a86d (patch)
tree6d5b6923cf7443e14004e779258b4c546cf769b5 /src/invalid
parent79b29481b1c4d13063dd8b6ee6a1d0d70a54faab (diff)
downloadecgen-de90c5cd76bcd45c82f34d1f3d60b529b7d5a86d.tar.gz
ecgen-de90c5cd76bcd45c82f34d1f3d60b529b7d5a86d.tar.zst
ecgen-de90c5cd76bcd45c82f34d1f3d60b529b7d5a86d.zip
Properly split into submodules
Diffstat (limited to 'src/invalid')
-rw-r--r--src/invalid/invalid.c24
-rw-r--r--src/invalid/invalid.h9
2 files changed, 33 insertions, 0 deletions
diff --git a/src/invalid/invalid.c b/src/invalid/invalid.c
index a600dcb..3259908 100644
--- a/src/invalid/invalid.c
+++ b/src/invalid/invalid.c
@@ -3,3 +3,27 @@
* Copyright (C) 2017 J08nY
*/
#include "invalid.h"
+#include "math/curve.h"
+#include "math/field.h"
+#include "math/equation.h"
+
+int invalid_do(config_t *cfg) {
+ // create the curve to invalidate
+ // Either from input or random with -r
+
+ curve_t *curve = curve_new();
+ gen_t gen[OFFSET_END];
+ gen[OFFSET_SEED] = &gen_skip;
+ if (cfg->random) {
+ gen[OFFSET_FIELD] = &field_random;
+ gen[OFFSET_A] = &a_random;
+ gen[OFFSET_B] = &b_random;
+ } else {
+ gen[OFFSET_FIELD] = &field_input;
+ gen[OFFSET_A] = &a_input;
+ gen[OFFSET_B] = &b_input;
+ }
+ curve_free(&curve);
+
+ return 0;
+} \ No newline at end of file
diff --git a/src/invalid/invalid.h b/src/invalid/invalid.h
index 180c409..0790af7 100644
--- a/src/invalid/invalid.h
+++ b/src/invalid/invalid.h
@@ -2,7 +2,16 @@
* ecgen, tool for generating Elliptic curve domain parameters
* Copyright (C) 2017 J08nY
*/
+#include "io/cli.h"
+
#ifndef ECGEN_INVALID_H
#define ECGEN_INVALID_H
+/**
+ *
+ * @param cfg
+ * @return
+ */
+int invalid_do(config_t *cfg);
+
#endif // ECGEN_INVALID_H