Re: getgrouplist segfault?



On Sat, Jul 02, 2005 at 03:56:53PM -0500, Anton Monroe wrote:
> The symptom is that when I try to start MC as root, it immediately gives
> a  segmentation fault.  When I start it as a normal user, it works.  The
> only  thing I can see that changed on January 30 is something called
> 'getgrouplist'. I don't know what that is.  Below is a complete diff
> between the version that works for me and the one that doesn't.  This is
> on a Linux machine; originally SuSE 7.3 but with updated versions of a
> lot of things.
> 
> Any ideas?  Any more information I should give you?

Pavel Tsekov told me how to do a backtrace.  Using cvs HEAD as of July 5,
I did
(as a normal user)
    ./autogen.sh CFLAGS="-g -O0" --prefix=/mc
    make
(as root)
    make install
    gdb /test/bin/mc | tee gdb.root.out

which produced this:

=================================================================
GNU gdb 20010316
Copyright 2001 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i386-suse-linux"...
(gdb) r
Starting program: /mc/bin/mc 

Program received signal SIGSEGV, Segmentation fault.
0x4013bb29 in chunk_free () from /lib/libc.so.6
(gdb) bt full
#0  0x4013bb29 in chunk_free () from /lib/libc.so.6
No symbol table info available.
#1  0x4013b9a3 in free () from /lib/libc.so.6
No symbol table info available.
#2  0x4002efa3 in g_free () from /usr/lib/libglib-1.2.so.0
No symbol table info available.
#3  0x080906a7 in init_groups () at utilunix.c:107
	groups = (gid_t *) 0x8104f98
	ng = 7
	newgroups = (gid_t *) 0x8105020
	i = 135277456
	pwd = (struct passwd *) 0x401e9bd0
	grp = (struct group *) 0x401e9a88
#4  0x08076ff9 in main (argc=1, argv=0xbffff824) at main.c:2143
	show_change_notice = 0
#5  0x400e47ee in __libc_start_main () from /lib/libc.so.6
No symbol table info available.
(gdb) continue
Continuing.

Program terminated with signal SIGSEGV, Segmentation fault.
The program no longer exists.
(gdb) q
=================================================================
    
Hope it helps,

Anton



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]