Bug 41905 - Traceback when registering App with '+' in version
Traceback when registering App with '+' in version
Product: UCS
Classification: Unclassified
Component: App Center
UCS 4.1
Other Linux
: P5 normal (vote)
: UCS 4.2
Assigned To: Dirk Wiesenthal
Florian Best
: interim-2
: 40805 (view as bug list)
Depends on:
  Show dependency treegraph
Reported: 2016-08-03 15:41 CEST by Erik Damrose
Modified: 2017-04-04 18:29 CEST (History)
3 users (show)

See Also:
What kind of report is it?: Bug Report
What type of bug is this?: 3: Simply Wrong: The implementation doesn't match the docu
Who will be affected by this bug?: 2: Will only affect a few installed domains
How will those affected feel about the bug?: 2: A Pain – users won’t like this once they notice it
User Pain: 0.069
Enterprise Customer affected?:
School Customer affected?:
ISV affected?:
Waiting Support:
Flags outvoted (downgraded) after PO Review:
Ticket number:
Bug group (optional):
Max CVSS v3 score:
best: Patch_Available+

patch (1019 bytes, patch)
2016-08-15 18:24 CEST, Florian Best
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Erik Damrose univentionstaff 2016-08-03 15:41:31 CEST
App Version was: 2.3.0+8

03.08.16 15:14:00.299  MODULE      ( WARN    ) : Die Registrierung der Applikation im LDAP ist fehlgeschlagen. Sie wird bei jedem Öffnen des App Center Moduls wiederholt werden.
03.08.16 15:14:00.338  MODULE      ( WARN    ) : Traceback (most recent call last):
  File "/usr/lib/pymodules/python2.7/univention/management/console/modules/appcenter/app_center.py", line 1708, in install
    self.tell_ldap(component_manager.ucr, package_manager)
  File "/usr/lib/pymodules/python2.7/univention/management/console/modules/appcenter/app_center.py", line 1508, in tell_ldap
    ldap_object = iapp.get_ldap_object(or_create=True)
  File "/usr/lib/pymodules/python2.7/univention/management/console/ldap.py", line 135, in _decorated
    result = func(*args, **kwargs)
  File "/usr/lib/pymodules/python2.7/univention/management/console/modules/appcenter/app_center.py", line 1404, in get_ldap_object
    return ApplicationLDAPObject.create(self, ldap_connection, co, ldap_position)
  File "/usr/lib/pymodules/python2.7/univention/management/console/modules/appcenter/app_center.py", line 216, in create
  File "/usr/lib/pymodules/python2.7/univention/admin/handlers/__init__.py", line 352, in create
    return self._create()
  File "/usr/lib/pymodules/python2.7/univention/admin/handlers/__init__.py", line 784, in _create
    self.lo.add(self.dn, al)
  File "/usr/lib/pymodules/python2.7/univention/admin/uldap.py", line 402, in add
    raise univention.admin.uexceptions.ldapError(_err2str(msg), original_exception=msg)
ldapError: Invalid DN syntax: invalid DN

Workaround was to replace the + in the version string...
Comment 1 Florian Best univentionstaff 2016-08-15 18:24:49 CEST
Created attachment 7873 [details]

simpleLDAP is now (since >= UCS 4.1-2-errata211) able to create the DN dynamically.
Comment 2 Dirk Wiesenthal univentionstaff 2017-02-23 16:31:29 CET
Got fixed along with Bug#43624. The DN is escaped now.
  univention-appcenter 6.0.1-38A~
Comment 3 Dirk Wiesenthal univentionstaff 2017-02-23 19:25:07 CET
*** Bug 40805 has been marked as a duplicate of this bug. ***
Comment 4 Florian Best univentionstaff 2017-02-24 13:13:44 CET
OK: escaping is done correctly.
OK: changelog

# udm appcenter/app create --set version='asdf+asdf' --set name=foo --set id='foo+bar'
Object created: univentionAppID=foo\+bar,dc=school,dc=local
Comment 5 Stefan Gohmann univentionstaff 2017-04-04 18:29:32 CEST
UCS 4.2 has been released:

If this error occurs again, please use "Clone This Bug".