diff options
author | John Estabrook <jestabro@vyos.io> | 2024-10-23 18:50:46 -0500 |
---|---|---|
committer | John Estabrook <jestabro@vyos.io> | 2024-10-27 21:49:06 -0500 |
commit | b8dbd4d03ebb058aaf1e8ddd9261b0628e520e8b (patch) | |
tree | 14b44c0990030a94f3f685b6aa929f0e20371b42 /src/validate.ml | |
parent | a5473033fc8ea92891d6ebab9bdeaccbe742d565 (diff) | |
download | vyconf-b8dbd4d03ebb058aaf1e8ddd9261b0628e520e8b.tar.gz vyconf-b8dbd4d03ebb058aaf1e8ddd9261b0628e520e8b.zip |
T6718: add client_session module and test executable validate.ml
Diffstat (limited to 'src/validate.ml')
-rw-r--r-- | src/validate.ml | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/src/validate.ml b/src/validate.ml new file mode 100644 index 0000000..7b3b596 --- /dev/null +++ b/src/validate.ml @@ -0,0 +1,32 @@ +open Client.Vyconf_client_session + +let path_opt = ref "" + +let usage = "Usage: " ^ Sys.argv.(0) ^ " [options]" + +let args = [ + ("--path", Arg.String (fun s -> path_opt := s), "<string> Configuration path"); + ] + +let get_sockname = + "/var/run/vyconfd.sock" + +let main socket path_list = + let token = session_init socket in + match token with + | Error e -> "Failed to initialize session: " ^ e + | Ok token -> + let out = session_validate_path socket token path_list + in + let _ = session_free socket token in + match out with + | Error e -> "Failed to validate path: " ^ e + | Ok _ -> "No error" + +let _ = + let () = Arg.parse args (fun _ -> ()) usage in + let path_list = Vyos1x.Util.list_of_path !path_opt in + let socket = get_sockname in + let result = main socket path_list in + let () = print_endline result in + exit 0 |