[Aide] Reproducible SIGSEGVs with 0.11 release on OpenBSD 3.9-REL

Pablo Virolainen pablo at vapaa.fi
Mon May 15 17:49:14 EEST 2006


On Thu, 11 May 2006, Axel Rau wrote:

> For me,  "file" has been released premature:
> Program received signal SIGSEGV, Segmentation fault.
> 0x1c00d5c5 in add_file_to_tree (tree=0x8599bf00, file=0x7c380100,
> db=4, status=128, attr=31676) at gen_list.c:1121
> 1121      if((file->attr & DB_CHECKINODE) &&
> (gdb) bt
> #0  0x1c00d5c5 in add_file_to_tree (tree=0x8599bf00, file=0x7c380100,
> db=4, status=128, attr=31676)
>      at gen_list.c:1121
> #1  0x1c00de47 in populate_tree (tree=0x8599bf00) at gen_list.c:1460
> #2  0x1c012c10 in main (argc=3, argv=0xcfbde0ac) at aide.c:536
> (gdb) p file
> $1 = (db_line *) 0x7c380100
> (gdb) p file->attr
> Cannot access memory at address 0x7c380160
> (gdb) p *file
> Cannot access memory at address 0x7c380100
> (gdb) quit
>
> Unfortunately, for the problem to show up, there must be quite some
> thousand files in the db.
> Any proposals for instrumentation with debugging printout statements?

If file pointer is invalid, it means that most propably db_readline_disk
function (, OS or the compiler?) has a bug.

You might want to try if disabling mmap helps (configure --without-mmap).

Pablo


More information about the Aide mailing list