On Sat, 8 Mar 2008, Brian Hechinger wrote:
...
I can bind without issue, but I need to retrieve the values held by a
specific multi valued attribute, and that's where I'm having issues.
I was using ldap_get_values() and all the other deprecated functions, but
have recently converted my code to only use what's available in 2.4.x
Sadly, that didn't fix the problem, it still happens.
This line:
attr_values = ldap_get_values_len(ldap_conn, entry, attr);
Segfaults with SIGABRT and prints this to stderr:
Assertion failed: (LBER_VALID( ber )), function ber_scanf, file
decode.c, line 779.
You passed an invalid 'entry' value to ldap_get_values_len(). Where did
that value come from? (i.e., what's the code that leads up to that call?)
Presumably there was a search that ended with an ldap_result() call.
What sort of checking of the result of ldap_result() did you perform to
handle errors and timeouts?
Philip Guenther