cURL
Haxx ad
libcurl

curl's project page on SourceForge.net

Sponsors:
Haxx

cURL > Mailing List > Monthly Index > Single Mail

curl-tracker mailing list Archives

[ curl-Bugs-1380401 ] Test 253 and 255 segfaults with curl-7.15.1

From: SourceForge.net <noreply_at_sourceforge.net>
Date: Wed, 14 Dec 2005 14:40:20 -0800

Bugs item #1380401, was opened at 2005-12-14 13:47
Message generated for change (Comment added) made by bagder
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=100976&aid=1380401&group_id=976

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: ftp
Group: crash
Status: Open
Resolution: None
Priority: 7
Submitted By: Nobody/Anonymous (nobody)
Assigned to: Daniel Stenberg (bagder)
Summary: Test 253 and 255 segfaults with curl-7.15.1

Initial Comment:
Since these 2 tests failed with the previous version of
Curl too (7.15.0) I 'll submit a bug report - Using the
search I could only find similar bugs from 2000-2003.

[...]
test 253...sh: line 1: 27821 Segmentation fault
../src/curl --output log/curl253.out --include -v
--trace-time -g "ftp://[::1]:8996/" -P -
>>log/stdout253 2>>log/stderr253
FAILED
test 254...OK (249 out of 301, remaining: 00:18)
test 255...sh: line 1: 27853 Segmentation fault
../src/curl --output log/curl255.out --include -v
--trace-time -g "ftp://[::1]:8996/" -P - --disable-eprt
>>log/stdout255 2>>log/stderr255
FAILED
[...]
TESTDONE: 284 tests out of 286 reported OK: 99%
TESTFAIL: These test cases failed: 253 255
TESTDONE: 301 tests were considered during 101 seconds.
TESTINFO: 15 tests were skipped due to these restraints:
TESTINFO: "no stunnel" 8 times (300, 301, 302, 303,
304, 305, 306, 509)
TESTINFO: "rlimit problems" 1 times (518)
TESTINFO: "curl lacks netrc_debug support" 6 times
(130, 131, 132, 133, 134, 257)

sushibox2
/var/tmp/portage/curl-7.15.1/work/curl-7.15.1/tests #
./runtests.pl -k 253
********* System characteristics ********
* curl 7.15.1 (i686-pc-linux-gnu)
* libcurl/7.15.1 OpenSSL/0.9.7i zlib/1.2.3 libidn/0.5.20
* Features: IDN IPv6 Largefile NTLM SSL libz
* Host: sushibox2
* System: Linux sushibox2 2.6.14-gentoo #1 PREEMPT Tue
Nov 8 23:53:46 CET 2005 i686 AMD Athlon(tm) XP 1800+
AuthenticAMD GNU/Linux
* Server SSL: OFF
* libcurl SSL: ON
* libcurl debug: OFF
* valgrind: OFF
* HTTP IPv6 ON
* FTP IPv6 ON
* HTTP port: 8990
* FTP port: 8992
* FTP port 2: 8995
* HTTP IPv6 port: 8994
* FTP IPv6 port: 8996
* TFTP port: 8997
* SSL library: OpenSSL
*****************************************
test 253...[FTP IPv6 dir list with EPRT]
sh: line 1: 29166 Segmentation fault ../src/curl
--output log/curl253.out --include -v --trace-time -g
"ftp://[::1]:8996/" -P - >>log/stdout253 2>>log/stderr253

 data FAILED:
--- log/check-expected 2005-12-14 13:41:24.000000000 +0100
+++ log/check-generated 2005-12-14 13:41:24.000000000 +0100
@@ -1,11 +0,0 @@
-total 20
-drwxr-xr-x 8 98 98 512 Oct 22 13:06 .
-drwxr-xr-x 8 98 98 512 Oct 22 13:06 ..
-drwxr-xr-x 2 98 98 512 May 2 1996
.NeXT
--r--r--r-- 1 0 1 35 Jul 16 1996
README
-lrwxrwxrwx 1 0 1 7 Dec 9 1999
bin -> usr/bin
-dr-xr-xr-x 2 0 1 512 Oct 1 1997 dev
-drwxrwxrwx 2 98 98 512 May 29 16:04
download.html
-dr-xr-xr-x 2 0 1 512 Nov 30 1995 etc
-drwxrwxrwx 2 98 1 512 Oct 30 14:33 pub
-dr-xr-xr-x 5 0 1 512 Oct 1 1997 usr

 - abort tests
