From b8dbd4d03ebb058aaf1e8ddd9261b0628e520e8b Mon Sep 17 00:00:00 2001 From: John Estabrook Date: Wed, 23 Oct 2024 18:50:46 -0500 Subject: T6718: add client_session module and test executable validate.ml --- src/validate.ml | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 src/validate.ml (limited to 'src/validate.ml') 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), " 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 -- cgit v1.2.3