Return a real error when the group cannot be found out
[mirror/userdir-ldap.git] / ud-generate
index f7c929e..b7ca633 100755 (executable)
@@ -799,20 +799,22 @@ while(1):
      Allowed = None
    CurrentHost = Split[0];
 
+   DoLink(GlobalDir,OutDir,"ssh-rsa-shadow");
+   DoLink(GlobalDir,OutDir,"debianhosts");
+   DoLink(GlobalDir,OutDir,"ssh_known_hosts");
+
    sys.stdout.flush();
    GenPasswd(l,OutDir+"passwd",Split[1]);
    sys.stdout.flush();
    GenGroup(l,OutDir+"group");
    if ExtraList.has_key("[UNTRUSTED]"):
        continue;
-   GenShadow(l,OutDir+"shadow");
+   if not ExtraList.has_key("[NOPASSWD]"):
+     GenShadow(l,OutDir+"shadow");
        
    # Link in global things   
-   DoLink(GlobalDir,OutDir,"ssh-rsa-shadow");
    DoLink(GlobalDir,OutDir,"markers");
    DoLink(GlobalDir,OutDir,"mail-forward.cdb");
-   DoLink(GlobalDir,OutDir,"debianhosts");
-   DoLink(GlobalDir,OutDir,"ssh_known_hosts");
    DoLink(GlobalDir,OutDir,"mail-disable");
    DoLink(GlobalDir,OutDir,"mail-greylist");
    DoLink(GlobalDir,OutDir,"mail-callout");