]> git.ipfire.org Git - ipfire.org.git/commitdiff
accounts: Don't set mail routing address to an empty string
authorMichael Tremer <michael.tremer@ipfire.org>
Fri, 19 Oct 2018 11:42:09 +0000 (12:42 +0100)
committerMichael Tremer <michael.tremer@ipfire.org>
Fri, 19 Oct 2018 11:42:09 +0000 (12:42 +0100)
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
src/backend/accounts.py

index dca60aa41132a64ac3d2910cb3895b7c2cde7351..605a2b0b770cfd03d3baf32bd6f066517e414026 100644 (file)
@@ -230,7 +230,8 @@ class Account(Object):
                        modlist.append((ldap.MOD_DELETE, key, None))
 
                # Add new values
-               modlist.append((ldap.MOD_ADD, key, values))
+               if values:
+                       modlist.append((ldap.MOD_ADD, key, values))
 
                # Run modify operation
                self._modify(modlist)
@@ -242,7 +243,7 @@ class Account(Object):
                return self._set(key, values)
 
        def _set_strings(self, key, values):
-               return self._set(key, [e.encode() for e in values])
+               return self._set(key, [e.encode() for e in values if e])
 
        def _set_string(self, key, value):
                return self._set_strings(key, [value,])
@@ -416,7 +417,7 @@ class Account(Object):
                return self._get_string("mailRoutingAddress", None)
 
        def set_mail_routing_address(self, address):
-               self._set_string("mailRoutingAddress", address)
+               self._set_string("mailRoutingAddress", address or None)
 
        mail_routing_address = property(get_mail_routing_address, set_mail_routing_address)