@@ -, +, @@ --- branches/ucs-4.0/ucs-4.0-2/base/univention-server/check_connection | 2 +- branches/ucs-4.0/ucs-4.0-2/base/univention-server/debian/copyright | 2 +- branches/ucs-4.0/ucs-4.0-2/base/univention-server/debian/rules | 2 +- .../univention-server/debian/univention-role-server-common.postinst | 2 +- .../base/univention-server/debian/univention-server-backup.postinst | 2 +- .../base/univention-server/debian/univention-server-master.postinst | 2 +- .../base/univention-server/debian/univention-server-master.preinst | 2 +- .../base/univention-server/debian/univention-server-member.postinst | 2 +- .../base/univention-server/debian/univention-server-slave.postinst | 2 +- .../ucs-4.0/ucs-4.0-2/base/univention-server/server_password_change | 2 +- .../univention-directory-policy/univention-set-ldap-server | 2 +- .../ucs-4.0-2/base/univention-server/univention-ldap-server-available | 2 +- 12 files changed, 12 insertions(+), 12 deletions(-) --- a/branches/ucs-4.0/ucs-4.0-2/base/univention-server/check_connection +++ a/branches/ucs-4.0/ucs-4.0-2/base/univention-server/check_connection @@ -5,7 +5,7 @@ # connection fails 'ldap' is removed from the list of possible # authentication methods # -# Copyright 2004-2014 Univention GmbH +# Copyright 2004-2015 Univention GmbH # # http://www.univention.de/ # --- a/branches/ucs-4.0/ucs-4.0-2/base/univention-server/debian/copyright +++ a/branches/ucs-4.0/ucs-4.0-2/base/univention-server/debian/copyright @@ -1,4 +1,4 @@ -Copyright 2003-2014 Univention GmbH +Copyright 2003-2015 Univention GmbH http://www.univention.de/ --- a/branches/ucs-4.0/ucs-4.0-2/base/univention-server/debian/rules +++ a/branches/ucs-4.0/ucs-4.0-2/base/univention-server/debian/rules @@ -3,7 +3,7 @@ # Univention Server # rules file for the debian package # -# Copyright 2003-2014 Univention GmbH +# Copyright 2003-2015 Univention GmbH # # http://www.univention.de/ # --- a/branches/ucs-4.0/ucs-4.0-2/base/univention-server/debian/univention-role-server-common.postinst +++ a/branches/ucs-4.0/ucs-4.0-2/base/univention-server/debian/univention-role-server-common.postinst @@ -3,7 +3,7 @@ # Univention Server Common # postinst script for the Debian package # -# Copyright 2014 Univention GmbH +# Copyright 2014-2015 Univention GmbH # # http://www.univention.de/ # --- a/branches/ucs-4.0/ucs-4.0-2/base/univention-server/debian/univention-server-backup.postinst +++ a/branches/ucs-4.0/ucs-4.0-2/base/univention-server/debian/univention-server-backup.postinst @@ -3,7 +3,7 @@ # Univention Server Backup # postinst script for the debian package # -# Copyright 2003-2014 Univention GmbH +# Copyright 2003-2015 Univention GmbH # # http://www.univention.de/ # --- a/branches/ucs-4.0/ucs-4.0-2/base/univention-server/debian/univention-server-master.postinst +++ a/branches/ucs-4.0/ucs-4.0-2/base/univention-server/debian/univention-server-master.postinst @@ -3,7 +3,7 @@ # Univention Server Master # postinst script for the debian package # -# Copyright 2003-2014 Univention GmbH +# Copyright 2003-2015 Univention GmbH # # http://www.univention.de/ # --- a/branches/ucs-4.0/ucs-4.0-2/base/univention-server/debian/univention-server-master.preinst +++ a/branches/ucs-4.0/ucs-4.0-2/base/univention-server/debian/univention-server-master.preinst @@ -3,7 +3,7 @@ # Univention Server Master # preinst script for the debian package # -# Copyright 2003-2014 Univention GmbH +# Copyright 2003-2015 Univention GmbH # # http://www.univention.de/ # --- a/branches/ucs-4.0/ucs-4.0-2/base/univention-server/debian/univention-server-member.postinst +++ a/branches/ucs-4.0/ucs-4.0-2/base/univention-server/debian/univention-server-member.postinst @@ -3,7 +3,7 @@ # Univention Server Memberserver # postinst script for the debian package # -# Copyright 2003-2014 Univention GmbH +# Copyright 2003-2015 Univention GmbH # # http://www.univention.de/ # --- a/branches/ucs-4.0/ucs-4.0-2/base/univention-server/debian/univention-server-slave.postinst +++ a/branches/ucs-4.0/ucs-4.0-2/base/univention-server/debian/univention-server-slave.postinst @@ -3,7 +3,7 @@ # Univention Server Slave # postinst script for the debian package # -# Copyright 2003-2014 Univention GmbH +# Copyright 2003-2015 Univention GmbH # # http://www.univention.de/ # --- a/branches/ucs-4.0/ucs-4.0-2/base/univention-server/server_password_change +++ a/branches/ucs-4.0/ucs-4.0-2/base/univention-server/server_password_change @@ -3,7 +3,7 @@ # Univention Server # helper script: creates new machine password # -# Copyright 2004-2014 Univention GmbH +# Copyright 2004-2015 Univention GmbH # # http://www.univention.de/ # --- a/branches/ucs-4.0/ucs-4.0-2/base/univention-server/univention-directory-policy/univention-set-ldap-server +++ a/branches/ucs-4.0/ucs-4.0-2/base/univention-server/univention-directory-policy/univention-set-ldap-server @@ -4,7 +4,7 @@ # Univention Server Memberserver # sets LDAP server according to policy # -# Copyright 2003-2014 Univention GmbH +# Copyright 2003-2015 Univention GmbH # # http://www.univention.de/ # --- a/branches/ucs-4.0/ucs-4.0-2/base/univention-server/univention-ldap-server-available +++ a/branches/ucs-4.0/ucs-4.0-2/base/univention-server/univention-ldap-server-available @@ -3,7 +3,7 @@ # Univention System Role Package # helper script: checks the connection to the LDAP server. # -# Copyright 2010-2014 Univention GmbH +# Copyright 2010-2015 Univention GmbH # # http://www.univention.de/ # -- layer --- .../base/univention-server/debian/changelog | 6 +++++ .../univention-set-ldap-server | 28 ++++++++++++---------- 2 files changed, 22 insertions(+), 12 deletions(-) --- a/branches/ucs-4.0/ucs-4.0-2/base/univention-server/debian/changelog +++ a/branches/ucs-4.0/ucs-4.0-2/base/univention-server/debian/changelog @@ -1,3 +1,9 @@ +univention-server (10.0.3-2) unstable; urgency=low + + * Bug #38094: Move ldap/server/additional into LDAP layer + + -- Philipp Hahn Mon, 18 May 2015 11:18:25 +0200 + univention-server (10.0.3-1) unstable; urgency=medium * Removed lock_expired_passwords lock_expired_accounts cron job --- a/branches/ucs-4.0/ucs-4.0-2/base/univention-server/univention-directory-policy/univention-set-ldap-server +++ a/branches/ucs-4.0/ucs-4.0-2/base/univention-server/univention-directory-policy/univention-set-ldap-server @@ -31,10 +31,12 @@ # /usr/share/common-licenses/AGPL-3; if not, see # . -import sys, string, subprocess -import univention.config_registry +import sys +import subprocess +from univention.config_registry import ConfigRegistry +from univention.config_registry.frontend import ucr_update -configRegistry = univention.config_registry.ConfigRegistry() +configRegistry = ConfigRegistry(write_registry=ConfigRegistry.LDAP) configRegistry.load() found=0 @@ -53,24 +55,26 @@ if ldap_hostdn: if p1.returncode != 0: continue + updates = {} for line in result.split('\n'): line=line.strip(' ').strip('\n') if line.startswith('univentionLDAPServer='): new_ldap_server=line.replace('univentionLDAPServer=', '').replace('"','') if not found: ldap_server_name = configRegistry.get('ldap/server/name') - if not ldap_server_name: - out=univention.config_registry.handler_set(['ldap/server/name=%s' % new_ldap_server]) - elif not new_ldap_server == ldap_server_name: - out=univention.config_registry.handler_set(['ldap/server/name=%s' % new_ldap_server]) + if not ldap_server_name or new_ldap_server != ldap_server_name: + updates['ldap/server/name'] = new_ldap_server found=1 else: addition.append(new_ldap_server) - if addition: - out=univention.config_registry.handler_set(['ldap/server/addition=%s' % string.join(addition,' ')]) - else: - if configRegistry.get( 'ldap/server/addition' ): - out=univention.config_registry.handler_unset(['ldap/server/addition']) + + old = configRegistry.get('ldap/server/addition', '') + new = ' '.join(addition) + if new != old: + updates['ldap/server/addition'] = new + + if updates: + ucr_update(configRegistry, updates) sys.exit(0) --