<?xml version="1.0" encoding="UTF-8"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://purl.org/rss/1.0/" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:syn="http://purl.org/rss/1.0/modules/syndication/" xmlns:admin="http://webns.net/mvcb/">
  <channel about="http://blog.gmane.org/gmane.comp.web.curl.library">
    <title>gmane.comp.web.curl.library</title>
    <link>http://blog.gmane.org/gmane.comp.web.curl.library</link>
    <description/>
    <syn:updatePeriod>hourly</syn:updatePeriod>
    <syn:updateFrequency>1</syn:updateFrequency>
    <syn:updateBase>1901-01-01T00:00+00:00</syn:updateBase>
    <items>
      <rdf:Seq>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.web.curl.library/21563"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.web.curl.library/21562"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.web.curl.library/21561"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.web.curl.library/21560"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.web.curl.library/21559"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.web.curl.library/21558"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.web.curl.library/21557"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.web.curl.library/21556"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.web.curl.library/21555"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.web.curl.library/21554"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.web.curl.library/21553"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.web.curl.library/21552"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.web.curl.library/21551"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.web.curl.library/21550"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.web.curl.library/21549"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.web.curl.library/21548"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.web.curl.library/21547"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.web.curl.library/21546"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.web.curl.library/21545"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.web.curl.library/21544"/>
      </rdf:Seq>
    </items>
    <image rdf:resource="http://gmane.org/img/gmane-25t.png"/>
    <textinput rdf:resource=""/>
  </channel>
  <image rdf:about="http://gmane.org/img/gmane-25t.png">
    <title>Gmane</title>
    <url>http://gmane.org/img/gmane-25t.png</url>
    <link>http://gmane.org</link>
  </image>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.web.curl.library/21563">
    <title>Modify the HTTP Response?</title>
    <link>http://permalink.gmane.org/gmane.comp.web.curl.library/21563</link>
    <description>I am embedding a webpages into my PHP application like this:

&lt;?php
$remote = fopen("http://.../DailyComics.cgi", "r");
fpassthru($remote);
?&gt;

Do I need to change the DailyComics.cgi HTTP Response from the following to 
something else:

HTTP/1.1 200 OK
Connection: close
Date: Mon, 01 Dec 2008 21:41:44 GMT
Server: Microsoft-IIS/6.0
Content-Type: text/html
Connection: Keep-Alive
Content-Length: 1040

Please note that DailyComics.cgi does not include the &lt;html&gt;, &lt;header&gt;, &lt;body&gt; 
tags since the cgi output is embedded into the PHP page and the PHP page adds 
the tags where necessary.

This seems to work fine, but I'd like to know if I need to modify the cgi's 
HTTP Response.

Thank you very much

Jeff


</description>
    <dc:creator>Jeff Dunlap</dc:creator>
    <dc:date>2008-12-02T00:28:24</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.web.curl.library/21562">
    <title>Re: ignore the output to console...</title>
    <link>http://permalink.gmane.org/gmane.comp.web.curl.library/21562</link>
    <description>

http://curl.haxx.se/docs/faq.html#How_do_I_prevent_libcurl_from_wr


You either ask for CURLOPT_NOBODY (which equals a HEAD request) or you abort 
your transfer, perhaps in the write callback.

</description>
    <dc:creator>Daniel Stenberg</dc:creator>
    <dc:date>2008-12-01T23:08:39</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.web.curl.library/21561">
    <title>ignore the output to console...</title>
    <link>http://permalink.gmane.org/gmane.comp.web.curl.library/21561</link>
    <description>hi,
two questions :
1) how to disable the output to the console? for e.g : when I use setopt to
get the http status , it downloads the file from the link first , followed
by the html code (=if the link is html based , which is printed to the
console , how to disable it?) and  just then report about the status..
 2) how to evade the downloading of pages? , I mean , I just want to get the
status , not to download a whole pdf..
     this is really annoying since , if I want to check , whether a link to
a 70MB pdf is still valid , then it first download it , this is not the kind
of behavior is want... any way to disable this?

10x
</description>
    <dc:creator>Natty</dc:creator>
    <dc:date>2008-12-01T23:00:21</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.web.curl.library/21560">
    <title>Re: implicit SSL with FileZilla server Unknown SSL protocol error1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number</title>
    <link>http://permalink.gmane.org/gmane.comp.web.curl.library/21560</link>
    <description> &gt; On Fri, 28 Nov 2008, Ken Hirsch wrote:

 &gt;&gt; Should I send a patch with this change?
 &gt;
 &gt; Yes thanks, please do!


--- curl-7.19.2/lib/ftp.c    2008-11-06 13:30:18.000000000 -0800
+++ curl-7.19.2-changed/lib/ftp.c    2008-12-01 09:31:36.909418000 -0800
&lt; at &gt;&lt; at &gt; -150,9 +150,6 &lt; at &gt;&lt; at &gt;
 static CURLcode ftp_doing(struct connectdata *conn,
                                bool *dophase_done);
 static CURLcode ftp_setup_connection(struct connectdata * conn);
-#ifdef USE_SSL
-static CURLcode ftps_setup_connection(struct connectdata * conn);
-#endif
 
 /* easy-to-use macro: */
 #define FTPSENDF(x,y,z)    if((result = Curl_ftpsendf(x,y,z)) != 
CURLE_OK) \
&lt; at &gt;&lt; at &gt; -189,7 +186,7 &lt; at &gt;&lt; at &gt;
 
 const struct Curl_handler Curl_handler_ftps = {
   "FTPS",                               /* scheme */
-  ftps_setup_connection,           /* setup_connection */
+  ftp_setup_connection,            /* setup_connection */
   ftp_do,                          /* do_it */
   ftp_done,                        /* done */
   ftp_nextconnect,                 /* do_more */
&lt; at &gt;&lt; at &gt; -2687,24 +2684,9 &lt; at &gt;&lt; at &gt;
       break;
 
     case FTP_PBSZ:
-      /* FIX: check response code */
-
-      /* For TLS, the data connection can have one of two security levels.
-
-      1) Clear (requested by 'PROT C')
-
-      2)Private (requested by 'PROT P')
-      */
-      if(!conn-&gt;ssl[SECONDARYSOCKET].use) {
-        NBFTPSENDF(conn, "PROT %c",
-                   data-&gt;set.ftp_ssl == CURLUSESSL_CONTROL ? 'C' : 'P');
-        state(conn, FTP_PROT);
-      }
-      else {
-        result = ftp_state_pwd(conn);
-        if(result)
-          return result;
-      }
+      NBFTPSENDF(conn, "PROT %c",
+                 data-&gt;set.ftp_ssl == CURLUSESSL_CONTROL ? 'C' : 'P');
+      state(conn, FTP_PROT);
 
       break;
 
&lt; at &gt;&lt; at &gt; -4184,14 +4166,4 &lt; at &gt;&lt; at &gt;
   return CURLE_OK;
 }
 
-#ifdef USE_SSL
-static CURLcode ftps_setup_connection(struct connectdata * conn)
-{
-  struct SessionHandle *data = conn-&gt;data;
-
-  conn-&gt;ssl[SECONDARYSOCKET].use = data-&gt;set.ftp_ssl != CURLUSESSL_CONTROL;
-  return ftp_setup_connection(conn);
-}
-#endif
-
 #endif /* CURL_DISABLE_FTP */


</description>
    <dc:creator>Ken Hirsch</dc:creator>
    <dc:date>2008-12-01T18:53:09</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.web.curl.library/21559">
    <title>Re: Curl and NSS</title>
    <link>http://permalink.gmane.org/gmane.comp.web.curl.library/21559</link>
    <description>On Sun, 30 Nov 2008 10:41:27 +0100 (CET)
Daniel Stenberg &lt;daniel&lt; at &gt;haxx.se&gt; wrote:


It does all those things, so I am not sure why it is not evaluated to true.

george&lt; at &gt;sourcemage:~$ pkg-config --version
0.23

I moved the true code to the else and everything worked and curl built
fine using nss for SSL. 


I have GnuTLS working fine now.


After getting curl to build using --with-nss, of course I ran into the
issues that you are described above.  If I want to get this working
guess I will need to take a look at the Fedora patch.

Thanks,
      George

</description>
    <dc:creator>George Sherwood</dc:creator>
    <dc:date>2008-11-30T14:05:01</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.web.curl.library/21558">
    <title>Re: Curl and NSS</title>
    <link>http://permalink.gmane.org/gmane.comp.web.curl.library/21558</link>
    <description>