TESTDONE: 0 tests out of 1 reported OK: 0%
TESTFAIL: These test cases failed: 253
TESTDONE: 1 tests were considered during 2 seconds.

sushibox2
/var/tmp/portage/curl-7.15.1/work/curl-7.15.1/tests/log
# cat stderr253
13:42:43.918669 * About to connect() to ::1 port 8996
13:42:43.919016 * Trying ::1... connected
13:42:43.919449 * Connected to ::1 (::1) port 8996
13:42:43.921109 < 220- _ _ ____ _
13:42:43.921223 < 220- ___| | | | _ \| |
13:42:43.921309 < 220- / __| | | | |_) | |
13:42:43.921394 < 220- | (__| |_| | _ <| |___
13:42:43.921479 < 220 \___|\___/|_| \_\_____|
13:42:43.921733 > USER anonymous
13:42:43.922877 < 331 We are happy you popped in!
13:42:43.923156 > PASS curl_by_daniel_at_haxx.se
13:42:43.923886 < 230 Welcome you silly person
13:42:43.924144 > PWD
13:42:43.924794 < 257 "/nowhere/anywhere" is current
directory
13:42:43.924908 * Entry path is '/nowhere/anywhere'
13:42:43.925422 > EPRT |2|::1|51732|
13:42:43.931221 < 200 Thanks for dropping by. We
contact you later
13:42:43.931354 * Connect data stream actively
13:42:43.931766 > TYPE A
13:42:43.932707 < 200 I modify TYPE as you wanted
13:42:43.932969 > LIST
13:42:43.933472 < 150 here comes a directory
13:42:43.933651 * Connection accepted from server

[NOTE: stdout253 is empty]

sushibox2
/var/tmp/portage/curl-7.15.1/work/curl-7.15.1/tests #
./runtests.pl -k 255
********* System characteristics ********
* curl 7.15.1 (i686-pc-linux-gnu)
* libcurl/7.15.1 OpenSSL/0.9.7i zlib/1.2.3 libidn/0.5.20
* Features: IDN IPv6 Largefile NTLM SSL libz
* Host: sushibox2
* System: Linux sushibox2 2.6.14-gentoo #1 PREEMPT Tue
Nov 8 23:53:46 CET 2005 i686 AMD Athlon(tm) XP 1800+
AuthenticAMD GNU/Linux
* Server SSL: OFF
* libcurl SSL: ON
* libcurl debug: OFF
* valgrind: OFF
* HTTP IPv6 ON
* FTP IPv6 ON
* HTTP port: 8990
* FTP port: 8992
* FTP port 2: 8995
* HTTP IPv6 port: 8994
* FTP IPv6 port: 8996
* TFTP port: 8997
* SSL library: OpenSSL
*****************************************
test 255...[FTP IPv6 dir list with EPRT and --disable-eprt]
sh: line 1: 29224 Segmentation fault ../src/curl
--output log/curl255.out --include -v --trace-time -g
"ftp://[::1]:8996/" -P - --disable-eprt >>log/stdout255
2>>log/stderr255

 data FAILED:
--- log/check-expected 2005-12-14 13:41:46.000000000 +0100
+++ log/check-generated 2005-12-14 13:41:46.000000000 +0100
@@ -1,11 +0,0 @@
-total 20
-drwxr-xr-x 8 98 98 512 Oct 22 13:06 .
-drwxr-xr-x 8 98 98 512 Oct 22 13:06 ..
-drwxr-xr-x 2 98 98 512 May 2 1996
.NeXT
--r--r--r-- 1 0 1 35 Jul 16 1996
README
-lrwxrwxrwx 1 0 1 7 Dec 9 1999
bin -> usr/bin
-dr-xr-xr-x 2 0 1 512 Oct 1 1997 dev
-drwxrwxrwx 2 98 98 512 May 29 16:04
download.html
-dr-xr-xr-x 2 0 1 512 Nov 30 1995 etc
-drwxrwxrwx 2 98 1 512 Oct 30 14:33 pub
-dr-xr-xr-x 5 0 1 512 Oct 1 1997 usr

 - abort tests
TESTDONE: 0 tests out of 1 reported OK: 0%
TESTFAIL: These test cases failed: 255
TESTDONE: 1 tests were considered during 2 seconds.

sushibox2
/var/tmp/portage/curl-7.15.1/work/curl-7.15.1/tests/log
# cat stderr255
13:43:35.013402 * About to connect() to ::1 port 8996
13:43:35.013748 * Trying ::1... connected
13:43:35.014181 * Connected to ::1 (::1) port 8996
13:43:35.015839 < 220- _ _ ____ _
13:43:35.015947 < 220- ___| | | | _ \| |
13:43:35.016116 < 220- / __| | | | |_) | |
13:43:35.016199 < 220- | (__| |_| | _ <| |___
13:43:35.016280 < 220 \___|\___/|_| \_\_____|
13:43:35.016554 > USER anonymous
13:43:35.017658 < 331 We are happy you popped in!
13:43:35.017982 > PASS curl_by_daniel_at_haxx.se
13:43:35.018732 < 230 Welcome you silly person
13:43:35.018989 > PWD
13:43:35.019675 < 257 "/nowhere/anywhere" is current
directory
13:43:35.019789 * Entry path is '/nowhere/anywhere'
13:43:35.020613 > EPRT |2|::1|51737|
13:43:35.027402 < 200 Thanks for dropping by. We
contact you later
13:43:35.027532 * Connect data stream actively
13:43:35.027843 > TYPE A
13:43:35.028744 < 200 I modify TYPE as you wanted
13:43:35.028989 > LIST
13:43:35.030070 < 150 here comes a directory
13:43:35.032198 * Connection accepted from server

[NOTE: stdout255 is empty]

If you need to contact me, you can mail me at
curl-sourceforge .AT. qtea.nl

----------------------------------------------------------------------

>Comment By: Daniel Stenberg (bagder)
Date: 2005-12-14 23:40

Message:
Logged In: YES
user_id=1110

Thanks, now we're getting closer.

What I really want to see is frame #0 and what the exact
reason for the segfault is in that function. The function
itself doesn't do much so I'm very puzzled.

It is weird that you didn't get any proper debug info for
that file. Can you do a make clean and rebuild and see if
you can get info for frame #0 too?

You might consider configure --disable-shared and
--enable-debug too to get an even smoother debuggable
version built.

Thanks for your help!

----------------------------------------------------------------------

Comment By: Nobody/Anonymous (nobody)
Date: 2005-12-14 23:28

Message:
Logged In: NO

Sure thing:

GLibC is version 2.3.5-r3 (Gentoo Use flags: -build -erandom
-glibc-compat20 -glibc-omitfp -hardened -linuxthreads-tls
(-multilib) -nls +nptl -nptlonly -pic -profile (-selinux)
-userlocales )

GDB is version 6.4 and was configured as "i686-pc-linux-gnu"

sushibox2 /var/tmp/portage/curl-7.15.1/work/curl-7.15.1 #
./configure --disable-ldap --with-libidn --disable-gssapi
--enable-ipv6 --enable-http --enable-ftp --enable-gopher
--enable-file --enable-dict --enable-manual --enable-telnet
--enable-nonblocking --enable-largefile --disable-ares
--disable-krb4 --without-gnutls --with-ssl=/usr --enable-static
[...]
  curl version: 7.15.1
  Host setup: i686-pc-linux-gnu
  Install prefix: /usr/local
  Compiler: gcc
  SSL support: enabled (OpenSSL)
  zlib support: enabled
  krb4 support: no (--with-krb4*)
  GSSAPI support: no (--with-gssapi)
  SPNEGO support: no (--with-spnego)
  c-ares support: no (--enable-ares)
  ipv6 support: enabled
  IDN support: enabled
  Build libcurl: Shared=yes, Static=yes
  Built-in manual: enabled
  Verbose errors: enabled (--disable-verbose)
  SSPI support: no (--enable-sspi)
  ca cert path: /usr/local/share/curl/curl-ca-bundle.crt

sushibox2
/var/tmp/portage/curl-7.15.1/work/curl-7.15.1/tests #
./runtests.pl -g 253
********* System characteristics ********
* curl 7.15.1 (i686-pc-linux-gnu)
* libcurl/7.15.1 OpenSSL/0.9.7i zlib/1.2.3 libidn/0.5.20
* Features: IDN IPv6 Largefile NTLM SSL libz
* Host: sushibox2
* System: Linux sushibox2 2.6.14-gentoo #1 PREEMPT Tue Nov 8
23:53:46 CET 2005 i686 AMD Athlon(tm) XP 1800+ AuthenticAMD
GNU/Linux
* Server SSL: OFF
* libcurl SSL: ON
* libcurl debug: OFF
* valgrind: OFF
* HTTP IPv6 ON
* FTP IPv6 ON
* HTTP port: 8990
* FTP port: 8992
* FTP port 2: 8995
* HTTP IPv6 port: 8994
* FTP IPv6 port: 8996
* TFTP port: 8997
* SSL library: OpenSSL
*****************************************
test 253...[FTP IPv6 dir list with EPRT]
GNU gdb 6.4
Copyright 2005 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 "i686-pc-linux-gnu"...Using host
libthread_db library "/lib/tls/libthread_db.so.1".

Argument list to give program being debugged when it is
started is "--output log/curl253.out --include -v
--trace-time -g "ftp://[::1]:8996/" -P -".
(gdb) run
Starting program:
/var/tmp/portage/curl-7.15.1/work/curl-7.15.1/src/curl
--output log/curl253.out --include -v --trace-time -g
"ftp://[::1]:8996/" -P -
23:15:12.899591 * About to connect() to ::1 port 8996
23:15:12.903810 * Trying ::1... connected
23:15:12.904085 * Connected to ::1 (::1) port 8996
23:15:12.909298 < 220- _ _ ____ _
23:15:12.909698 < 220- ___| | | | _ \| |
23:15:12.909989 < 220- / __| | | | |_) | |
23:15:12.910360 < 220- | (__| |_| | _ <| |___
23:15:12.910662 < 220 \___|\___/|_| \_\_____|
23:15:12.910746 > USER anonymous
23:15:12.911927 < 331 We are happy you popped in!
23:15:12.912021 > PASS curl_by_daniel_at_haxx.se
23:15:12.913531 < 230 Welcome you silly person
23:15:12.913626 > PWD
23:15:12.917080 < 257 "/nowhere/anywhere" is current directory
23:15:12.917172 * Entry path is '/nowhere/anywhere'
23:15:12.917467 > EPRT |2|::1|52982|
23:15:12.972894 < 200 Thanks for dropping by. We contact you
later
23:15:12.972980 * Connect data stream actively
23:15:12.973119 > TYPE A
23:15:12.979267 < 200 I modify TYPE as you wanted
23:15:12.979371 > LIST
23:15:12.980194 < 150 here comes a directory
23:15:12.980333 * Connection accepted from server

Program received signal SIGSEGV, Segmentation fault.
0xb7fb7c1c in Curl_Transfer_at_plt () from
/var/tmp/portage/curl-7.15.1/work/curl-7.15.1/lib/.libs/libcurl.so.3
(gdb) bt
#0 0xb7fb7c1c in Curl_Transfer_at_plt () from
/var/tmp/portage/curl-7.15.1/work/curl-7.15.1/lib/.libs/libcurl.so.3
#1 0xb7fc3af6 in ftp_statemach_act (conn=0x8072eb0) at
ftp.c:2150
#2 0xb7fc50cc in ftp_easy_statemach (conn=0x8072eb0) at
ftp.c:2705
#3 0xb7fc53e5 in Curl_ftp_nextconnect (conn=0x8072eb0) at
ftp.c:3129
#4 0xb7fc55a8 in ftp_dophase_done (conn=0x8072eb0,
connected=1 '\001') at ftp.c:3834
#5 0xb7fc67e4 in Curl_ftp (conn=<value optimized out>,
done=0xbfcf873b "\001°Eþ·\220'") at ftp.c:3912
#6 0xb7fcc0e3 in Curl_do (connp=0xbfcf8734, done=0xbfcf873b
"\001°Eþ·\220'") at url.c:3841
#7 0xb7fd59e8 in Curl_perform (data=0x806a758) at
transfer.c:2160
#8 0xb7fd60dc in curl_easy_perform (curl=0x806a758) at
easy.c:444
#9 0x0804ed40 in main (argc=10, argv=0xbfcf8cc4) at main.c:3974
(gdb) bt full
#0 0xb7fb7c1c in Curl_Transfer_at_plt () from
/var/tmp/portage/curl-7.15.1/work/curl-7.15.1/lib/.libs/libcurl.so.3
No symbol table info available.
#1 0xb7fc3af6 in ftp_statemach_act (conn=0x8072eb0) at
ftp.c:2150
        result = CURLE_OK
        sock = 6
        data = (struct SessionHandle *) 0x806a758
        ftpcode = <value optimized out>
        ftp = <value optimized out>
        ftpauth = {0xb7fdf307 "SSL", 0xb7fdf30b "TLS"}
        nread = 28
