Re: pw is broken?
saw the commit an hour ago. rebuilt libutil.so.9 and unfortunately it still=
crashes for me :(
--- On Sat, 3/9/13, hiren panchasara <hiren.panchasara@gmail.com> wrote:
From: hiren panchasara <hiren.panchasara@gmail.com>
Subject: Re: pw is broken?
To: ktsin@acm.org
Cc: "freebsd-current" <freebsd-current@freebsd.org>
Date: Saturday, March 9, 2013, 10:34 PM
On Mar 8, 2013 9:44 PM, "KT Sin" <ktsin@acm.org> wrote:
>
> pw is crashing with seg fault due to this change?
>
> http://svnweb.freebsd.org/base/head/lib/libutil/gr_util.c?r1=3D245390&r2=
=3D247919
I think the correct fix is committed with: http://svnweb.freebsd.org/change=
set/base/248102
Hiren
>
> # gdb ./pw
> GNU gdb 6.1.1 [FreeBSD]
> Copyright 2004 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 conditi=
ons.
> Type "show copying" to see the conditions.
> There is absolutely no warranty for GDB. =A0Type "show warranty" for deta=
ils.
> This GDB was configured as "amd64-marcel-freebsd"...
> (gdb) run groupadd test123 -g 12345
> Starting program: /usr/src/usr.sbin/pw/pw groupadd test123 -g 12345
>
> Program received signal SIGSEGV, Segmentation fault.
> 0x0000000080d84a4f in stpcpy () from /lib/libc.so.7
> (gdb) bt full
> #0 =A00x0000000080d84a4f in stpcpy () from /lib/libc.so.7
> No symbol table info available.
> #1 =A00x0000000080a5c00a in grcopy (gr=3D0x612ce0, newgr=3D0x81409100, na=
me=3D0x0,
> =A0 =A0 ndx=3D0) at /usr/src/lib/libutil/gr_util.c:496
> =A0 =A0 =A0 =A0 dst =3D 0x8 <Error reading address 0x8: Bad address>
> =A0 =A0 =A0 =A0 i =3D 1090277153
> #2 =A00x0000000080a5bdc6 in gr_add (gr=3D0x612ce0, newmember=3D0x0)
> =A0 =A0 at /usr/src/lib/libutil/gr_util.c:451
> =A0 =A0 =A0 =A0 newgr =3D (struct group *) 0x81409100
> =A0 =A0 =A0 =A0 len =3D 0
> =A0 =A0 =A0 =A0 num_mem =3D 0
> #3 =A00x0000000080a5bd4f in gr_dup (gr=3D0x612ce0)
> =A0 =A0 at /usr/src/lib/libutil/gr_util.c:434
> No locals.
> #4 =A00x000000000040bad7 in gr_update (grp=3D0x612ce0, group=3D0x0) at gr=
upd.c:78
> =A0 =A0 =A0 =A0 pfd =3D 0
> =A0 =A0 =A0 =A0 tfd =3D 4244492
> =A0 =A0 =A0 =A0 gr =3D (struct group *) 0x0
> =A0 =A0 =A0 =A0 old_gr =3D (struct group *) 0x0
> #5 =A00x000000000040ba8f in addgrent (grp=3D0x612ce0) at grupd.c:111
> No locals.
> #6 =A00x000000000040a83d in pw_group (cnf=3D0x612bf0, mode=3D0, args=3D0x=
613e78)
> =A0 =A0 at pw_group.c:258
> ---Type <return> to continue, or q <return> to quit---
> =A0 =A0 =A0 =A0 grp =3D (struct group *) 0x612ce0
> =A0 =A0 =A0 =A0 members =3D (char **) 0x81485d00
> =A0 =A0 =A0 =A0 rc =3D 0
> =A0 =A0 =A0 =A0 a_name =3D (struct carg *) 0x8144c0a0
> =A0 =A0 =A0 =A0 a_gid =3D (struct carg *) 0x8144c0c0
> =A0 =A0 =A0 =A0 arg =3D (struct carg *) 0x0
> =A0 =A0 =A0 =A0 grmembers =3D 200
> =A0 =A0 =A0 =A0 fakegroup =3D {gr_name =3D 0x7fffffffdcb9 "test123",
> =A0 gr_passwd =3D 0x40fbc9 "*", gr_gid =3D 12345, gr_mem =3D 0x81485d00}
> #7 =A00x00000000004037fb in main (argc=3D3, argv=3D0x7fffffffd9f0) at pw.=
c:230
> =A0 =A0 =A0 =A0 which =3D 1
> =A0 =A0 =A0 =A0 config =3D 0x0
> =A0 =A0 =A0 =A0 cnf =3D (struct userconf *) 0x612bf0
> =A0 =A0 =A0 =A0 ch =3D -1
> =A0 =A0 =A0 =A0 mode =3D 0
> =A0 =A0 =A0 =A0 opts =3D {{0x40e150 "V:C:qn:u:c:d:e:p:g:G:mM:k:s:oL:i:w:h=
:H:Db:NPy:Y",
> =A0 =A0 0x40e180 "V:C:qn:u:rY",
> =A0 =A0 0x40e18c "V:C:qn:u:c:d:e:p:g:G:mM:l:k:s:w:L:h:H:FNPY",
> =A0 =A0 0x40e1b7 "V:C:qn:u:FPa7", 0x40e1c5 "V:C:q", 0x40e1c5 "V:C:q",
> =A0 =A0 0x40e1c5 "V:C:q"}, {0x40e1cb "V:C:qn:g:h:H:M:opNPY",
> =A0 =A0 0x40e1e0 "V:C:qn:g:Y", 0x40e1eb "V:C:qn:d:g:l:h:H:FM:m:NPY",
> =A0 =A0 0x40e205 "V:C:qn:g:FPa", 0x40e1c5 "V:C:q", 0x0, 0x0}}
> =A0 =A0 =A0 =A0 funcs =3D {0x405270 <pw_user>, 0x409b60 <pw_group>}
> (gdb)
>
> _______________________________________________
> freebsd-current@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-current
> To unsubscribe, send any mail to "freebsd-current-unsubscribe@freebsd.org"
_______________________________________________
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscribe@freebsd.org"
討論串 (同標題文章)
完整討論串 (本文為第 7 之 7 篇):