Make it possible to pass the self-tests when no req path is set.

Signed-off-by: Olivier Matz <olivier.m...@6wind.com>
---
 examples/fips_validation/main.c | 22 ++++++++++++++++++++--
 1 file changed, 20 insertions(+), 2 deletions(-)

diff --git a/examples/fips_validation/main.c b/examples/fips_validation/main.c
index 0a1c8b568c..ee3a890e9e 100644
--- a/examples/fips_validation/main.c
+++ b/examples/fips_validation/main.c
@@ -315,8 +315,21 @@ cryptodev_fips_validate_parse_args(int argc, char **argv)
                }
        }
 
-       if (env.req_path == NULL || env.rsp_path == NULL ||
-                       env.dev_id == UINT32_MAX) {
+       if (env.dev_id == UINT32_MAX) {
+               RTE_LOG(ERR, USER1, "No device specified\n");
+               cryptodev_fips_validate_usage(prgname);
+               return -EINVAL;
+       }
+
+       if ((env.req_path == NULL && env.rsp_path != NULL) ||
+                       (env.req_path != NULL && env.rsp_path == NULL)) {
+               RTE_LOG(ERR, USER1, "Missing req path or rsp path\n");
+               cryptodev_fips_validate_usage(prgname);
+               return -EINVAL;
+       }
+
+       if (env.req_path == NULL && env.self_test == 0) {
+               RTE_LOG(ERR, USER1, "--self-test must be set if req path is 
missing\n");
                cryptodev_fips_validate_usage(prgname);
                return -EINVAL;
        }
@@ -348,6 +361,11 @@ main(int argc, char *argv[])
                return -1;
        }
 
+       if (env.req_path == NULL || env.rsp_path == NULL) {
+               printf("No request, exit.\n");
+               goto exit;
+       }
+
        if (!env.is_path_folder) {
                printf("Processing file %s... ", env.req_path);
 
-- 
2.25.1

Reply via email to