#2 0xb7fc50cc in ftp_easy_statemach (conn=0x8072eb0) at
ftp.c:2705
        timeout_ms = <value optimized out>
        sock = <value optimized out>
        rc = <value optimized out>
        data = (struct SessionHandle *) 0x806a758
        ftp = (struct FTP *) 0x8073560
        result = <value optimized out>
#3 0xb7fc53e5 in Curl_ftp_nextconnect (conn=0x8072eb0) at
ftp.c:3129
        data = (struct SessionHandle *) 0x806a758
        result = <value optimized out>
        ftp = (struct FTP *) 0x8073560
#4 0xb7fc55a8 in ftp_dophase_done (conn=0x8072eb0,
connected=1 '\001') at ftp.c:3834
        result = CURLE_OK
        ftp = (struct FTP *) 0x8073560
#5 0xb7fc67e4 in Curl_ftp (conn=<value optimized out>,
done=0xbfcf873b "\001°Eþ·\220'") at ftp.c:3912
        path = 0xbfcf8670 "\204&û·@½ÿ·\001"
        retcode = CURLE_OK
#6 0xb7fcc0e3 in Curl_do (connp=0xbfcf8734, done=0xbfcf873b
"\001°Eþ·\220'") at url.c:3841
        result = <value optimized out>
        conn = (struct connectdata *) 0x8072eb0
        data = (struct SessionHandle *) 0x806a758
