Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 493858

Summary: net-nds/ldapvi - ldapvi: error.c:172: ldap_perror: Assertion `ld != ((void *)0)' failed
Product: Gentoo Linux Reporter: Andrey Volkov <volkov>
Component: Current packagesAssignee: No maintainer - Look at https://wiki.gentoo.org/wiki/Project:Proxy_Maintainers if you want to take care of it <maintainer-needed>
Status: RESOLVED FIXED    
Severity: normal Keywords: PATCH, PullRequest
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
See Also: https://github.com/gentoo/gentoo/pull/28639
Whiteboard:
Package list:
Runtime testing required: ---
Attachments: ldapvi-1.7_p20101214-fix-error-handling.patch

Description Andrey Volkov 2013-12-10 18:56:30 UTC
net-nds/ldapvi requires ssl/gnutls enabled for net-nds/openldap

ldapvi: error.c:172: ldap_perror: Assertion `ld != ((void *)0)' failed

Reproducible: Always

Steps to Reproduce:
1. install net-nds/openldap with -ssl -gnutls
2. install net-nds/ldapvi
3. run ldapvi
Actual Results:  
Got SIGABRT

ldapvi: error.c:172: ldap_perror: Assertion `ld != ((void *)0)' failed


gdb ldapvi

GNU gdb (Gentoo 7.6.2 p1) 7.6.2
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-pc-linux-gnu".
For bug reporting instructions, please see:
<http://bugs.gentoo.org/>...
Reading symbols from /usr/bin/ldapvi...done.
(gdb) run
Starting program: /usr/bin/ldapvi 
warning: Could not load shared library symbols for linux-vdso.so.1.
Do you need "set solib-search-path" or "set sysroot"?
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
ldapvi: error.c:172: ldap_perror: Assertion `ld != ((void *)0)' failed.

Program received signal SIGABRT, Aborted.
0x00007ffff6635319 in raise () from /lib64/libc.so.6
(gdb) bt
#0  0x00007ffff6635319 in raise () from /lib64/libc.so.6
#1  0x00007ffff6636678 in abort () from /lib64/libc.so.6
#2  0x00007ffff662e4e6 in __assert_fail_base () from /lib64/libc.so.6
#3  0x00007ffff662e592 in __assert_fail () from /lib64/libc.so.6
#4  0x00007ffff6bc7c73 in ldap_perror () from /usr/lib64/libldap-2.4.so.2
#5  0x0000000000409ddb in ldaperr (ld=ld@entry=0x0, str=str@entry=0x413978 "ldap_set_option(LDAP_OPT_X_TLS)") at error.c:54
#6  0x000000000040804c in do_connect (server=0x0, bind_options=bind_options@entry=0x7fffffffda58, referrals=1, starttls=0, tls=4, deref=0, 
    profileonlyp=0, dir=dir@entry=0x61a670 <dir.15655> "/tmp/ldapvi-XXXXXX") at ldapvi.c:720
#7  0x0000000000404cae in main (argc=<optimized out>, argv=<optimized out>) at ldapvi.c:1744
Comment 1 Andrey Volkov 2013-12-10 19:41:04 UTC
--- a/ldapvi-1.7_p20101214.ebuild	2013-02-28 16:21:21.000000000 +0600
+++ b/ldapvi-1.7_p20101214.ebuild	2013-12-11 01:36:19.000000000 +0600
@@ -17,13 +17,18 @@
 
 RDEPEND="
 	sys-libs/ncurses:5
-	net-nds/openldap
 	dev-libs/popt
 	dev-libs/glib:2
 	sys-libs/readline
-	gnutls? ( net-libs/gnutls )
-	!gnutls? ( dev-libs/openssl:0 )
-	sasl? ( dev-libs/cyrus-sasl:2 )"
+	gnutls? (
+		net-libs/gnutls
+		net-nds/openldap[gnutls]
+	)
+	!gnutls? (
+		dev-libs/openssl:0
+		net-nds/openldap[ssl]
+	)
+	sasl? ( dev-libs/cyrus-sasl:2[ssl] )"
 DEPEND="${RDEPEND}
 	virtual/pkgconfig"
Comment 2 Andrey Volkov 2013-12-10 19:42:36 UTC
--- a/ldapvi-1.7-r1.ebuild	2012-06-29 21:31:23.000000000 +0600
+++ b/ldapvi-1.7-r1.ebuild	2013-12-11 01:28:17.000000000 +0600
@@ -16,7 +16,7 @@
 IUSE="ssl"
 
 RDEPEND="sys-libs/ncurses
-	>=net-nds/openldap-2.2
+	>=net-nds/openldap-2.2[ssl?]
 	dev-libs/popt
 	>=dev-libs/glib-2
 	sys-libs/readline
Comment 3 Andrey Volkov 2013-12-10 19:52:22 UTC
Created attachment 365078 [details, diff]
ldapvi-1.7_p20101214-fix-error-handling.patch

Attach optional patch (ldapvi-1.7_p20101214-fix-error-handling.patch) for better connection error handling.
Comment 4 Pascal Jäger 2022-12-11 19:06:56 UTC
This is true and it happens when I install openldap with USE="-ssl" and run ldapvi. Even though this is old, still it is valid. Will add the suggested use flag deps to the ebuild.
Comment 5 Larry the Git Cow gentoo-dev 2022-12-16 05:10:54 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6e80ea63812ec9826d85e3502a5437aaffab9f1a

commit 6e80ea63812ec9826d85e3502a5437aaffab9f1a
Author:     Pascal Jäger <pascal.jaeger@leimstift.de>
AuthorDate: 2022-12-11 18:21:32 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2022-12-16 05:09:14 +0000

    net-nds/ldapvi: revbump, fix build for clang16, fix USE dependencies
    
    Closes: https://bugs.gentoo.org/493858
    Closes: https://bugs.gentoo.org/740852
    Closes: https://bugs.gentoo.org/828517
    Closes: https://bugs.gentoo.org/882229
    Signed-off-by: Pascal Jäger <pascal.jaeger@leimstift.de>
    Closes: https://github.com/gentoo/gentoo/pull/28639
    Signed-off-by: Sam James <sam@gentoo.org>

 ...vi-1.7-fix-implicit-function-declarations.patch | 86 ++++++++++++++++++++++
 net-nds/ldapvi/ldapvi-1.7_p20101214-r4.ebuild      | 57 ++++++++++++++
 2 files changed, 143 insertions(+)