While undocumented in the POD, the OO interface exposes the time out parameter accepted by ldap_search_ext(_s)(). When used in an idiomatic manner, there is a segfault. See below example code and output:
===== SEARCH_S WITH TIMEOUT
Segmentation fault (core dumped)
Anaysis indicates that the XS wrappers ldap_search_ext(_s)() both expect a 'struct timeval *' passed from perl-space, which is strange considering ldap_result does accept idiomatic time outs.
See below function definition:
int
ldap_search_ext_s(ld, base, scope, filter, attrs, attrsonly, sctrls, cctrls, timeout, sizelimit, res)
LDAP * ld
LDAP_CHAR * base
int scope
LDAP_CHAR * filter
SV * attrs
int attrsonly
LDAPControl ** sctrls
LDAPControl ** cctrls
struct timeval * timeout
int sizelimit
LDAPMessage * res = NO_INIT
CODE:
{ ... }
I am currently working on a larger refactor in relation to timeouts in order to resolve #21
While undocumented in the POD, the OO interface exposes the time out parameter accepted by ldap_search_ext(_s)(). When used in an idiomatic manner, there is a segfault. See below example code and output:
Output:
Anaysis indicates that the XS wrappers ldap_search_ext(_s)() both expect a 'struct timeval *' passed from perl-space, which is strange considering ldap_result does accept idiomatic time outs.
See below function definition:
I am currently working on a larger refactor in relation to timeouts in order to resolve #21