#7 0xb7fd59e8 in Curl_perform (data=0x806a758) at
transfer.c:2160
        do_done = 1 '\001'
        res = CURLE_OK
        res2 = <value optimized out>
        conn = (struct connectdata *) 0x8072eb0
        newurl = 0x0
        retry = 0 '\0'
#8 0xb7fd60dc in curl_easy_perform (curl=0x806a758) at
easy.c:444
---Type <return> to continue, or q <return> to quit---
No locals.
#9 0x0804ed40 in main (argc=10, argv=0xbfcf8cc4) at main.c:3974
        pc = <value optimized out>
        sep = 8 '\b'
        outfile = <value optimized out>
        res = 0
        config = {remote_time = 0 '\0', random_file = 0x0, egd_file
= 0x0,
  useragent = 0xbfcf8ac4 "curl/7.15.1 (i686-pc-linux-gnu)
libcurl/7.15.1 OpenSSL/0.9.7i zlib/1.2.3 libidn/0.5.20",
cookie = 0x0, cookiejar = 0x0, cookiefile = 0x0,
  cookiesession = 0 '\0', encoding = 0 '\0', authtype = 0,
use_resume = 0 '\0', resume_from_current = 0 '\0',
disable_epsv = 0 '\0', disable_eprt = 0 '\0', resume_from = 0,
  postfields = 0x0, postfieldsize = -1, referer = 0x0,
timeout = 0, connecttimeout = 0, maxredirs = 50,
max_filesize = 0, headerfile = 0x0, ftpport = 0x806a748 "-",
  iface = 0x0, porttouse = 0, range = 0x0, low_speed_limit =
0, low_speed_time = 0, showerror = 1 '\001', userpwd = 0x0,
proxyuserpwd = 0x0, proxy = 0x0,
  proxytunnel = 0 '\0', conf = 256, url_list = 0x806a048,
url_last = 0x806a048, url_get = 0x806a048, url_out = 0x0,
cipher_list = 0x0, cert = 0x0, cert_type = 0x0,
  cacert = 0x0, capath = 0x0, key = 0x0, key_type = 0x0,
key_passwd = 0x0, engine = 0x0, list_engines = 0 '\0', crlf
= 0 '\0', customrequest = 0x0, krb4level = 0x0,
  trace_dump = 0x806a078 "%", trace_stream = 0xb7e1b480,
trace_fopened = 0 '\0', tracetype = TRACE_PLAIN, tracetime =
1 '\001', httpversion = 0, progressmode = 0 '\0',
  nobuffer = 0 '\0', globoff = 1 '\001', use_httpget = 0
'\0', insecure_ok = 0 '\0', create_dirs = 0 '\0',
ftp_create_dirs = 0 '\0', ftp_skip_ip = 0 '\0',
  proxyntlm = 0 '\0', proxydigest = 0 '\0', proxybasic = 0
'\0', proxyanyauth = 0 '\0', writeout = 0x0, writeenv = 0
'\0', errors = 0xb7e1b480, errors_fopened = 0 '\0',
  quote = 0x0, postquote = 0x0, prequote = 0x0, ssl_version
= 0, ip_version = 0, timecond = CURL_TIMECOND_NONE, condtime
= 0, headers = 0x0, httppost = 0x0,
  last_post = 0x0, telnet_options = 0x0, httpreq =
HTTPREQ_UNSPEC, sendpersecond = 0, recvpersecond = 0,
lastsendtime = {tv_sec = 1134598512, tv_usec = 899031},
  lastsendsize = 0, lastrecvtime = {tv_sec = 1134598512,
tv_usec = 899030}, lastrecvsize = 0, ftp_ssl = 0 '\0',
socks5proxy = 0x0, tcp_nodelay = 0 '\0', req_retry = 0,
  retry_delay = 0, retry_maxtime = 0, tp_url = 0x0, tp_user
= 0x0, tp_quote = 0x0, tp_postquote = 0x0, tp_prequote =
0x0, ftp_account = 0x0, ftp_filemethod = 0,
  ignorecl = 0 '\0'}
