X-Git-Url: https://git.hcoop.net/hcoop/domtool2.git/blobdiff_plain/2ed6d0e50d89234c3d63c3707e855c922bd49358..2e96b9d42f6d2619f961c753ac3bbc9ba57c5147:/src/domain.sig diff --git a/src/domain.sig b/src/domain.sig index c4fc329..10a2d86 100644 --- a/src/domain.sig +++ b/src/domain.sig @@ -20,9 +20,24 @@ signature DOMAIN = sig + val yourPath : string -> bool val isIdent : char -> bool val validHost : string -> bool val validDomain : string -> bool + val yourDomain : string -> bool + val validUser : string -> bool + val validEmailUser : string -> bool + + val ip : string Env.arg + + val registerResetGlobal : (unit -> unit) -> unit + val registerResetLocal : (unit -> unit) -> unit + (* Register functions for clearing out all Domtool configuration at the global + * (AFS) and local levels, respectively. *) + + val resetGlobal : unit -> unit + val resetLocal : unit -> unit + (* Call all registered functions *) val registerBefore : (string -> unit) -> unit val registerAfter : (string -> unit) -> unit @@ -43,4 +58,24 @@ signature DOMAIN = sig (* Names of all system nodes *) val nodeMap : string Ast.StringMap.map (* Map node names to IP addresses *) + val nodeIp : string -> string + (* Look up a node in nodeMap *) + + val setUser : string -> unit + val getUser : unit -> string + (* Name of the UNIX user providing this configuration *) + + val your_domains : unit -> DataStructures.StringSet.set + (* The domains the current user may configure *) + + val your_users : unit -> DataStructures.StringSet.set + val your_groups : unit -> DataStructures.StringSet.set + val your_paths : unit -> DataStructures.StringSet.set + (* UNIX users, groups, and paths the user may act with *) + + val set_context : OpenSSL.context -> unit + + val hasPriv : string -> bool + + val rmdom : string list -> unit end