But how can that fail if pkg-config is in your path? pkg-config --version 
should output a version number to stdout and thus test -n should evaluate true 
there. Doesn't it?


GnuTLS should work pretty much exactly the same as OpenSSL when it comes to 
the ca cert bundle and how that's used. NSS however is different: NSS doesn't 
support reading and using a CA cert bundle in the PEM format as both OpenSSL 
and GnuTLS do. The Fedora patch I mentioned before brings this ability to NSS.

Unfortunately, there hasn't exactly been a race in the NSS team to get this 
merged into the main code.

This has the side-effect that libcurl built with NSS needs a NSS-style 
(sqlite?) database present with the ca cert bundle. I dont know how to convert 
a PEM ca cert bundle into such a database.

Unless you use NSS with the Fedora-patch.

</description>
    <dc:creator>Daniel Stenberg</dc:creator>
    <dc:date>2008-11-30T09:41:27</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.web.curl.library/21557">
    <title>Re: Curl and NSS</title>
    <link>http://permalink.gmane.org/gmane.comp.web.curl.library/21557</link>
    <description>On Sat, 29 Nov 2008 22:13:17 +0100 (CET)
Daniel Stenberg &lt;daniel&lt; at &gt;haxx.se&gt; wrote:


Got it.  I need to modify our build so that the user will only use one
of these three.  Unfortunately currently the configure is failing to
find pkg-config, I believe so it is executing the else portion kludge
defaults and failing.  If I remove the if test -n "$check"; then
everything work fine.

  if test X"$OPT_NSS" != Xno; then
    if test "x$OPT_NSS" = "xyes"; then
     check=`pkg-config --version 2&gt;/dev/null`
     if test -n "$check"; then
       addlib=`pkg-config --libs nss`
       addcflags=`pkg-config --cflags nss`
       version=`pkg-config --modversion nss`
       nssprefix=`pkg-config --variable=prefix nss`
     fi
    else
      # Without pkg-config, we'll kludge in some defaults
      addlib="-lssl3 -lsmime3 -lnss3 -lplds4 -lplc4 -lnspr4 -lpthread
  -ldl" addcflags="-I$OPT_NSS/include"
      version="unknown"
      gtlsprefix=$OPT_GNUTLS
    fi


Related in that I only have the midori browser working on https sites
using curl built against openssl.  I believe it should work with curl
built against either GnuTLS or NSS. Webkit uses curl as its http
backend.


I seem to have this working at least with OpenSSL.

George

</description>
    <dc:creator>George Sherwood</dc:creator>
    <dc:date>2008-11-29T22:58:48</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.web.curl.library/21556">
    <title>Re: Curl and NSS</title>
    <link>http://permalink.gmane.org/gmane.comp.web.curl.library/21556</link>
    <description>

As far as I understand it, and I can't say I've actually tried to understand 
all the aspects of this, NSS has a FIPS certification in a way none of the 
other SSL libs do, and some US governments or something requires software to 
be FIPS certificied to be considered. See this:

 http://fedoraproject.org/wiki/FedoraCryptoConsolidation


NSS is a SSL library libcurl can use instead of OpenSSL or GnuTLS. libcurl can 
only be built to use one of these in a single build

libssh2 is a separate thing since it provides SSH. Although libssh2 in itself 
can be built to use either OpenSSL or libgcrypt for the crypto layer.


How is this related to the NSS question?

(lib)curl no longer provides a ca cert bundle of its own so if you want your 
libcurl installation to have a default ca cert bundle you need to make sure 
configure finds a suitable one.

I don't know what "midori/webkit" is so I can't comment on its specific 
situation.

</description>
    <dc:creator>Daniel Stenberg</dc:creator>
    <dc:date>2008-11-29T21:13:17</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.web.curl.library/21555">
    <title>Curl and NSS</title>
    <link>http://permalink.gmane.org/gmane.comp.web.curl.library/21555</link>
    <description>On Sat, 29 Nov 2008 20:15:09 +0100 (CET)
Daniel Stenberg &lt;daniel&lt; at &gt;haxx.se&gt; wrote:


I have been maintaining curl and nss for our distro and I was wondering
if there is any advantage to building curl against NSS.  Currently we
don't even have that as an option.

Also is it proper to build curl against gnutls and openssl and libssh2
or should it only be one of these three or nss?

I finally got midori/webkit working with https site by adding
ca-certificates and building curl against openssl with the options:

--with-ssl=/usr --without-ca-bundle --with-ca-path=/etc/ssl/certs

I was just wondering if I am doing things correctly.

Thanks,
       George
</description>
    <dc:creator>George Sherwood</dc:creator>
    <dc:date>2008-11-29T20:37:59</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.web.curl.library/21554">
    <title>Re: Bug or not Bug</title>
    <link>http://permalink.gmane.org/gmane.comp.web.curl.library/21554</link>
    <description>

Your mail was severly broken in the text section but I think I managed to 
decrypt it anyway.

You won't like my answer:

First, the crash is quite clearly within NSS so unless libcurl is not using 
NSS correctly I would say NSS is to blame. Fedora is one of the few distros 
that ship curl and libcurl built with NSS.

But then, and here it gets more tricky, Fedora has its own set of custom 
patches to NSS that I've not even tried myself (because I don't know how to 
find them). Chances are the reason for this problem is caused by them, so 
"just" blaming NSS won't necessarily be fine here either. If I'm not 
mistaking, even their libcurl version is a patched version and not a "clean" 
release version from us.

So unfortunately I think your best bet is to report this problem to the Fedora 
bug tracker.

If you can repeat the problem with a libcurl downloaded from curl.haxx.se and 
an NSS library downloaded from mozilla.org I'll be interested to do some 
research!

</description>
    <dc:creator>Daniel Stenberg</dc:creator>
    <dc:date>2008-11-29T19:15:09</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.web.curl.library/21553">
    <title>Bug or not Bug</title>
    <link>http://permalink.gmane.org/gmane.comp.web.curl.library/21553</link>
    <description>
