[issue1891] sftp utility crashes

vasily postnicov (via DragonFly issue tracker) sinknull at leaf.dragonflybsd.org
Sun Nov 7 07:28:34 PST 2010


vasily postnicov <shamaz.mazum at gmail.com> added the comment:

I've recompiled sftp with -g and without -O options and attached the file. (I
have x86_64 system with DragonFlyBSD 2.8)

Here is some output from gdb:

(gdb) run shamazmazum,tprpg at frs.sourceforge.net
Starting program: /home/vasily/debug/sftp shamazmazum,tprpg at frs.sourceforge.net
shamazmazum,tprpg at frs.sourceforge.net's password: 
Connected to frs.sourceforge.net.
sftp> get htdocs

Program received signal SIGILL, Illegal instruction.
0x0000000800570800 in ?? ()
(gdb) bt
#0  0x0000000800570800 in ?? ()
#1  0x0000000800bbf2ce in ?? () from /usr/lib/libc.so.7
#2  0x0000000800bbfafb in ?? () from /usr/lib/libc.so.7
#3  0x0000000800bc0039 in glob () from /usr/lib/libc.so.7
#4  0x000000000040cd8d in remote_glob (conn=0x8005700c0, 
    pattern=0x800570800 "/home/groups/t/tp/tprpg/htdocs", flags=8, errfunc=0, 
    pglob=0x7fffffffe640) at sftp-glob.c:155
#5  0x0000000000403f2f in process_get (conn=0x8005700c0, 
    src=0x8005500c8 "htdocs", dst=0x0, 
    pwd=0x8005600b8 "/home/groups/t/tp/tprpg", pflag=0, rflag=0) at sftp.c:508
#6  0x000000000040622a in parse_dispatch_command (conn=0x8005700c0, 
    cmd=0x7fffffffec50 "get htdocs", pwd=0x7ffffffff458, err_abort=0)
    at sftp.c:1307
#7  0x0000000000407fad in interactive_loop (conn=0x8005700c0, file1=0x0, 
    file2=0x0) at sftp.c:1975
#8  0x0000000000408983 in main (argc=2, argv=0x7ffffffff5b8) at sftp.c:2249
(gdb) frame 4
#4  0x000000000040cd8d in remote_glob (conn=0x8005700c0, 
    pattern=0x800570800 "/home/groups/t/tp/tprpg/htdocs", flags=8, errfunc=0, 
    pglob=0x7fffffffe640) at sftp-glob.c:155
155             return(glob(pattern, flags | GLOB_ALTDIRFUNC, errfunc, pglob));
(gdb) print pattern
$1 = 0x800570800 "/home/groups/t/tp/tprpg/htdocs"
(gdb) frame 5
#5  0x0000000000403f2f in process_get (conn=0x8005700c0, 
    src=0x8005500c8 "htdocs", dst=0x0, 
    pwd=0x8005600b8 "/home/groups/t/tp/tprpg", pflag=0, rflag=0) at sftp.c:508
508             if (remote_glob(conn, abs_src, GLOB_MARK, NULL, &g)) {
(gdb) cont
Continuing.

Program terminated with signal SIGILL, Illegal instruction.
The program no longer exists.
(gdb) q
> exit

Process terminal finished

Glob without GLOB_ALTDIRFUNC works fine. Maybe there is something in pglob->gl_*
functions.

_____________________________________________________
DragonFly issue tracker <bugs at lists.dragonflybsd.org>
<http://bugs.dragonflybsd.org/issue1891>
_____________________________________________________






More information about the Bugs mailing list