On Mar 8, 2013 9:44 PM, "KT Sin" <ktsin_at_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=245390&r2=247919 I think the correct fix is committed with: http://svnweb.freebsd.org/changeset/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 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 "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 0x0000000080d84a4f in stpcpy () from /lib/libc.so.7 > No symbol table info available. > #1 0x0000000080a5c00a in grcopy (gr=0x612ce0, newgr=0x81409100, name=0x0, > ndx=0) at /usr/src/lib/libutil/gr_util.c:496 > dst = 0x8 <Error reading address 0x8: Bad address> > i = 1090277153 > #2 0x0000000080a5bdc6 in gr_add (gr=0x612ce0, newmember=0x0) > at /usr/src/lib/libutil/gr_util.c:451 > newgr = (struct group *) 0x81409100 > len = 0 > num_mem = 0 > #3 0x0000000080a5bd4f in gr_dup (gr=0x612ce0) > at /usr/src/lib/libutil/gr_util.c:434 > No locals. > #4 0x000000000040bad7 in gr_update (grp=0x612ce0, group=0x0) at grupd.c:78 > pfd = 0 > tfd = 4244492 > gr = (struct group *) 0x0 > old_gr = (struct group *) 0x0 > #5 0x000000000040ba8f in addgrent (grp=0x612ce0) at grupd.c:111 > No locals. > #6 0x000000000040a83d in pw_group (cnf=0x612bf0, mode=0, args=0x613e78) > at pw_group.c:258 > ---Type <return> to continue, or q <return> to quit--- > grp = (struct group *) 0x612ce0 > members = (char **) 0x81485d00 > rc = 0 > a_name = (struct carg *) 0x8144c0a0 > a_gid = (struct carg *) 0x8144c0c0 > arg = (struct carg *) 0x0 > grmembers = 200 > fakegroup = {gr_name = 0x7fffffffdcb9 "test123", > gr_passwd = 0x40fbc9 "*", gr_gid = 12345, gr_mem = 0x81485d00} > #7 0x00000000004037fb in main (argc=3, argv=0x7fffffffd9f0) at pw.c:230 > which = 1 > config = 0x0 > cnf = (struct userconf *) 0x612bf0 > ch = -1 > mode = 0 > opts = {{0x40e150 "V:C:qn:u:c:d:e:p:g:G:mM:k:s:oL:i:w:h:H:Db:NPy:Y", > 0x40e180 "V:C:qn:u:rY", > 0x40e18c "V:C:qn:u:c:d:e:p:g:G:mM:l:k:s:w:L:h:H:FNPY", > 0x40e1b7 "V:C:qn:u:FPa7", 0x40e1c5 "V:C:q", 0x40e1c5 "V:C:q", > 0x40e1c5 "V:C:q"}, {0x40e1cb "V:C:qn:g:h:H:M:opNPY", > 0x40e1e0 "V:C:qn:g:Y", 0x40e1eb "V:C:qn:d:g:l:h:H:FM:m:NPY", > 0x40e205 "V:C:qn:g:FPa", 0x40e1c5 "V:C:q", 0x0, 0x0}} > funcs = {0x405270 <pw_user>, 0x409b60 <pw_group>} > (gdb) > > _______________________________________________ > freebsd-current_at_freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-current > To unsubscribe, send any mail to "freebsd-current-unsubscribe_at_freebsd.org"Received on Sat Mar 09 2013 - 13:34:25 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:35 UTC