Fedore Core 8curl and libcurl 7.18.2-6.fc8  + relative devel pack          ( RPM pack downloaded with yum )curl -V = curl 7.18.2 (i386-redhat-linux-gnu) libcurl/7.18.2 NSS/3.12.0.3 zlib/1.2.3 libidn/0.6.14 libssh2/0.18Protocols: tftp ftp telnet dict http file https ftps scp sftpFeatures: GSS-Negotiate IDN IPv6 Largefile SSL libzThis code don' t do anything but generate a SIGABRT after 8 - 12 hours#include &lt;iostream&gt;#include &lt;curl/curl.h&gt;#include &lt;gtk/gtk.h&gt;size_t NoProcess(void *buffer, size_t size, size_t nmemb, void *userp){ return size * nmemb;}gpointer Test(gpointer data){ CURL * Fin; Fin = curl_easy_init();//if (curl_easy_setopt(Fin, CURLOPT_NOSIGNAL, 1) != CURLE_OK)return NULL; while (1) { if (curl_easy_setopt(Fin, CURLOPT_WRITEDATA, NULL) != CURLE_OK)return NULL; if (curl_easy_setopt(Fin, CURLOPT_WRITEFUNCTION, NoProcess) != CURLE_OK)return NULL; if (curl_easy_setopt(Fin, CURLOPT_URL, "https://www.fineco.it/fineco/jsp/login/content.jsp") != CURLE_OK)return NULL; if (curl_easy_perform(Fin) != CURLE_OK)return NULL; sleep(1); } return NULL;}int main(){ curl_global_init(CURL_GLOBAL_ALL); g_thread_init(NULL); g_thread_create(Test,NULL,false,NULL); while (1)  { sleep(1); } curl_global_cleanup(); return 0;}  modifing the while intoif (curl_easy_setopt(Fin, CURLOPT_WRITEDATA, NULL) != CURLE_OK)return NULL;if (curl_easy_setopt(Fin, CURLOPT_WRITEFUNCTION, NoProcess) != CURLE_OK)return NULL;if (curl_easy_setopt(Fin, CURLOPT_URL, "https://www.fineco.it/fineco/jsp/login/content.jsp") != CURLE_OK)return NULL;while (1){ if (curl_easy_perform(Fin) != CURLE_OK)return NULL; sleep(1);}don' t crash ( stopped after a lot of hour approx 18 )i know that is unusefull to set up into the while, but this mean that after a tot call to curl_easy_set_opt curl generate a SIGABRTCurl generate a SIGABRT also if after a tot cicle cleanup CURL * Fin handle and create another onethis is the backtrace*** glibc detected *** /home/I-BIRD/Desktop/TraderFin/src/IBTrader: double free or corruption (!prev): 0x0bc3dc20 ***======= Backtrace: =========/lib/libc.so.6[0xa88ac1]/lib/libc.so.6(cfree+0x90)[0xa8c0f0]/usr/lib/libnspr4.so(PR_Free+0x38)[0x7e4468]/usr/lib/libnsspem.so[0x9a8bef]/usr/lib/libnsspem.so[0x998268]/usr/lib/libnsspem.so[0x99904e]/usr/lib/libnsspem.so[0x99d825]/usr/lib/libnsspem.so[0x9a4d39]/usr/lib/libnsspem.so[0x9944ac]/usr/lib/libnss3.so[0x771ca12]/usr/lib/libnss3.so(PK11_CreateGenericObject+0x50)[0x771cc30]/usr/lib/libcurl.so.4[0x866848]/usr/lib/libcurl.so.4(Curl_nss_connect+0x6aa)[0x8675aa]/usr/lib/libcurl.so.4(Curl_ssl_connect+0x3c)[0x85ee0c]/usr/lib/libcurl.so.4(Curl_http_connect+0xa7)[0x83e257]/usr/lib/libcurl.so.4(Curl_protocol_connect+0x7b)[0x846f0b]/usr/lib/libcurl.so.4(Curl_connect+0x2da)[0x849eba]/usr/lib/libcurl.so.4(Curl_perform+0x8a)[0x8539ea]/usr/lib/libcurl.so.4(curl_easy_perform+0x5d)[0x8543cd]/home/I-BIRD/Desktop/TraderFin/src/IBTrader[0x80556ea]/home/I-BIRD/Desktop/TraderFin/src/IBTrader[0x80560ab]/lib/libglib-2.0.so.0[0x557bff]/lib/libpthread.so.0[0xbb150b]/lib/libc.so.6(clone+0x5e)[0xaf2b2e]======= Memory map: ========00110000-00111000 r-xp 00110000 00:00 0          [vdso]00111000-0016e000 r-xp 00000000 08:05 53285494   /usr/local/lib/libcairo.so.2.9.30016e000-00170000 rw-p 0005c000 08:05 53285494   /usr/local/lib/libcairo.so.2.9.300170000-00193000 r-xp 00000000 08:05 53284842   /usr/lib/libexpat.so.0.5.000193000-0019a000 rw-p 00022000 08:05 53284842   /usr/lib/libexpat.so.0.5.00019a000-001a2000 r-xp 00000000 08:05 53285700   /usr/lib/libpcsclite.so.1.0.0001a2000-001a3000 rw-p 00008000 08:05 53285700   /usr/lib/libpcsclite.so.1.0.0001b2000-001f0000 r-xp 00000000 08:05 53285138   /usr/lib/libpango-1.0.so.0.1800.4001f0000-001f2000 rw-p 0003e000 08:05 53285138   /usr/lib/libpango-1.0.so.0.1800.4001f2000-0027a000 r-xp 00000000 08:05 53284326   /usr/lib/libfreetype.so.6.3.160027a000-0027e000 rw-p 00087000 08:05 53284326   /usr/lib/libfreetype.so.6.3.160028f000-00290000 r-xp 00000000 08:05 53290963   /usr/lib/libxcb-xlib.so.0.0.000290000-00291000 rw-p 00000000 08:05 53290963   /usr/lib/libxcb-xlib.so.0.0.000291000-002b0000 r-xp 00000000 08:05 24936449   /usr/lib/pkcs11/libcoolkeypk11.so002b0000-002b1000 rw-p 0001f000 08:05 24936449   /usr/lib/pkcs11/libcoolkeypk11.so002b1000-00391000 r-xp 00000000 08:05 53284338   /usr/lib/libstdc++.so.6.0.800391000-00395000 r--p 000df000 08:05 53284338   /usr/lib/libstdc++.so.6.0.800395000-00396000 rw-p 000e3000 08:05 53284338   /usr/lib/libstdc++.so.6.0.800396000-0039c000 rw-p 00396000 00:00 0 0039e000-00496000 r-xp 00000000 08:05 53290972   /usr/lib/libX11.so.6.2.000496000-0049a000 rw-p 000f7000 08:05 53290972   /usr/lib/libX11.so.6.2.00049c000-004b7000 r-xp 00000000 08:05 53281954   /usr/lib/libxcb.so.1.0.0004b7000-004b8000 rw-p 0001a000 08:05 53281954   /usr/lib/libxcb.so.1.0.0004ba000-004c9000 r-xp 00000000 08:05 53293541   /usr/lib/libXext.so.6.4.0004c9000-004ca000 rw-p 0000e000 08:05 53293541   /usr/lib/libXext.so.6.4.0004cc000-004d4000 r-xp 00000000 08:05 53294756   /usr/lib/libXi.so.6.0.0004d4000-004d5000 rw-p 00007000 08:05 53294756   /usr/lib/libXi.so.6.0.0004d7000-004df000 r-xp 00000000 08:05 53294849   /usr/lib/libXrender.so.1.3.0004df000-004e0000 rw-p 00007000 08:05 53294849   /usr/lib/libXrender.so.1.3.0004e2000-004e4000 r-xp 00000000 08:05 53294856   /usr/lib/libXinerama.so.1.0.0004e4000-004e5000 rw-p 00001000 08:05 53294856   /usr/lib/libXinerama.so.1.0.0004e7000-004eb000 r-xp 00000000 08:05 53294854   /usr/lib/libXfixes.so.3.1.0004eb000-004ec000 rw-p 00003000 08:05 53294854   /usr/lib/libXfixes.so.3.1.0004ee000-004f7000 r-xp 00000000 08:05 53294855   /usr/lib/libXcursor.so.1.0.2004f7000-004f8000 rw-p 00008000 08:05 53294855   /usr/lib/libXcursor.so.1.0.2004fa000-00500000 r-xp 00000000 08:05 53294853   /usr/lib/libXrandr.so.2.1.000500000-00501000 rw-p 00005000 08:05 53294853   /usr/lib/libXrandr.so.2.1.000507000-005d1000 r-xp 00000000 08:05 69271617   /lib/libglib-2.0.so.0.1400.6005d1000-005d2000 rw-p 000ca000 08:05 69271617   /lib/libglib-2.0.so.0.1400.6005d4000-00613000 r-xp 00000000 08:05 69271629   /lib/libgobject-2.0Program received signal SIGABRT, Aborted.[Switching to Thread 25156496 (LWP 14240)]0x00110416 in __kernel_vsyscall ()and valgring==15952== Memcheck, a memory error detector.==15952== Copyright (C) 2002-2007, and GNU GPL'd, by Julian Seward et al.==15952== Using LibVEX rev 1732, a library for dynamic binary translation.==15952== Copyright (C) 2004-2007, and GNU GPL'd, by OpenWorks LLP.==15952== Using valgrind-3.2.3, a dynamic binary instrumentation framework.==15952== Copyright (C) 2000-2007, and GNU GPL'd, by Julian Seward et al.==15952== For more details, rerun with: -v==15952====15952== Thread 2:==15952== Mismatched free() / delete / delete []==15952==    at 0x4004E56: operator delete(void*) (vg_replace_malloc.c:244)==15952==    by 0x4019197: SlotMemSegment::SlotMemSegment(char const*) (in /usr/lib/pkcs11/libcoolkeypk11.so)==15952==    by 0x401D082: Slot::Slot(char const*, Log*, _CKYCardContext*) (in /usr/lib/pkcs11/libcoolkeypk11.so)==15952==    by 0x401D361: SlotList::updateSlotList() (in /usr/lib/pkcs11/libcoolkeypk11.so)==15952==    by 0x401D559: SlotList::SlotList(Log*) (in /usr/lib/pkcs11/libcoolkeypk11.so)==15952==    by 0x4012CC0: C_Initialize (in /usr/lib/pkcs11/libcoolkeypk11.so)==15952==    by 0x7715754: (within /usr/lib/libnss3.so)==15952==    by 0x77158B2: (within /usr/lib/libnss3.so)==15952==    by 0x77207A1: SECMOD_LoadModule (in /usr/lib/libnss3.so)==15952==    by 0x772090D: SECMOD_LoadModule (in /usr/lib/libnss3.so)==15952==    by 0x76F7470: (within /usr/lib/libnss3.so)==15952==    by 0x76F7A18: NSS_Initialize (in /usr/lib/libnss3.so)==15952==  Address 0x4214480 is 0 bytes inside a block of size 24 alloc'd==15952==    at 0x400595C: operator new[](unsigned) (vg_replace_malloc.c:195)==15952==    by 0x4019146: SlotMemSegment::SlotMemSegment(char const*) (in /usr/lib/pkcs11/libcoolkeypk11.so)==15952==    by 0x401D082: Slot::Slot(char const*, Log*, _CKYCardContext*) (in /usr/lib/pkcs11/libcoolkeypk11.so)==15952==    by 0x401D361: SlotList::updateSlotList() (in /usr/lib/pkcs11/libcoolkeypk11.so)==15952==    by 0x401D559: SlotList::SlotList(Log*) (in /usr/lib/pkcs11/libcoolkeypk11.so)==15952==    by 0x4012CC0: C_Initialize (in /usr/lib/pkcs11/libcoolkeypk11.so)==15952==    by 0x7715754: (within /usr/lib/libnss3.so)==15952==    by 0x77158B2: (within /usr/lib/libnss3.so)==15952==    by 0x77207A1: SECMOD_LoadModule (in /usr/lib/libnss3.so)==15952==    by 0x772090D: SECMOD_LoadModule (in /usr/lib/libnss3.so)==15952==    by 0x76F7470: (within /usr/lib/libnss3.so)==15952==    by 0x76F7A18: NSS_Initialize (in /usr/lib/libnss3.so)==15952====15952== Syscall param write(buf) points to uninitialised byte(s)==15952==    at 0xBB84AB: (within /lib/libpthread-2.7.so)==15952==    by 0x58F6710: (within /usr/lib/libpcsclite.so.1.0.0)==15952==    by 0x58F3914: SCardConnect (in /usr/lib/libpcsclite.so.1.0.0)==15952==    by 0xD10411: CKYCardConnection_Connect (in /usr/lib/libckyapplet.so.1.0.0)==15952==    by 0x401C5BB: Slot::connectToToken() (in /usr/lib/pkcs11/libcoolkeypk11.so)==15952==    by 0x401F120: Slot::refreshTokenState() (in /usr/lib/pkcs11/libcoolkeypk11.so)==15952==    by 0x4020511: Slot::isTokenPresent() (in /usr/lib/pkcs11/libcoolkeypk11.so)==15952==    by 0x4020A4D: SlotList::getSlotList(unsigned char, unsigned long*, unsigned long*) (in /usr/lib/pkcs11/libcoolkeypk11.so)==15952==    by 0x4011CFB: C_GetSlotList (in /usr/lib/pkcs11/libcoolkeypk11.so)==15952==    by 0x77159E8: (within /usr/lib/libnss3.so)==15952==    by 0x77207A1: SECMOD_LoadModule (in /usr/lib/libnss3.so)==15952==    by 0x772090D: SECMOD_LoadModule (in /usr/lib/libnss3.so)==15952==  Address 0x4E4D5CC is on thread 2's stackcd '/home/I-BIRD/Desktop/TraderFin/src'==15952====15952== Invalid write of size 4==15952==    at 0x590F296: (within /usr/lib/libnsspem.so)==15952==    by 0x591004D: (within /usr/lib/libnsspem.so)==15952==    by 0x5914824: (within /usr/lib/libnsspem.so)==15952==    by 0x591BD38: (within /usr/lib/libnsspem.so)==15952==    by 0x590B4AB: (within /usr/lib/libnsspem.so)==15952==    by 0x771CA11: (within /usr/lib/libnss3.so)==15952==    by 0x771CC2F: PK11_CreateGenericObject (in /usr/lib/libnss3.so)==15952==    by 0x866847: (within /usr/lib/libcurl.so.4.1.0)==15952==    by 0x8675A9: Curl_nss_connect (in /usr/lib/libcurl.so.4.1.0)==15952==    by 0x85EE0B: Curl_ssl_connect (in /usr/lib/libcurl.so.4.1.0)==15952==    by 0x83E256: Curl_http_connect (in /usr/lib/libcurl.so.4.1.0)==15952==    by 0x846F0A: Curl_protocol_connect (in /usr/lib/libcurl.so.4.1.0)==15952==  Address 0xB3ECDA0 is 0 bytes after a block of size 112,648 alloc'd==15952==    at 0x4004864: calloc (vg_replace_malloc.c:279)==15952==    by 0x7E492B: PR_Calloc (in /usr/lib/libnspr4.so)==15952==    by 0x591FB6C: (within /usr/lib/libnsspem.so)==15952==    by 0x590F267: (within /usr/lib/libnsspem.so)==15952==    by 0x591004D: (within /usr/lib/libnsspem.so)==15952==    by 0x5914824: (within /usr/lib/libnsspem.so)==15952==    by 0x591BD38: (within /usr/lib/libnsspem.so)==15952==    by 0x590B4AB: (within /usr/lib/libnsspem.so)==15952==    by 0x771CA11: (within /usr/lib/libnss3.so)==15952==    by 0x771CC2F: PK11_CreateGenericObject (in /usr/lib/libnss3.so)==15952==    by 0x866847: (within /usr/lib/libcurl.so.4.1.0)==15952==    by 0x8675A9: Curl_nss_connect (in /usr/lib/libcurl.so.4.1.0)==15952====15952== Invalid write of size 4==15952==    at 0x590F367: (within /usr/lib/libnsspem.so)==15952==    by 0x591004D: (within /usr/lib/libnsspem.so)==15952==    by 0x5914824: (within /usr/lib/libnsspem.so)==15952==    by 0x591BD38: (within /usr/lib/libnsspem.so)==15952==    by 0x590B4AB: (within /usr/lib/libnsspem.so)==15952==    by 0x771CA11: (within /usr/lib/libnss3.so)==15952==    by 0x771CC2F: PK11_CreateGenericObject (in /usr/lib/libnss3.so)==15952==    by 0x866847: (within /usr/lib/libcurl.so.4.1.0)==15952==    by 0x8675A9: Curl_nss_connect (in /usr/lib/libcurl.so.4.1.0)==15952==    by 0x85EE0B: Curl_ssl_connect (in /usr/lib/libcurl.so.4.1.0)==15952==    by 0x83E256: Curl_http_connect (in /usr/lib/libcurl.so.4.1.0)==15952==    by 0x846F0A: Curl_protocol_connect (in /usr/lib/libcurl.so.4.1.0)==15952==  Address 0xB3ECDA4 is 4 bytes after a block of size 112,648 alloc'd==15952==    at 0x4004864: calloc (vg_replace_malloc.c:279)==15952==    by 0x7E492B: PR_Calloc (in /usr/lib/libnspr4.so)==15952==    by 0x591FB6C: (within /usr/lib/libnsspem.so)==15952==    by 0x590F267: (within /usr/lib/libnsspem.so)==15952==    by 0x591004D: (within /usr/lib/libnsspem.so)==15952==    by 0x5914824: (within /usr/lib/libnsspem.so)==15952==    by 0x591BD38: (within /usr/lib/libnsspem.so)==15952==    by 0x590B4AB: (within /usr/lib/libnsspem.so)==15952==    by 0x771CA11: (within /usr/lib/libnss3.so)==15952==    by 0x771CC2F: PK11_CreateGenericObject (in /usr/lib/libnss3.so)==15952==    by 0x866847: (within /usr/lib/libcurl.so.4.1.0)==15952==    by 0x8675A9: Curl_nss_connect (in /usr/lib/libcurl.so.4.1.0)==15952====15952== Invalid read of size 4==15952==    at 0x590F1D8: (within /usr/lib/libnsspem.so)==15952==    by 0x591004D: (within /usr/lib/libnsspem.so)==15952==    by 0x5914824: (within /usr/lib/libnsspem.so)==15952==    by 0x591BD38: (within /usr/lib/libnsspem.so)==15952==    by 0x590B4AB: (within /usr/lib/libnsspem.so)==15952==    by 0x771CA11: (within /usr/lib/libnss3.so)==15952==    by 0x771CC2F: PK11_CreateGenericObject (in /usr/lib/libnss3.so)==15952==    by 0x866847: (within /usr/lib/libcurl.so.4.1.0)==15952==    by 0x8675A9: Curl_nss_connect (in /usr/lib/libcurl.so.4.1.0)==15952==    by 0x85EE0B: Curl_ssl_connect (in /usr/lib/libcurl.so.4.1.0)==15952==    by 0x83E256: Curl_http_connect (in /usr/lib/libcurl.so.4.1.0)==15952==    by 0x846F0A: Curl_protocol_connect (in /usr/lib/libcurl.so.4.1.0)==15952==  Address 0xB3ECDA0 is 0 bytes after a block of size 112,648 alloc'd==15952==    at 0x4004864: calloc (vg_replace_malloc.c:279)==15952==    by 0x7E492B: PR_Calloc (in /usr/lib/libnspr4.so)==15952==    by 0x591FB6C: (within /usr/lib/libnsspem.so)==15952==    by 0x590F267: (within /usr/lib/libnsspem.so)==15952==    by 0x591004D: (within /usr/lib/libnsspem.so)==15952==    by 0x5914824: (within /usr/lib/libnsspem.so)==15952==    by 0x591BD38: (within /usr/lib/libnsspem.so)==15952==    by 0x590B4AB: (within /usr/lib/libnsspem.so)==15952==    by 0x771CA11: (within /usr/lib/libnss3.so)==15952==    by 0x771CC2F: PK11_CreateGenericObject (in /usr/lib/libnss3.so)==15952==    by 0x866847: (within /usr/lib/libcurl.so.4.1.0)==15952==    by 0x8675A9: Curl_nss_connect (in /usr/lib/libcurl.so.4.1.0)--15952-- VALGRIND INTERNAL ERROR: Valgrind received a signal 11 (SIGSEGV) - exiting--15952-- si_code=1;  Faulting address: 0x16443AEC;  sp: 0x64671DF0valgrind: the 'impossible' happened:   Killed by fatal signal==15952==    at 0x38020037: vgPlain_arena_free (m_mallocfree.c:190)==15952==    by 0x38036594: vgPlain_cli_free (replacemalloc_core.c:108)==15952==    by 0x38001A0F: die_and_free_mem (mc_malloc_wrappers.c:111)==15952==    by 0x38036D12: do_client_request (scheduler.c:1158)==15952==    by 0x3803864C: vgPlain_scheduler (scheduler.c:869)==15952==    by 0x38058AF3: run_a_thread_NORETURN (syswrap-linux.c:87)==15952==    by 0x38058D5A: vgModuleLocal_start_thread_NORETURN (syswrap-linux.c:207)==15952==    by 0x3805B048: (within /usr/lib/valgrind/x86-linux/memcheck)==15952==    by 0x31: ???sched status:  running_tid=2Thread 1: status = VgTs_WaitSys==15952==    at 0xAB1E46: (within /lib/libc-2.7.so)==15952==    by 0x804A951: main (IBTrader.cpp:37)Thread 2: status = VgTs_Runnable==15952==    at 0x400513F: free (vg_replace_malloc.c:233)==15952==    by 0x7E4467: PR_Free (in /usr/lib/libnspr4.so)==15952==    by 0x591F9AE: (within /usr/lib/libnsspem.so)==15952==    by 0x591196B: (within /usr/lib/libnsspem.so)==15952==    by 0x590F193: (within /usr/lib/libnsspem.so)==15952==    by 0x591004D: (within /usr/lib/libnsspem.so)==15952==    by 0x5914824: (within /usr/lib/libnsspem.so)==15952==    by 0x591BD38: (within /usr/lib/libnsspem.so)==15952==    by 0x590B4AB: (within /usr/lib/libnsspem.so)==15952==    by 0x771CA11: (within /usr/lib/libnss3.so)==15952==    by 0x771CC2F: PK11_CreateGenericObject (in /usr/lib/libnss3.so)==15952==    by 0x866847: (within /usr/lib/libcurl.so.4.1.0)==15952==    by 0x8675A9: Curl_nss_connect (in /usr/lib/libcurl.so.4.1.0)==15952==    by 0x85EE0B: Curl_ssl_connect (in /usr/lib/libcurl.so.4.1.0)==15952==    by 0x83E256: Curl_http_connect (in /usr/lib/libcurl.so.4.1.0)==15952==    by 0x846F0A: Curl_protocol_connect (in /usr/lib/libcurl.so.4.1.0)==15952==    by 0x849EB9: Curl_connect (in /usr/lib/libcurl.so.4.1.0)==15952==    by 0x8539E9: Curl_perform (in /usr/lib/libcurl.so.4.1.0)==15952==    by 0x8543CC: curl_easy_perform (in /usr/lib/libcurl.so.4.1.0)==15952==    by 0x8055501: IBFineco::GetQuote(char*, double*) (IBFineco.cpp:188)==15952==    by 0x8055C64: IBStoreQuote::EurUsdTake(void*) (IBStoreQuote.cpp:120)==15952==    by 0x557BFE: (within /lib/libglib-2.0.so.0.1400.6)==15952==    by 0xBB150A: start_thread (in /lib/libpthread-2.7.so)==15952==    by 0xAF2B2D: clone (in /lib/libc-2.7.so)Thread 3: status = VgTs_WaitSys==15952==    at 0xAB1E46: (within /lib/libc-2.7.so)==15952==    by 0x80562F5: IBStoreQuote::EurUsdStore(void*) (IBStoreQuote.cpp:91)==15952==    by 0x557BFE: (within /lib/libglib-2.0.so.0.1400.6)==15952==    by 0xBB150A: start_thread (in /lib/libpthread-2.7.so)==15952==    by 0xAF2B2D: clone (in /lib/libc-2.7.so)Note: see also the FAQ.txt in the source distribution.It contains workarounds to several common problems.If that doesn't help, please report this bug to: www.valgrind.orgIn the bug report, send all the above text, the valgrindversion, and what Linux distro you are using.  Thanks.[I-BIRD&lt; at &gt;localhost src]$ cd '/home/I-BIRD/Desktop/TraderFin/src'[I-BIRD&lt; at &gt;localhost src]$*** glibc detected *** /home/I-BIRD/Desktop/TraderFin/src/IBTrader: double free or corruption (!prev): 0x0d33e950 ***======= Backtrace: =========/lib/libc.so.6[0xa88ac1]/lib/libc.so.6(cfree+0x90)[0xa8c0f0]/usr/lib/libnspr4.so(PR_Free+0x38)[0x7e4468]/usr/lib/libnsspem.so[0x9a8bef]/usr/lib/libnsspem.so[0x998268]/usr/lib/libnsspem.so[0x99904e]/usr/lib/libnsspem.so[0x99d825]/usr/lib/libnsspem.so[0x9a4d39]/usr/lib/libnsspem.so[0x9944ac]/usr/lib/libnss3.so[0x771ca12]/usr/lib/libnss3.so(PK11_CreateGenericObject+0x50)[0x771cc30]/usr/lib/libcurl.so.4[0x866848]/usr/lib/libcurl.so.4(Curl_nss_connect+0x6aa)[0x8675aa]/usr/lib/libcurl.so.4(Curl_ssl_connect+0x3c)[0x85ee0c]/usr/lib/libcurl.so.4(Curl_http_connect+0xa7)[0x83e257]/usr/lib/libcurl.so.4(Curl_protocol_connect+0x7b)[0x846f0b]/usr/lib/libcurl.so.4(Curl_connect+0x2da)[0x849eba]/usr/lib/libcurl.so.4(Curl_perform+0x8a)[0x8539ea]/usr/lib/libcurl.so.4(curl_easy_perform+0x5d)[0x8543cd]/home/I-BIRD/Desktop/TraderFin/src/IBTrader[0x8055524]/home/I-BIRD/Desktop/TraderFin/src/IBTrader[0x8055c95]/lib/libglib-2.0.so.0[0x557bff]/lib/libpthread.so.0[0xbb150b]/lib/libc.so.6(clone+0x5e)[0xaf2b2e]======= Memory map: ========00110000-00111000 r-xp 00110000 00:00 0          [vdso]00111000-0016e000 r-xp 00000000 08:05 53285494   /usr/local/lib/libcairo.so.2.9.30016e000-00170000 rw-p 0005c000 08:05 53285494   /usr/local/lib/libcairo.so.2.9.300170000-00193000 r-xp 00000000 08:05 53284842   /usr/lib/libexpat.so.0.5.000193000-0019a000 rw-p 00022000 08:05 53284842   /usr/lib/libexpat.so.0.5.00019a000-001a2000 r-xp 00000000 08:05 53285700   /usr/lib/libpcsclite.so.1.0.0001a2000-001a3000 rw-p 00008000 08:05 53285700   /usr/lib/libpcsclite.so.1.0.0001b2000-001f0000 r-xp 00000000 08:05 53285138   /usr/lib/libpango-1.0.so.0.1800.4001f0000-001f2000 rw-p 0003e000 08:05 53285138   /usr/lib/libpango-1.0.so.0.1800.4001f2000-0027a000 r-xp 00000000 08:05 53284326   /usr/lib/libfreetype.so.6.3.160027a000-0027e000 rw-p 00087000 08:05 53284326   /usr/lib/libfreetype.so.6.3.160028f000-00290000 r-xp 00000000 08:05 53290963   /usr/lib/libxcb-xlib.so.0.0.000290000-00291000 rw-p 00000000 08:05 53290963   /usr/lib/libxcb-xlib.so.0.0.000291000-002b0000 r-xp 00000000 08:05 24936449   /usr/lib/pkcs11/libcoolkeypk11.so002b0000-002b1000 rw-p 0001f000 08:05 24936449   /usr/lib/pkcs11/libcoolkeypk11.so002b1000-00391000 r-xp 00000000 08:05 53284338   /usr/lib/libstdc++.so.6.0.800391000-00395000 r--p 000df000 08:05 53284338   /usr/lib/libstdc++.so.6.0.800395000-00396000 rw-p 000e3000 08:05 53284338   /usr/lib/libstdc++.so.6.0.800396000-0039c000 rw-p 00396000 00:00 0 0039e000-00496000 r-xp 00000000 08:05 53290972   /usr/lib/libX11.so.6.2.000496000-0049a000 rw-p 000f7000 08:05 53290972   /usr/lib/libX11.so.6.2.00049c000-004b7000 r-xp 00000000 08:05 53281954   /usr/lib/libxcb.so.1.0.0004b7000-004b8000 rw-p 0001a000 08:05 53281954   /usr/lib/libxcb.so.1.0.0004ba000-004c9000 r-xp 00000000 08:05 53293541   /usr/lib/libXext.so.6.4.0004c9000-004ca000 rw-p 0000e000 08:05 53293541   /usr/lib/libXext.so.6.4.0004cc000-004d4000 r-xp 00000000 08:05 53294756   /usr/lib/libXi.so.6.0.0004d4000-004d5000 rw-p 00007000 08:05 53294756   /usr/lib/libXi.so.6.0.0004d7000-004df000 r-xp 00000000 08:05 53294849   /usr/lib/libXrender.so.1.3.0004df000-004e0000 rw-p 00007000 08:05 53294849   /usr/lib/libXrender.so.1.3.0004e2000-004e4000 r-xp 00000000 08:05 53294856   /usr/lib/libXinerama.so.1.0.0004e4000-004e5000 rw-p 00001000 08:05 53294856   /usr/lib/libXinerama.so.1.0.0004e7000-004eb000 r-xp 00000000 08:05 53294854   /usr/lib/libXfixes.so.3.1.0004eb000-004ec000 rw-p 00003000 08:05 53294854   /usr/lib/libXfixes.so.3.1.0004ee000-004f7000 r-xp 00000000 08:05 53294855   /usr/lib/libXcursor.so.1.0.2004f7000-004f8000 rw-p 00008000 08:05 53294855   /usr/lib/libXcursor.so.1.0.2004fa000-00500000 r-xp 00000000 08:05 53294853   /usr/lib/libXrandr.so.2.1.000500000-00501000 rw-p 00005000 08:05 53294853   /usr/lib/libXrandr.so.2.1.000507000-005d1000 r-xp 00000000 08:05 69271617   /lib/libglib-2.0.so.0.1400.6005d1000-005d2000 rw-p 000ca000 08:05 69271617   /lib/libglib-2.0.so.0.1400.6005d4000-00613000 r-xp 00000000 08:05 69271629   /lib/libgobject-2.0.so.0.1400.600613000-00614000 rw-p 0003f000 08:05 69271629   /lib/libgobject-2.0.so.0.1400.600616000-00619000 r-xp 00000000 08:05 69271635   /lib/libgmodule-2.0.so.0.1400.600619000-0061a000 rw-p 00002000 08:05 69271635   /lib/libgmodule-2.0.so.0.1400.60061c000-00620000 r-xp 00000000 08:05 69271633   /lib/libgthread-2.0.so.0.1400.600620000-00621000 rw-p 00003000 08:05 69271633   /lib/libgthread-2.0.so.0.1400.600623000-00653000 r-xp 00000000 08:05 53285630   /usr/lib/libpangoft2-1.0.so.0.1800.400653000-00654000 rw-p 0002f000 08:05 53285630   /usr/lib/libpangoft2-1.0.so.0.1800.400656000-00658000 r-xp 00000000 08:05 53294878   /usr/lib/libXcomposite.so.1.0.000658000-00659000 rw-p 00001000 08:05 53294878   /usr/lib/libXcomposite.so.1.0.000659000-0068f000 r-xp 00000000 08:05 53294904   /usr/lib/libsoftokn3.so0068f000-00690000 rw-p 00035000 08:05 53294904   /usr/lib/libsoftokn3.so00690000-006b4000 r-xp 00000000 08:05 53293632   /usr/lib/libnssdbm3.so006b4000-006b5000 rw-p 00024000 08:05 53293632   /usr/lib/libnssdbm3.so006d0000-006d2000 r-xp 00000000 08:05 53294799   /usr/lib/libplds4.so006d2000-006d3000 rw-p 00002000 08:05 53294799   /usr/lib/libplds4.so006d5000-006f1000 r-xp 00000000 08:05 53293429   /usr/lib/libgdk_pixbuf-2.0.so.0.1200.8006f1000-006f2000 rw-p 0001b000 08:05 53293429   /usr/lib/libgdk_pixbuf-2.0.so.0.1200.8006f9000-00713000 r-xp 00000000 08:05 53285704   /usr/lib/libatk-1.0.so.0.2009.100713000-00715000 rw-p 0001a000 08:05 53285704   /usr/lib/libatk-1.0.so.0.2009.10071c000-00743000 r-xp 00000000 08:05 53284335   /usr/lib/libfontconfig.so.1.2.000743000-0074b000 rw-p 00027000 08:05 53284335   /usr/lib/libfontconfig.so.1.2.00074b000-0078c000 r-xp 00000000 08:05 53293352   /usr/lib/libfreebl3.so0078c000-0078d000 rw-p 00041000 08:05 53293352   /usr/lib/libfreebl3.so007a3000-007c9000 r-xp 00000000 08:05 53281967   /usr/lib/libpng12.so.0.33.0007c9000-007ca000 rw-p 00025000 08:05 53281967   /usr/lib/libpng12.so.0.33.0007cc000-007d0000 r-xp 00000000 08:05 53294796   /usr/lib/libplc4.so007d0000-007d1000 rw-p 00003000 08:05 53294796   /usr/lib/libplc4.so007d3000-00809000 r-xp 00000000 08:05 53285083   /usr/lib/libnspr4.so00809000-0080a000 rw-p 00036000 08:05 53285083   /usr/lib/libnspr4.so0080a000-0080c000 rw-p 0080a000 00:00 0 00811000-0082a000 r-xp 00000000 08:05 69271637   /lib/libselinux.so.10082a000-0082c000 rw-p 00018000 08:05 69271637   /lib/libselinux.so.10082e000-00873000 r-xp 00000000 08:05 53303390   /usr/lib/libcurl.so.4.1.000873000-00875000 rw-p 00045000 08:05 53303390   /usr/lib/libcurl.so.4.1.000884000-00886000 r-xp 00000000 08:05 69271729   /lib/libcom_err.so.2.100886000-00887000 rw-p 00001000 08:05 69271729   /lib/libcom_err.so.2.100889000-008ae000 r-xp 00000000 08:05 46989369   /usr/lib/libk5crypto.so.3.1008ae000-008af000 rw-p 00025000 08:05 46989369   /usr/lib/libk5crypto.so.3.1008b1000-008de000 r-xp 00000000 08:05 46989372   /usr/lib/libgssapi_krb5.so.2.2008de000-008df000 rw-p 0002d000 08:05 46989372   /usr/lib/libgssapi_krb5.so.2.2008e1000-00971000 r-xp 00000000 08:05 46989370   /Program received signal SIGABRT, Aborted.
_________________________________________________________________
Messenger: non solo parole. Scaricalo gratis!
http://www.messenger.it</description>
    <dc:creator>Pietro Incardona</dc:creator>
    <dc:date>2008-11-29T15:52:34</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.web.curl.library/21552">
    <title>Re: libCurl not sending basic authentication in 1 out of 300systems...</title>
    <link>http://permalink.gmane.org/gmane.comp.web.curl.library/21552</link>
    <description>
