Add support for this attribute in ud-info taking into account that
authorJoey Schulze <joey@infodrom.org>
Sun, 14 Dec 2008 00:44:38 +0000 (01:44 +0100)
committerJoey Schulze <joey@infodrom.org>
Sun, 14 Dec 2008 00:44:38 +0000 (01:44 +0100)
only boolean values are acceptable and document it

debian/changelog
ud-info

index 031dffb..748f6eb 100644 (file)
@@ -1,3 +1,12 @@
+userdir-ldap (0.3.54) unstable; urgency=low
+
+  * Add new attribute mailSpamOptOut to turn on/off spam filtering
+    entirely
+  * Add support for this attribute in ud-info taking into account that
+    only boolean values are acceptable
+
+ --
+
 userdir-ldap (0.3.53) unstable; urgency=low
 
   * Properly show shadowlastchange and mail disabled message when
 userdir-ldap (0.3.53) unstable; urgency=low
 
   * Properly show shadowlastchange and mail disabled message when
diff --git a/ud-info b/ud-info
index 282d6a4..73e040d 100755 (executable)
--- a/ud-info
+++ b/ud-info
@@ -24,6 +24,7 @@
 #   Copyright (c) 2008 Martin Zobel-Helas <zobel@debian.org>
 #   Copyright (c) 2008 Marc 'HE' Brockschmidt <he@debian.org>
 #   Copyright (c) 2008 Mark Hymers <mhy@debian.org>
 #   Copyright (c) 2008 Martin Zobel-Helas <zobel@debian.org>
 #   Copyright (c) 2008 Marc 'HE' Brockschmidt <he@debian.org>
 #   Copyright (c) 2008 Mark Hymers <mhy@debian.org>
+#   Copyright (c) 2008 Joey Schulze <joey@infodrom.org>
 #
 #   This program is free software; you can redistribute it and/or modify
 #   it under the terms of the GNU General Public License as published by
 #
 #   This program is free software; you can redistribute it and/or modify
 #   it under the terms of the GNU General Public License as published by
@@ -75,7 +76,8 @@ AttrInfo = {"cn": ["First Name", 101],
             "mailRBL": ["Mail RBLs",22],
             "mailRHSBL": ["Mail RHSBLs",23],
             "mailWhitelist": ["Mail Whitelist",24],
             "mailRBL": ["Mail RBLs",22],
             "mailRHSBL": ["Mail RHSBLs",23],
             "mailWhitelist": ["Mail Whitelist",24],
-           "VoIP": ["VoIP Address",25],
+           "mailSpamOptOut": ["Mail Spam Filtering",25],
+           "VoIP": ["VoIP Address",26],
            "comment": ["Comment",116],
            "userPassword": ["Crypted Password",117],
             "dnsZoneEntry": ["d.net Entry",118],
            "comment": ["Comment",116],
            "userPassword": ["Crypted Password",117],
             "dnsZoneEntry": ["d.net Entry",118],
@@ -109,6 +111,7 @@ AttrPrompt = {"cn": ["Common name or first name"],
               "mailRBL": ["SMTP time RBL lists"],
               "mailRHSBL": ["SMTP time RHSBL lists"],
               "mailWhitelist": ["SMTP time whitelist from other checks"],
               "mailRBL": ["SMTP time RBL lists"],
               "mailRHSBL": ["SMTP time RHSBL lists"],
               "mailWhitelist": ["SMTP time whitelist from other checks"],
+              "mailSpamOptOut": ["Mail Spam Filtering"],
               "member": ["LDAP Group Member for slapd ACLs"],
              "latitude": ["XEarth latitude in ISO 6709 format - see /usr/share/zoneinfo/zone.tab or etak.com"],
              "longitude": ["XEarth latitude in ISO 6709 format - see /usr/share/zoneinfo/zone.tab or etak.com"],
               "member": ["LDAP Group Member for slapd ACLs"],
              "latitude": ["XEarth latitude in ISO 6709 format - see /usr/share/zoneinfo/zone.tab or etak.com"],
              "longitude": ["XEarth latitude in ISO 6709 format - see /usr/share/zoneinfo/zone.tab or etak.com"],
@@ -249,6 +252,14 @@ def ChangeAttr(Attrs,Attr):
       Attrs[1][Attr] = [""];
       return;
 
       Attrs[1][Attr] = [""];
       return;
 
+   if (Attr == "mailSpamOptOut" and NewValue != "true" and NewValue != "false"):
+      if (NewValue == "1"): NewValue = "true"
+      else:
+         if (NewValue == "0"): NewValue = "false"
+         else:
+            print "Need a boolean value"
+            return
+
    # Set a new value
    print "Setting.",;
    l.modify_s(UserDn,[(ldap.MOD_REPLACE,Attr,NewValue)]);
    # Set a new value
    print "Setting.",;
    l.modify_s(UserDn,[(ldap.MOD_REPLACE,Attr,NewValue)]);