(gdb) thread apply all bt
[ NOTE: This command gave no output ]
(gdb) s
Single stepping until exit from function Curl_Transfer_at_plt,
which has no line number information.

Program terminated with signal SIGSEGV, Segmentation fault.
The program no longer exists.
(gdb)

sushibox2
/var/tmp/portage/curl-7.15.1/work/curl-7.15.1/tests #
./runtests.pl -g 255
********* System characteristics ********
* curl 7.15.1 (i686-pc-linux-gnu)
* libcurl/7.15.1 OpenSSL/0.9.7i zlib/1.2.3 libidn/0.5.20
* Features: IDN IPv6 Largefile NTLM SSL libz
* Host: sushibox2
* System: Linux sushibox2 2.6.14-gentoo #1 PREEMPT Tue Nov 8
23:53:46 CET 2005 i686 AMD Athlon(tm) XP 1800+ AuthenticAMD
GNU/Linux
* Server SSL: OFF
* libcurl SSL: ON
* libcurl debug: OFF
* valgrind: OFF
* HTTP IPv6 ON
* FTP IPv6 ON
* HTTP port: 8990
* FTP port: 8992
* FTP port 2: 8995
* HTTP IPv6 port: 8994
* FTP IPv6 port: 8996
* TFTP port: 8997
* SSL library: OpenSSL
*****************************************
test 255...[FTP IPv6 dir list with EPRT and --disable-eprt]
GNU gdb 6.4
Copyright 2005 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 "i686-pc-linux-gnu"...Using host
libthread_db library "/lib/tls/libthread_db.so.1".