My first reaction is to say "upgrade" since we've done lots of bug fixes
in the year since that release, but that may be hard to do while remotely
debugging like you're doing.  Still, if you can ssh into the unit and
run the app, you can probably also upload a newer libcurl.so.4 and use
LD_LIBRARY_PATH to point to it while running the app.  Since the problem
seems to be very repeatable, that would tell you quickly if it's an already-
solved problem in libcurl.  I can't think of any problem in that area that's
been fixed recently, though.  This is a pretty simple usage.


One thing to keep in mind is that you can't pass integers into
curl_easy_setopt, only longs. That line should be 

                  curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L);

and similarly with the others. It doesn't make much of a difference on some
architectures, but might on MIPS.


That will show you everything. The username/password for Basic authentication
is sent base64 encoded on the Authorization line, so just decode that to
see the raw username/password.  You should be able to tell very quickly
if libcurl is actually sending that line during the failure cases.

Could the problem actually be in the remote server?  You know how poor how
embedded software can be :^)

</description>
    <dc:creator>Dan Fandrich</dc:creator>
    <dc:date>2008-11-29T06:47:32</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.web.curl.library/21551">
    <title>Re: libCurl not sending basic authentication in 1 out of 300systems...</title>
    <link>http://permalink.gmane.org/gmane.comp.web.curl.library/21551</link>
    <description>



