curl-library
understanding valgrind errors
Date: Tue, 19 Feb 2008 13:54:03 -0600
I'm evaluating adding libcurl+libssh2 to an embedded application. As a scp://
upload test case, I modified the ftpupload.c example to upload to a scp:// URL.
The scp upload worked, but I encountered numerous valgrind errors:
"2175 errors from 52 contexts".
The valgrind.pm filter in the test suite leads me to believe there are at least
some valgrind errors which may be ignored. The libcurl test suite scp, sftp
test cases ran under valgrind without any warnings. However valgrind.pm
doesn't handle some of my errors, below. Also, all "Conditional jump or move"
errors are ignored if openssl is used (as I do).
Here's a sampling of my reported memory errors:
"Conditional jump or move' errors are reported against libcrypto.so.0.9.7, not
libssl.
"Use of uninitialised value of size 4" reported against libcrypto.so.0.9.7
"Syscall param socketcall.send(msg) points to uninitialised byte" reported
against libssh2_kex_method_diffie_hellman_gro upGP_sha1_key_exchange
"Address 0x42EE06F is 271 bytes inside a block of size 284 alloc'd" reported
against curl_domalloc
"Syscall param socketcall.send(msg) points to uninitialsed byte(s)" reported
against libssh2_channel_send_eof
Can these reported memory errors be ignored, or do these indicate a deeper
problem?
I made my source code, Makefile, valgrind output available here:
http://webpages.charter.net/jeff.weber/libcurl/
My config:
libcurl 7.18.0
libssh2-0.18
valgrind-3.2.0
Linux 2.4.27
openssl-0.9.7g
remote ssh server OpenSSH_3.9p1
TIA,
Jeff Weber
Received on 2008-02-19