Argument list to give program being debugged when it is
started is "--output log/curl255.out --include -v
--trace-time -g "ftp://[::1]:8996/" -P - --disable-eprt".
(gdb) run
Starting program:
/var/tmp/portage/curl-7.15.1/work/curl-7.15.1/src/curl
--output log/curl255.out --include -v --trace-time -g
"ftp://[::1]:8996/" -P - --disable-eprt
23:22:03.123418 * About to connect() to ::1 port 8996
23:22:03.125260 * Trying ::1... connected
23:22:03.125526 * Connected to ::1 (::1) port 8996
23:22:03.127125 < 220- _ _ ____ _
23:22:03.127522 < 220- ___| | | | _ \| |
23:22:03.127807 < 220- / __| | | | |_) | |
23:22:03.128089 < 220- | (__| |_| | _ <| |___
23:22:03.128428 < 220 \___|\___/|_| \_\_____|
23:22:03.128513 > USER anonymous
23:22:03.129668 < 331 We are happy you popped in!
23:22:03.129765 > PASS curl_by_daniel_at_haxx.se
23:22:03.131460 < 230 Welcome you silly person
23:22:03.131562 > PWD
23:22:03.132478 < 257 "/nowhere/anywhere" is current directory
23:22:03.132556 * Entry path is '/nowhere/anywhere'
23:22:03.132833 > EPRT |2|::1|52996|
23:22:03.133914 < 200 Thanks for dropping by. We contact you
later
23:22:03.133996 * Connect data stream actively
23:22:03.134059 > TYPE A
23:22:03.142482 < 200 I modify TYPE as you wanted
23:22:03.142587 > LIST
23:22:03.143793 < 150 here comes a directory
23:22:03.143949 * Connection accepted from server

Program received signal SIGSEGV, Segmentation fault.
0xb7f0bc1c in Curl_Transfer_at_plt () from
/var/tmp/portage/curl-7.15.1/work/curl-7.15.1/lib/.libs/libcurl.so.3
(gdb) bt
#0 0xb7f0bc1c in Curl_Transfer_at_plt () from
/var/tmp/portage/curl-7.15.1/work/curl-7.15.1/lib/.libs/libcurl.so.3
#1 0xb7f17af6 in ftp_statemach_act (conn=0x8072eb0) at
ftp.c:2150
#2 0xb7f190cc in ftp_easy_statemach (conn=0x8072eb0) at
ftp.c:2705
#3 0xb7f193e5 in Curl_ftp_nextconnect (conn=0x8072eb0) at
ftp.c:3129
#4 0xb7f195a8 in ftp_dophase_done (conn=0x8072eb0,
connected=1 '\001') at ftp.c:3834
#5 0xb7f1a7e4 in Curl_ftp (conn=<value optimized out>,
done=0xbfb4d07b "\001°\205ó·\220'") at ftp.c:3912
#6 0xb7f200e3 in Curl_do (connp=0xbfb4d074, done=0xbfb4d07b
"\001°\205ó·\220'") at url.c:3841
#7 0xb7f299e8 in Curl_perform (data=0x806a758) at
transfer.c:2160
#8 0xb7f2a0dc in curl_easy_perform (curl=0x806a758) at
easy.c:444
#9 0x0804ed40 in main (argc=11, argv=0xbfb4d604) at main.c:3974
(gdb) bt full
#0 0xb7f0bc1c in Curl_Transfer_at_plt () from
/var/tmp/portage/curl-7.15.1/work/curl-7.15.1/lib/.libs/libcurl.so.3
No symbol table info available.
#1 0xb7f17af6 in ftp_statemach_act (conn=0x8072eb0) at
ftp.c:2150
        result = CURLE_OK
        sock = 6
        data = (struct SessionHandle *) 0x806a758
        ftpcode = <value optimized out>
        ftp = <value optimized out>
        ftpauth = {0xb7f33307 "SSL", 0xb7f3330b "TLS"}
        nread = 28