The GET line looks totally ruined here but I assume that was a copy and paste 
mistake.

The Authorization: header is as we all can see identical to the command line 
version so thus my conclusion is that this problem is harder than this.


Right. But since it is sending identical headers I would probably suggest you 
go low-level and wireshark the connection or similar to possibly detect 
differences...


--trace and --trace-ascii are the command line alternatives that show the same 
info CURLOPT_DEBUGFUNCTION does. And that is _everything_ sent and received. 
If you check the Authorization header again and paste the base64 encoded chunk 
in a site like 
http://www.opinionatedgeek.com/dotnet/tools/Base64Decode/Default.aspx you'll 
see that it _is_ sending the name and password.


'dceadmin' it is!

</description>
    <dc:creator>Daniel Stenberg</dc:creator>
    <dc:date>2008-11-29T06:27:50</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.web.curl.library/21550">
    <title>libCurl not sending basic authentication in 1 out of 300 systems...</title>
    <link>http://permalink.gmane.org/gmane.comp.web.curl.library/21550</link>
    <description>I wrote c/c++ software that uses libCurl 7.17.1 and runs on a Linux computer
for periodically archiving images from Panasonic cameras.  It's really
simple, we just retrieve a given url passing in the username/password for
basic authentication.  I've sold 300 systems, and it has run fine on all of
them, until now.  On one system, which is otherwise identical to the all the
others, it appears that libCurl is *not* sending the basic authentication
username/password for no apparent reason.  The command line utility works
fine, though.  I even created a sample app with hardcoded values to be 100%
sure everything is correct.  So I'm totally baffled.

