]> andersk Git - moira.git/blobdiff - gen/hesiod.pc
Revised EXCHANGE behavior.
[moira.git] / gen / hesiod.pc
index 317b0a264c43b0688d887137c8e0016e35b47949..1f4b9006eb5ae1cac0d0a015aa323f0b634490c6 100644 (file)
@@ -176,6 +176,8 @@ int valid(char *name)
 
   for (sawdot = 1; *name; name++)
     {
+      if (*name == '$')
+       return 0;
       if (*name == '.')
        {
          if (sawdot)
@@ -277,7 +279,15 @@ int do_passwd(void)
          if (sqlca.sqlcode == 0)
            pid = mid;
          else
-           pid = eid;
+           {
+             /* EXCHANGE user with no IMAP filesystem.  Give them
+              * IMAP.EXCHANGE.MIT.EDU instead of EXCHANGE.MIT.EDU.
+              */
+             EXEC SQL SELECT mach_id INTO :eid FROM machine
+               WHERE name = 'IMAP.EXCHANGE.MIT.EDU';
+             if (sqlca.sqlcode == 0)
+               pid = eid;
+           }
        }
 
       if (iid != 0)
This page took 0.052289 seconds and 4 git commands to generate.