#2 0xb7f190cc in ftp_easy_statemach (conn=0x8072eb0) at
ftp.c:2705
        timeout_ms = <value optimized out>
        sock = <value optimized out>
        rc = <value optimized out>
        data = (struct SessionHandle *) 0x806a758
        ftp = (struct FTP *) 0x8073560
        result = <value optimized out>
#3 0xb7f193e5 in Curl_ftp_nextconnect (conn=0x8072eb0) at
ftp.c:3129
        data = (struct SessionHandle *) 0x806a758
        result = <value optimized out>
        ftp = (struct FTP *) 0x8073560
#4 0xb7f195a8 in ftp_dophase_done (conn=0x8072eb0,
connected=1 '\001') at ftp.c:3834
        result = CURLE_OK
        ftp = (struct FTP *) 0x8073560
#5 0xb7f1a7e4 in Curl_ftp (conn=<value optimized out>,
done=0xbfb4d07b "\001°\205ó·\220'") at ftp.c:3912
        path = 0xbfb4cfb0 "\204fð·@ýô·\001"
        retcode = CURLE_OK
#6 0xb7f200e3 in Curl_do (connp=0xbfb4d074, done=0xbfb4d07b
"\001°\205ó·\220'") at url.c:3841
        result = <value optimized out>
        conn = (struct connectdata *) 0x8072eb0
        data = (struct SessionHandle *) 0x806a758
#7 0xb7f299e8 in Curl_perform (data=0x806a758) at
transfer.c:2160
        do_done = 1 '\001'
        res = CURLE_OK
        res2 = <value optimized out>
        conn = (struct connectdata *) 0x8072eb0
        newurl = 0x0
        retry = 0 '\0'