This is the command line that works: curl -v -u "dceadmin:dcepass" -o
foo2.jpg "
http://192.168.0.82/low=/SnapshotJPEG?Resolution=320x240&amp;Quality=Standard"
and returns:

OpenSSL/0.9.8h zlib/1.2.3
&lt; HTTP/1.0 200 OK
  % Total    % Received % Xferd  Average Speed   Time    Time     Time
Current
                                 Dload  Upload   Total   Spent    Left
Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--
0&lt; Expires: -1
&lt; Cache-Control: no-cache
&lt; Content-length: 14152
&lt; Content-type: image/jpeg
&lt;
{ [data not shown]
100 14152  100 14152    0     0  71887      0 --:--:-- --:--:-- --:--:--
108k

and the resulting foo.jpg is a correct jpg file.  If i leave off the -u parm
or change the username/pass, I get a 401.  So I know the user/pass are ok.
Now, I do the same thing with libCurl, and this libCurl is the same version
as the command line version, compiled from the same source tree at the same
time, so there should be no difference:

        CURL *curl;
        CURLcode res=CURL_LAST;
        curl = curl_easy_init();
        if(curl)
        {
                curl_easy_setopt(curl, CURLOPT_VERBOSE, 1);
char cError[CURL_ERROR_SIZE]="";
curl_easy_setopt ( curl, CURLOPT_ERRORBUFFER, &amp;cError );

                curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0);
                curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION,
curl_write_data);  // my own function
                curl_easy_setopt(curl, CURLOPT_WRITEDATA, &amp;cdb); // my own
