Univention Bugzilla – Bug 43720
SIGSEGV univention-policy: notifier_client_new(lp->host=NULL) with -H <URI>
Last modified: 2020-07-03 20:54:07 CEST
Is "udl -H <URI>" is used, connecting to the UDN fails as ld->host is not initialized and strdup(NULL) crahes UDL with SIGSEGV: # gdb --args univention-directory-listener -F -H ldap://localhost:7389 -x -D $(ucr get ldap/hostdn) -y /etc/machine.secret -m /usr/lib/univention-directory-listener/system-g -d 2 (gdb) bt #0 strlen () at ../sysdeps/x86_64/strlen.S:106 #1 0x00007ffff652c97e in __GI___strdup (s=0x0) at strdup.c:41 #2 0x00000000004095d5 in notifier_client_new (client=0x6177c0 <global_client>, server=<optimized out>, starttls=<optimized out>) at network.c:326 #3 0x000000000040488f in do_connection (lp=<optimized out>) at main.c:322 #4 main (argc=-11088, argv=0x413268) at main.c:519 main.c:322 »···if (notifier_client_new(NULL, lp->host, 1) != 0) main.c (or base/univention-policy/lib/ldap.c) should use ldap_url_parse() to parse the URL and fill lp->host. maybe ldap_set_urllist_proc() should also be used to track the preferred server. PS: ldapi:/// with -Y EXTERNAL is also not supported
This issue has been filed against UCS 4.2. UCS 4.2 is out of maintenance and many UCS components have changed in later releases. Thus, this issue is now being closed. If this issue still occurs in newer UCS versions, please use "Clone this bug" or reopen it and update the UCS version. In this case please provide detailed information on how this issue is affecting you.