cURL
Haxx ad
libcurl

curl's project page on SourceForge.net

Sponsors:
Haxx

cURL > Mailing List > Monthly Index > Single Mail

curl-library Archives

some CURLOPT_WRITEFUNCTION callback arguments being flagged as undefined by valgrind

From: Bruce Cartland <bruce.cartland_at_pobox.com>
Date: Mon, 02 Apr 2012 18:11:48 +1000

I'm having to use VALGRIND_MAKE_MEM_DEFINED on some values passed to my
callback by libcurl. If I don't do this, I get hundreds of errors
flagged by valgrind regarding referencing the indicated values or
derived values.

Has anyone any idea about why this might be happening? Do you think my
use of VALGRIND_MAKE_MEM_DEFINED in this manner is safe? It seems to be
as no other issues are reported and the applications functions just fine.

I'm setting up the callbacks for CURLOPT_WRITEFUNCTION and
CURLOPT_HEADERFUNCTION:
     curl_easy_setopt(net->curl, CURLOPT_WRITEDATA, myobj);
     curl_easy_setopt(net->curl, CURLOPT_WRITEFUNCTION,
(curl_write_callback) _write_data_callback);
     curl_easy_setopt(net->curl, CURLOPT_WRITEHEADER, myobj);
     curl_easy_setopt(net->curl, CURLOPT_HEADERFUNCTION,
(curl_write_callback) _write_hdr_callback);

my "data" callback is (hdr is similar):
     staticsize_t _write_data_callback(char*buffer, size_t size, size_t
nitems, struct myStruct *myobj)
     {
VALGRIND_MAKE_MEM_DEFINED(&nmemb, sizeof(nitems));
VALGRIND_MAKE_MEM_DEFINED(buffer, size * nitems);
return_write_hdr_response(myobj, buffer, size, nitems);
     }

thanks

-------------------------------------------------------------------
List admin: http://cool.haxx.se/list/listinfo/curl-library
Etiquette: http://curl.haxx.se/mail/etiquette.html
Received on 2012-04-02

These mail archives are generated by hypermail.

donate! Page updated January 05, 2012.
web site info

File upload with ASP.NET