type of memory manager, not relevent for what's happening
                curl_easy_setopt(curl, CURLOPT_DEBUGFUNCTION,
my_curl_debug_callback); // all the debug output
CURLcode  c = curl_easy_setopt(curl, CURLOPT_USERPWD, "dceadmin:dcepass");
printf("got %d for userpass", (int) c);
             curl_easy_setopt(curl, CURLOPT_URL,  "
http://192.168.0.82/low=/SnapshotJPEG?Resolution=320x240&amp;Quality=Standard");
                curl_easy_setopt(curl, CURLOPT_TIMEOUT, 30);  // timeout
                res = curl_easy_perform(curl);
        printf("RES %d c: %s", (int) res, cError);
                curl_easy_cleanup(curl);

now my log function is this:

int my_curl_debug_callback (CURL *pCurl, curl_infotype _curl_infotype, char
*pBuffer, size_t size, void *p_void)
{
        printf("curl_debug_callback for %p with type %d and pvoid %p\n",
pCurl, (int) _curl_infotype, p_void);
        fwrite(pBuffer,1,size,stdout);
        return 0;
}

when I run the code, this is what I get from my printf debugging above

got 0  for userpass
curl_debug_callback for 0x49e1d8 with type 2 and pvoid (nil)
 HTTP/1.1/SnapshotJPEG?Resolution=320x240&amp;Quality=Standard
Authorization: Basic ZGNlYWRtaW46ZGNlcGFzcw==
Host: 192.168.0.82
Accept: */*

curl_debug_callback for 0x49e1d8 with type 3 and pvoid (nil)
&lt;HTML&gt;&lt;HEAD&gt;&lt;TITLE&gt;401 Unauthorized&lt;/TITLE&gt;&lt;/HEAD&gt;
curl_debug_callback for 0x49e1d8 with type 3 and pvoid (nil)
&lt;BODY BGCOLOR="#cc9999"&gt;&lt;H2&gt;401 Unauthorized&lt;/H2&gt;
&lt;HR&gt;
Authorization required for the requested URL.
&lt;/BODY&gt;&lt;/HTML&gt;
RES 0 c:

and the call to write_function, the output, is this:
&lt;HTML&gt;&lt;HEAD&gt;&lt;TITLE&gt;401 Unauthorized&lt;/TITLE&gt;&lt;/HEAD&gt;
&lt;BODY BGCOLOR="#cc9999"&gt;&lt;H2&gt;401 Unauthorized&lt;/H2&gt;
&lt;HR&gt;
Authorization required for the requested URL.
&lt;/BODY&gt;&lt;/HTML&gt;

So, libCurl and the command line both report virtually identical headers.
Both are using the same options.  And on 299 out of 300 systems everything
works ok.  But, on this one system, for some unknown reason, I keep getting
401 errors from libCurl, as though it's not passing the username and pass.
Since it's only this particular combination of pc + camera that has this
problem, I'd normally swap combinations to debug.  But I can't; I'm
debugging this remotely on a customer's location over ssh and he has only
the one camera/pc.  So somehow libcurl and curl are doing *something*
different.

I was trying to find a way to get curl and libcurl to report the complete
set of data on the http socket for debug purposes.  But it seems neither the
-v on the command line or CURLOPT_DEBUGFUNCTION for libCurl show you
everything because even when it's working from the command line, I can see
that nowhere in the debug output does it show where curl is sending the
username/password for authentication.  The term 'dceuser' doesn't even
appear in the output when I run curl -v.  So it's not showing me everything
that it's sending.

Any ideas how to increase the verbosity and get the full set of data that
curl/libcurl is sending?  Any suggestions for why on this particular system
it seems libCurl isn't sending the basic authentication, when the command
line version is?

Thanks
</description>
    <dc:creator>Paul Bergen</dc:creator>
    <dc:date>2008-11-29T01:31:29</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.web.curl.library/21549">
    <title>Re: implicit SSL with FileZilla server Unknown SSL protocol error1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number</title>
    <link>http://permalink.gmane.org/gmane.comp.web.curl.library/21549</link>
    <description>

[...]


Yes thanks, please do!

</description>
    <dc:creator>Daniel Stenberg</dc:creator>
    <dc:date>2008-11-28T21:51:59</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.web.curl.library/21548">
    <title>Re: implicit SSL with FileZilla server Unknown SSL protocol error1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number</title>
    <link>http://permalink.gmane.org/gmane.comp.web.curl.library/21548</link>
    <description>
[...]


No, it doesn't.

The relevant code (in lib/ftp.c) is this function:
static CURLcode ftps_setup_connection(struct connectdata * conn)
{
  struct SessionHandle *data = conn-&gt;data;

  conn-&gt;ssl[SECONDARYSOCKET].use = data-&gt;set.ftp_ssl != CURLUSESSL_CONTROL;
  return ftp_setup_connection(conn);
}
and this part of ftp_statemach_act:
    case FTP_PBSZ:
      /* FIX: check response code */

      /* For TLS, the data connection can have one of two security levels.

      1) Clear (requested by 'PROT C')

      2)Private (requested by 'PROT P')
      */
      if(!conn-&gt;ssl[SECONDARYSOCKET].use) {
        NBFTPSENDF(conn, "PROT %c",
                   data-&gt;set.ftp_ssl == CURLUSESSL_CONTROL ? 'C' : 'P');
        state(conn, FTP_PROT);
      }
      else {
        result = ftp_state_pwd(conn);
        if(result)
          return result;
      }

      break;

I propose doing away with ftps_setup_connection and just calling
ftp_setup_connection instead, then simplifying the code in
ftp_statemach_act to:
    case FTP_PBSZ:
      NBFTPSENDF(conn, "PROT %c",
 data-&gt;set.ftp_ssl == CURLUSESSL_CONTROL ? 'C' : 'P');
      state(conn, FTP_PROT);

      break;

I have tried this code with ftps: and ftp: combined with --ftp-ssl,
-ftp-ssl-reqd, --ftp-ssl-control and it seems to do the right thing.

Should I send a patch with this change?


Ken Hirsch

</description>
    <dc:creator>Ken Hirsch</dc:creator>
    <dc:date>2008-11-28T17:09:00</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.web.curl.library/21547">
    <title>Re: CURLOPT_WRITEDATA required in HTTP post?</title>
    <link>http://permalink.gmane.org/gmane.comp.web.curl.library/21547</link>
    <description>

No you don't. But I'd still say that in most cases that's the clever thing to 
do since the default is to write the received data to stdout.


I can't tell why your case failed at times, I've not seen it happen myself. 
The default CURLOPT_WRITEFUNCTION action is fwrite() and the CURLOPT_WRITEDATA 
for that is stdout. If that fails, there's something in your system that makes 
fwrite() to stdout fail.

</description>
    <dc:creator>Daniel Stenberg</dc:creator>
    <dc:date>2008-11-28T16:23:02</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.web.curl.library/21546">
    <title>CURLOPT_WRITEDATA required in HTTP post?</title>
    <link>http://permalink.gmane.org/gmane.comp.web.curl.library/21546</link>
    <description>Not sure if this is a bug or just me making a mistake.

I was using libcurl to do a multi part form upload using HTTP post.

It worked 95% of the time.

Then occassionally it would fail with the error "Failed writing body".

It was occurring when libcurl was parsing the last received HTTP response
(the "HTTP OIK" response).

I tracked it down to sendf.c. When it was pushing the data out, whatever it
was writing to, didn't accept all the bytes.

Then, I realised that I hadn't actually set CURLOPT_WRITEFUNCTION, so it was
set to the default (which I think writes to a file). However, I also hadn't
set CURLOPT_WRITEDATA.

So, anyway, I explicitely set CURLOPT_WRITEFUNCTION to point to a dummy
function which just discarded the data, and my problem went away.

So my questions/comments  are:

1. Do you explicitely need to set either/both CURLOPT_WRITEFUNCTION  and
CURLOPT_WRITEDATA when using HTTP POST? I hadn't set them because I wasn't
interested in the response from the server (beyond whether it returned HTTP
200)

2. If you do need to set them, why does it work most of the time? In my
example, were the responses getting dumped to an internal file/buffer which
was getting full or something?

If you do need to explicitely set them, then shouldn't libcurl return error
and complain that you haven't set it up properly?

Regards,

John
</description>
    <dc:creator>John Wood</dc:creator>
    <dc:date>2008-11-28T16:08:18</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.web.curl.library/21545">
    <title>Re: Re: Re: Re: bitmap buffer (c++)</title>
    <link>http://permalink.gmane.org/gmane.comp.web.curl.library/21545</link>
    <description/>
    <dc:creator>iamsal&lt; at &gt;interfree.it</dc:creator>
    <dc:date>2008-11-28T09:32:08</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.web.curl.library/21544">
    <title>Re: implicit SSL with FileZilla server Unknown SSL protocol error1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number</title>
    <link>http://permalink.gmane.org/gmane.comp.web.curl.library/21544</link>
    <description>

Right, I think for implicit FTPS that can be a sensible approach. The only 
little "problem" here is that someone needs to stup up and write the code for 
it... I think we just have to give up assuming to know how the data connection 
is to be done on implicit FTPS.

The RFC4217 also has the following to say about PROT:

       the PROT command MUST be preceded by a PBSZ command,
       and a PBSZ command MUST be preceded by a successful security data
       exchange (the TLS negotiation in this case)

But since we're talking implicit FTPS here it is from the pre-RFC4217 days so 
this RFC shouldn't be taken too literally.

Doesn't setting CURLOPT_USE_SSL option to CURLUSESSL_ALL also "fix" the 
problem?

</description>
    <dc:creator>Daniel Stenberg</dc:creator>
    <dc:date>2008-11-27T12:41:16</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.web.curl.library/21543">
    <title>Re: Asking about compiling libcurl with libssh2 in Windows VC98</title>
    <link>http://permalink.gmane.org/gmane.comp.web.curl.library/21543</link>
    <description>

I'm using zlib, openssl and libssh2 binary from internet to build libcurl
myself , but nothing came out of it. I didn't know exactly how to build
libcurl with sftp supports :(
Yesterday one of my friends compiled libcurl with libssh2 successfully (by
adding new options to  CFLAGS, LINKLIB and X_OBJS in Makefile.vc6). And now
the libcurl, which i'm using, supports sftp protocol. Everything's ok if we
use only password authentication. But when using public/private key
authentication, we got the error: *OpenSSL_Uplink: no OpenSSL_Applink*. Is
the problem in the libeay32.dll/ssleay32.dll or libcurl aren't built
correctly??
Here the code for test sftp:
...
hd_src = fopen("C:\\temp\\testFTP.txt", "rb");
    curl_global_init(CURL_GLOBAL_ALL);
    curl = curl_easy_init();
    if(curl) {
        curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L);
        curl_easy_setopt(curl, CURLOPT_READFUNCTION, read_callback);
        curl_easy_setopt(curl, CURLOPT_UPLOAD, 1L);
        curl_easy_setopt(curl,CURLOPT_URL,
"sftp://localhost/uploadfile.txt");
        curl_easy_setopt(curl, CURLOPT_USERPWD, "test:test");
        curl_easy_setopt(curl, CURLOPT_READDATA, hd_src);
        curl_easy_setopt(curl, CURLOPT_SSH_AUTH_TYPES,
CURLSSH_AUTH_PUBLICKEY);
        curl_easy_setopt(curl, CURLOPT_SSH_PUBLIC_KEYFILE,
"C:\\cygwin\\home\\test\\.ssh\\authorized_keys");
        curl_easy_setopt(curl, CURLOPT_SSH_PRIVATE_KEYFILE,
"C:\\cygwin\\home\\test\\.ssh\\id_rsa");
        res = curl_easy_perform(curl);

        if(CURLE_OK != res) {
            fprintf(stderr, "curl told us %d\n", res);
        }
        curl_easy_cleanup(curl);
    }
...
Thanks for any help!
Phuong.Ngo
</description>
    <dc:creator>Ngo Hoa Lan Phuong</dc:creator>
    <dc:date>2008-11-27T08:59:07</dc:date>
  </item>
  <textinput about="http://search.gmane.org/?group=$group=gmane.comp.web.curl.library">
    <title>Search Engine</title>
    <description>Search the mailing list at Gmane</description>
    <name>query</name>
    <link>http://search.gmane.org/?group=$group=gmane.comp.web.curl.library</link>
  </textinput>
</rdf:RDF>
