cvs commit: src/include pwd.h src/lib/libc/gen getpwent.c src/usr.sbin/pwd_mkdb pwd_mkdb.c

Jacques A. Vidrine nectar at FreeBSD.org
Mon Apr 21 07:02:47 PDT 2003


On Mon, Apr 21, 2003 at 05:44:26PM +0400, Andrey A. Chernov wrote:
> Your guess is right. I try to compile getpwent.c as part of application 
> with -g and got that:
> 
> Indexer[26994]: [1] Done (57 seconds)
> 
> Program received signal SIGSEGV, Segmentation fault.
> 0x0804a97e in compat_endstate (p=0x902fce0) at getpwent.c:1383
> 1383                    st->exclude->close(st->exclude);
> (gdb) bt
> #0  0x0804a97e in compat_endstate (p=0x902fce0) at getpwent.c:1383
> #1  0x080da582 in _thread_cleanupspecific ()
> #2  0x080e2752 in pthread_exit ()
> #3  0x080d9b06 in _thread_start ()

OK, now the question is, what happened to st->exclude? :-)
Say, what is the output of `ldd /path/to/indexer' ? 
Could it be that mnogosearch is linked with some alternative DB
implementation, and that is being invoked when dbopen() is called from
libc?


On Mon, Apr 21, 2003 at 05:56:07PM +0400, Andrey A. Chernov wrote:
> BTW, by quick looking I not see any place where st->exclude initialized to 
> NULL, it means garbadge is there.

The entire `struct compat_state st' structure is initialized to zeros
when allocated via calloc, so that's not it.

Cheers,
-- 
Jacques A. Vidrine <nectar at celabo.org>          http://www.celabo.org/
NTT/Verio SME          .     FreeBSD UNIX     .       Heimdal Kerberos
jvidrine at verio.net     .  nectar at FreeBSD.org  .          nectar at kth.se


More information about the cvs-all mailing list