userdir-ldap.conf: remove from default keyrings:
[mirror/userdir-ldap.git] / ud-info
diff --git a/ud-info b/ud-info
index c5a45ea..8b9618b 100755 (executable)
--- a/ud-info
+++ b/ud-info
@@ -219,7 +219,7 @@ def ShowAttrs(Attrs):
    Keys.sort();
    for at in Keys:
       if at < 100 or RootMode != 0:
-         print " %3u) %-18s: " % (at,OrderedIndex[at][0]),
+         print " %3u) %-19s: " % (at,OrderedIndex[at][0]),
          for x in OrderedIndex[at][1]:
             print "'%s'" % (re.sub('[\n\r]','?',x)),
          print;
@@ -252,13 +252,15 @@ def ChangeAttr(Attrs,Attr):
       Attrs[1][Attr] = [""];
       return;
 
-   if (Attr == "mailSpamOptOut" and NewValue != "true" and NewValue != "false"):
-      if (NewValue == "1"): NewValue = "true"
-      else:
-         if (NewValue == "0"): NewValue = "false"
+   if (Attr == "mailSpamOptOut" or Attr == "mailGreylisting" or Attr == "mailCallout"):
+      if (NewValue.lower() != "true" and NewValue.lower() != "false"):
+         if (NewValue == "1"): NewValue = "true"
          else:
-            print "Need a boolean value"
-            return
+            if (NewValue == "0"): NewValue = "false"
+            else:
+               print "Need a boolean value"
+               return
+      NewValue = NewValue.upper()
 
    # Set a new value
    print "Setting.",;
@@ -349,14 +351,15 @@ else:
 
 # Connect to the ldap server
 l = connectLDAP()
+UserDn = "uid=" + User + "," + BaseDn
 if (BindUser != ""):
    Password = getpass.getpass(BindUser + "'s password: ")
-   UserDn = "uid=" + BindUser + "," + BaseDn
+   BindUserDn = "uid=" + BindUser + "," + BaseDn
 else:
    Password = ""
-   UserDn = ""
+   BindUserDn = ""
 try:
-   l.simple_bind_s(UserDn,Password)
+   l.simple_bind_s(BindUserDn,Password)
 except ldap.LDAPError,e:
    print >> sys.stderr, "LDAP error:", e.args[0]['desc']
    print >> sys.stderr, "           ", e.args[0]['info']