[Date Prev][Date Next]
[Chronological]
[Thread]
[Top]
(ITS#3695) [devel]test026-dn segfaults
Full_Name: Quanah Gibson-Mount
Version: HEAD
OS: Solaris 8
URL: ftp://ftp.openldap.org/incoming/
Submission from: (NULL) (171.64.19.82)
test026-dn fails in the 4/28 checkout of HEAD I took, with a segfault:
gdb) cont
Continuing.
[New LWP 2]
[New LWP 3]
Program received signal SIGSEGV, Segmentation fault.
[Switching to LWP 3]
slap_sl_malloc (size=16, ctx=0x1cbd68) at sl_malloc.c:267
267 *new++ = size - sizeof(ber_len_t);
(gdb) bt
#0 slap_sl_malloc (size=16, ctx=0x1cbd68) at sl_malloc.c:267
#1 0x00028198 in get_filter (op=0x1f66f8, ber=0x1f5960, filt=0x1f6734,
text=0xfdfffd6c) at filter.c:282
#2 0x000272ec in do_search (op=0x0, rs=0x1f5960) at search.c:138
(gdb) frame 2
#2 0x000272ec in do_search (op=0x0, rs=0x1f5960) at search.c:138
138 rs->sr_err = get_filter( op, op->o_ber, &op->ors_filter,
&rs->sr_text );
(gdb) l
138 rs->sr_err = get_filter( op, op->o_ber, &op->ors_filter,
&rs->sr_text );
139 if( rs->sr_err != LDAP_SUCCESS ) {
140 if( rs->sr_err == SLAPD_DISCONNECT ) {
141 rs->sr_err = LDAP_PROTOCOL_ERROR;
142 send_ldap_disconnect( op, rs );
143 rs->sr_err = SLAPD_DISCONNECT;
144 } else {
145 send_ldap_result( op, rs );
146 }
147 goto return_results;
(gdb) frame 1
#1 0x00028198 in get_filter (op=0x1f66f8, ber=0x1f5960, filt=0x1f6734,
text=0xfdfffd6c) at filter.c:282
282 *filt = op->o_tmpalloc( sizeof(f), op->o_tmpmemctx );
(gdb) l
277 f.f_result = SLAPD_COMPARE_UNDEFINED;
278 err = LDAP_SUCCESS;
279 }
280
281 if ( err == LDAP_SUCCESS ) {
282 *filt = op->o_tmpalloc( sizeof(f), op->o_tmpmemctx );
283 **filt = f;
284 }
285
286 Debug( LDAP_DEBUG_FILTER, "end get_filter %d\n", err, 0, 0 );
(gdb) frame 0
#0 slap_sl_malloc (size=16, ctx=0x1cbd68) at sl_malloc.c:267
267 *new++ = size - sizeof(ber_len_t);
(gdb) l
262 "slap_sl_malloc of %lu bytes failed,
using ch_malloc\n",
263 (long)size, 0, 0);
264 return ch_malloc(size);
265 }
266 new = sh->sh_last;
267 *new++ = size - sizeof(ber_len_t);
268 sh->sh_last = (char *) sh->sh_last + size;
269 return( (void *)new );
270 } else {
271 size_shift = size - 1;
--Quanah