[Date Prev][Date Next] [Chronological] [Thread] [Top]

slapd segfault in HEAD (root user / search limit / back-ldbm) (ITS#1433)



Hi,

Encountered a problem last night when testing slapd from cvs HEAD.  Looks
like slapd segfaults on a search when 1) the search is performed as root and
2) the search has some client side time or size limits.

Here is the trace:

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 3076 (runnable)]
0x8074785 in ldbm_back_search (be=0x81cb1f8, conn=0x40d30dc8, op=0x82013f8,
    base=0x82009d0 "ou=Tests, dc=foo, dc=com",
    nbase=0x8200a20 "OU=TESTS,DC=FOO,DC=COM", scope=1, deref=0,
    slimit=2, tlimit=-1, filter=0x81fd698,
    filterstr=0x82011e8 "(objectClass=*)", attrs=0x0, attrsonly=0)
    at search.c:263
263		} else if ( slimit > limit->lms_s_hard ) {
(gdb) backtrace
#0  0x8074785 in ldbm_back_search (be=0x81cb1f8, conn=0x40d30dc8,
    op=0x82013f8, base=0x82009d0 "ou=Tests, foo, dc=com",
    nbase=0x8200a20 "OU=TESTS,DC=FOO,DC=COM", scope=1, deref=0,
    slimit=2, tlimit=-1, filter=0x81fd698,
    filterstr=0x82011e8 "(objectClass=*)", attrs=0x0, attrsonly=0)
    at search.c:263
#1  0x8051c2b in do_search (conn=0x40d30dc8, op=0x82013f8) at search.c:300
#2  0x8050939 in connection_operation (arg_v=0x81fd978) at connection.c:915
#3  0x8087a94 in ldap_int_thread_pool_wrapper (pool=0x81a60b8) at
tpool.c:379
#4  0x40036b85 in pthread_start_thread (arg=0xbf3ffe40) at manager.c:241
#5  0x4003754c in pthread_start_thread_event (arg=0xbf3ffe40) at
manager.c:264
(gdb) print isroot
$1 = 1
(gdb) print limit
$2 = (struct slap_limits_set *) 0x0

Mark