ip_of_node support
[hcoop/domtool2.git] / src / domain.sml
index 34d6d10..15903a2 100644 (file)
@@ -49,7 +49,7 @@ val your_pths = ref SS.empty
 fun your_paths () = !your_pths
 
 fun setUser user =
-    (usr := Config.testUser;
+    (usr := user;
      your_doms := Acl.class {user = getUser (),
                             class = "domain"};
      your_usrs := Acl.class {user = getUser (),
@@ -221,8 +221,11 @@ datatype master =
         ExternalMaster of string
        | InternalMaster of string
 
-val master = fn (EApp ((EVar "externalMaster", _), e), _) => Option.map ExternalMaster (Env.string e)
-             | (EApp ((EVar "internalMaster", _), e), _) => Option.map InternalMaster (Env.string e)
+val ip = fn (EApp ((EVar "ip_of_node", _), e), _) => Option.map nodeIp (Env.string e)
+         | e => Env.string e
+
+val master = fn (EApp ((EVar "externalMaster", _), e), _) => Option.map ExternalMaster (ip e)
+             | (EApp ((EVar "internalMaster", _), e), _) => Option.map InternalMaster (ip e)
              | _ => NONE
 
 datatype dnsKind =
@@ -474,7 +477,7 @@ val _ = Env.containerV_one "domain"
                                           TextIO.output (outf, "\" IN {\n\ttype ");
                                           TextIO.output (outf, kind);
                                           TextIO.output (outf, ";\n\tfile \"");
-                                          TextIO.output (outf, Config.Bind.zonePath);
+                                          TextIO.output (outf, Config.Bind.zonePath_real);
                                           TextIO.output (outf, "/");
                                           TextIO.output (outf, dom);
                                           TextIO.output (outf, ".zone\";\n");