X-Git-Url: https://git.hcoop.net/hcoop/domtool2.git/blobdiff_plain/21d921a56a850857f6ea883c6dff6a411a659bbf..99cc41443c07f97535eaeecc628d99075ca2cebf:/src/main-dbtool.sml diff --git a/src/main-dbtool.sml b/src/main-dbtool.sml index 32793d7..7bf0fec 100644 --- a/src/main-dbtool.sml +++ b/src/main-dbtool.sml @@ -40,9 +40,32 @@ val _ = NONE => () | SOME pass => Main.requestDbUser {dbtype = dbtype, passwd = pass} end + | ["passwd"] => + let + val pass = case getpass of + NONE => NONE + | SOME f => + case f () of + Client.Passwd pass => SOME pass + | _ => NONE + in + case pass of + NONE => () + | SOME pass => Main.requestDbPasswd {dbtype = dbtype, passwd = pass} + end | ["createdb", dbname] => if Dbms.validDbname dbname then Main.requestDbTable {dbtype = dbtype, dbname = dbname} else print ("Invalid database name " ^ dbname ^ ".\n") + | ["dropdb", dbname] => + if Dbms.validDbname dbname then + Main.requestDbDrop {dbtype = dbtype, dbname = dbname} + else + print ("Invalid database name " ^ dbname ^ ".\n") + | ["grant", dbname] => + if Dbms.validDbname dbname then + Main.requestDbGrant {dbtype = dbtype, dbname = dbname} + else + print ("Invalid database name " ^ dbname ^ ".\n") | _ => print "Invalid command-line arguments\n"