X-Git-Url: https://git.hcoop.net/hcoop/domtool2.git/blobdiff_plain/361a1e7f7b226811bdb8b4cc0266f34f01ac4bcd..c53e82e40cef407de986aa329d31457915ad0dbe:/src/main-client.sml diff --git a/src/main-client.sml b/src/main-client.sml index d6fe010..c70dfb8 100644 --- a/src/main-client.sml +++ b/src/main-client.sml @@ -18,7 +18,22 @@ (* Driver for server *) +fun domtoolRoot () = + let + val uid = Posix.ProcEnv.getuid () + val home = Posix.SysDB.Passwd.home (Posix.SysDB.getpwuid uid) + in + OS.Path.joinDirFile {dir = home, + file = "domtool"} + end + val _ = case CommandLine.arguments () of - [fname] => Main.request fname + [fname] => + if Posix.FileSys.access (fname, []) then + Main.request fname + else + Main.request (OS.Path.joinDirFile {dir = domtoolRoot (), + file = fname}) + | [] => Main.requestDir (domtoolRoot ()) | _ => print "Invalid command-line arguments\n"