#8 0xb7f2a0dc in curl_easy_perform (curl=0x806a758) at
easy.c:444
No locals.
#9 0x0804ed40 in main (argc=11, argv=0xbfb4d604) at main.c:3974
        pc = <value optimized out>
        sep = 8 '\b'
        outfile = <value optimized out>
        res = 0
        config = {remote_time = 0 '\0', random_file = 0x0, egd_file
= 0x0,
  useragent = 0xbfb4d404 "curl/7.15.1 (i686-pc-linux-gnu)
libcurl/7.15.1 OpenSSL/0.9.7i zlib/1.2.3 libidn/0.5.20",
cookie = 0x0, cookiejar = 0x0, cookiefile = 0x0,
  cookiesession = 0 '\0', encoding = 0 '\0', authtype = 0,
use_resume = 0 '\0', resume_from_current = 0 '\0',
disable_epsv = 0 '\0', disable_eprt = 1 '\001', resume_from
= 0,
  postfields = 0x0, postfieldsize = -1, referer = 0x0,
timeout = 0, connecttimeout = 0, maxredirs = 50,
max_filesize = 0, headerfile = 0x0, ftpport = 0x806a748 "-",
iface = 0x0,
  porttouse = 0, range = 0x0, low_speed_limit = 0,
low_speed_time = 0, showerror = 1 '\001', userpwd = 0x0,
proxyuserpwd = 0x0, proxy = 0x0, proxytunnel = 0 '\0', conf
= 256,
  url_list = 0x806a048, url_last = 0x806a048, url_get =
0x806a048, url_out = 0x0, cipher_list = 0x0, cert = 0x0,
cert_type = 0x0, cacert = 0x0, capath = 0x0, key = 0x0,
  key_type = 0x0, key_passwd = 0x0, engine = 0x0,
list_engines = 0 '\0', crlf = 0 '\0', customrequest = 0x0,
krb4level = 0x0, trace_dump = 0x806a078 "%", trace_stream =
0xb7d6f480,
  trace_fopened = 0 '\0', tracetype = TRACE_PLAIN, tracetime
= 1 '\001', httpversion = 0, progressmode = 0 '\0', nobuffer
= 0 '\0', globoff = 1 '\001', use_httpget = 0 '\0',
  insecure_ok = 0 '\0', create_dirs = 0 '\0',
ftp_create_dirs = 0 '\0', ftp_skip_ip = 0 '\0', proxyntlm =
0 '\0', proxydigest = 0 '\0', proxybasic = 0 '\0',
proxyanyauth = 0 '\0',
  writeout = 0x0, writeenv = 0 '\0', errors = 0xb7d6f480,
errors_fopened = 0 '\0', quote = 0x0, postquote = 0x0,
prequote = 0x0, ssl_version = 0, ip_version = 0,
  timecond = CURL_TIMECOND_NONE, condtime = 0, headers =
0x0, httppost = 0x0, last_post = 0x0, telnet_options = 0x0,
httpreq = HTTPREQ_UNSPEC, sendpersecond = 0, recvpersecond = 0,
  lastsendtime = {tv_sec = 1134598923, tv_usec = 122852},
lastsendsize = 0, lastrecvtime = {tv_sec = 1134598923,
tv_usec = 122851}, lastrecvsize = 0, ftp_ssl = 0 '\0',
  socks5proxy = 0x0, tcp_nodelay = 0 '\0', req_retry = 0,
retry_delay = 0, retry_maxtime = 0, tp_url = 0x0, tp_user =
0x0, tp_quote = 0x0, tp_postquote = 0x0, tp_prequote = 0x0,
  ftp_account = 0x0, ftp_filemethod = 0, ignorecl = 0 '\0'}
(gdb) thread apply all bt
[ NOTE: Again, this gave no output ]
(gdb) s
Single stepping until exit from function Curl_Transfer_at_plt,
which has no line number information.

Program terminated with signal SIGSEGV, Segmentation fault.
The program no longer exists.
(gdb)

I haven't played around with gdb a lot so if I did something
wrong let me know.

Again, feel free to contact me at
curl-sourceforge .AT. qtea.nl

----------------------------------------------------------------------

Comment By: Daniel Stenberg (bagder)
Date: 2005-12-14 21:06

Message:
Logged In: YES
user_id=1110

(I mailed you the following as well since you submitted this
report anonymously)

Can you rebuild curl staticly and run the single tests with
-g [num]? Like:

 $ cd tests
 $ ./runtests.pl -g 253

... as then it'll fire up gdb for you, and when you enter
'run' it'll hopefully
catch the segfault nice and clean and you can show us a
stack trace and
hopefully contents of some local variables in a suitable
place in the trace.

What glibc version are you using?

----------------------------------------------------------------------

You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=100976&aid=1380401&group_id=976
Received on 2005-12-14

These mail archives are generated by hypermail.

donate! Page updated November 12, 2010.
web site info

File upload with ASP.NET