aboutsummaryrefslogtreecommitdiffstats
path: root/libar2_validate_params.c
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--libar2_validate_params.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/libar2_validate_params.c b/libar2_validate_params.c
new file mode 100644
index 0000000..02d159a
--- /dev/null
+++ b/libar2_validate_params.c
@@ -0,0 +1,20 @@
+/* See LICENSE file for copyright and license details. */
+#include "common.h"
+
+
+enum libar2_parameter_error
+libar2_validate_params(const struct libar2_argon2_parameters *params, const char **errmsgp)
+{
+#define LIBAR2_X__(ENUM, ERRMESG, CONDITION)\
+ if (CONDITION) {\
+ if (errmsgp)\
+ *errmsgp = ERRMESG;\
+ return ENUM;\
+ }
+ LIBAR2_LIST_PARAMETER_ERRORS(LIBAR2_X__, params);
+#undef LIBAR2_X__
+
+ if (errmsgp)
+ *errmsgp = "OK";
+ return LIBAR2_OK;
+}