James Housley
aed0cc6f2a
Using fdopen() is a more correct way to implement the CURLOPT_NEW_FILE_PREMS
...
file.c, but the debug interface was missing. This adds the routines needed
to make the memory debuging work for fdopen().
2007-06-28 11:11:29 +00:00
James Housley
4cd7f85410
Add two new options for the SFTP/SCP/FILE protocols: CURLOPT_NEW_FILE_PERMS
...
and CURLOPT_NEW_DIRECTORY_PERMS. These control the premissions for files
and directories created on the remote server. CURLOPT_NEW_FILE_PERMS
defaults to 0644 and CURLOPT_NEW_DIRECTORY_PERMS defaults to 0755
2007-06-27 20:15:48 +00:00
Gunter Knauf
edd35cab5c
removed trailing spaces.
2007-06-27 10:14:00 +00:00
Gunter Knauf
a2060effed
fixed wrong var name
2007-06-27 10:12:48 +00:00
Daniel Stenberg
62f0f5571d
Robert Iakobashvili re-arranged the internal hash code to work with a custom
...
hash function for different hashes, and also expanded the default size for
the socket hash table used in multi handles to greatly enhance speed when
very many connections are added and the socket API is used.
2007-06-26 21:09:28 +00:00
James Housley
7a360de49d
The results for a list only directory should be sent to the callback
2007-06-26 20:23:10 +00:00
James Housley
1be4557694
ftp_list_only mode should list all file types, not just directories.
2007-06-26 19:12:58 +00:00
Daniel Stenberg
6a21738704
gah, adding missing braces, removed silly debug output, added new debug output
2007-06-25 14:17:52 +00:00
Daniel Stenberg
974fa1242a
Adjusted how libcurl treats HTTP 1.1 responses without content-lenth or
...
chunked encoding (that also lacks "Connection: close"). It now simply
assumes that the connection WILL be closed to signal the end, as that is how
RFC2616 section 4.4 point #5 says we should behave.
2007-06-25 13:58:14 +00:00
Daniel Stenberg
af4edf10f5
As reported by "Tro" in http://curl.haxx.se/mail/lib-2007-06/0161.html and
...
http://curl.haxx.se/mail/lib-2007-06/0238.html , libcurl didn't properly do
no-body requests on FTP files on re-used connections properly, or at least
it didn't provide the info back in the header callback properly in the
subsequent requests.
2007-06-24 19:32:33 +00:00
Gunter Knauf
2aed8946b0
made debug flag settable from outside; add allways debug stuff when DB != NDEBUG
2007-06-22 21:10:17 +00:00
Daniel Stenberg
03b03f7b60
remove annoying debug output
2007-06-22 20:24:11 +00:00
Daniel Stenberg
a1b650ad7b
Gerrit Bruchhäuser pointed out a warning that the Intel(R) Thread Checker
...
tool reports and it was indeed a legitimate one and it is one fixed. It was
a use of a share without doing the proper locking first.
2007-06-21 14:23:38 +00:00
James Housley
6e7f47da5b
If the creation of rsa and rsa_pub fail due to memory, don't try
...
other authentication methods. Terminate with a memory error.
2007-06-20 11:30:35 +00:00
James Housley
277bab0c7b
Check both variables, not the same one twice. Pointed out by Colin Hogben
2007-06-19 13:23:21 +00:00
Daniel Stenberg
fc3c5dae87
and fix another flaw in the singlecwd case when we get ftp://site.com/, also
...
from the #1739100 bug report
2007-06-19 12:33:28 +00:00
Daniel Stenberg
891dffb528
extra precaution to make PATH_MAX always be defined
2007-06-19 11:50:08 +00:00
James Housley
f0b361ecc1
Change rsa and rsa_pub from static arrays in ssh_conn to be dynamically
...
allocated when needed
2007-06-19 11:31:33 +00:00
James Housley
df7eed16dd
If LIBSSH2DEBUG was defined "i" was undefined
2007-06-18 22:28:40 +00:00
Daniel Stenberg
fe85ae15f3
make the ftp-method multicwd case possible to LIST the root directory of a
...
server!
2007-06-18 21:04:45 +00:00
James Housley
b61b420cb8
Curl_ssh_connect() was using an uninitialized variable in one location.
...
Caught by the auto-builds
2007-06-16 16:58:02 +00:00
Daniel Stenberg
b691102ec7
Shmulik Regev fixed a flaw in the multi interface that occurred when doing
...
HTTP CONNECT over a proxy
2007-06-14 14:42:21 +00:00
James Housley
db5d4bd811
Remove duplicate code that was left in as part of 1.35. This code
...
only affected sftp_sendquote() for the "chgrp/chmod/chown" commands.
This also fixed failure of test 614 on a system that previously failed.
2007-06-14 13:22:00 +00:00
Daniel Stenberg
dc3b3c6916
Make our own definitions of the POLL* defiens and the pollfd struct only get
...
done if the sys/poll.h file is missing, as we have seen machines with poll()
present but without the header file and machines that don't get HAVE_POLL
defined but that do have the sys/poll.h header file...
2007-06-14 11:21:48 +00:00
James Housley
82d3f97659
BUG FIX: When reading a directory listing that contains symlinks
...
with the latest libssh2, the listing would be truncated at the symlink.
Fix by looping on LIBSSH2_ERROR_EAGAIN, like the rest of the calls.
2007-06-14 10:36:53 +00:00
James Housley
f37dc9168a
Restore functionality mistakenly removed in the previous commit
2007-06-13 17:13:44 +00:00
Gisle Vanem
05ba9f9fcd
libssh2_session_free() returns void. Fix "#endif".
2007-06-13 14:01:48 +00:00
James Housley
96f4af4db9
Commit Tom Regner's code for SFTP create missing directories. This patch
...
uses the --ftp-create-dirs flag to control if cURL will try and create
directories that are specified in an upload path, but don't exist.
2007-06-13 12:15:23 +00:00
James Housley
3ec7f8a25a
Add a define to protect the state machine from older versions of libssh2,
...
ie 0.14, that don't know about newer constants used in the state machine.
2007-06-13 11:27:41 +00:00
Daniel Stenberg
375cdf89ad
With lots of help from Rich Rauenza(?) in bug #1733119 , we introduce a fairly
...
complicated work-around for 64bit HPUX compiles. We do the fix using inline
static functions to make them follow the header file properly and thus get
used fine in the test suite too etc.
2007-06-12 21:39:21 +00:00
James Housley
ab7e7144ef
* Updates for the latest version of libssh2, specifically
...
libssh2_sftp_shutdown() and libssh2_session_free() can now return
LIBSSH2_ERROR_EAGAIN.
* Fix the _send() and _recv() return values so non-blocking works
2007-06-12 21:32:45 +00:00
James Housley
6f59e19b91
While connect and transfer works fine in non-blocking mode for the test
...
suite, transfer fails in the real world. So after connect set to blocking
as full non-blocking is migrated out.
2007-06-12 16:15:20 +00:00
James Housley
73c13220ee
Prevent the state machine from getting stuck in SSH_AUTH_HOST_INIT
2007-06-12 13:47:32 +00:00
James Housley
99e0597c7b
Convert Curl_ssh_connect() to run in a state machine for
...
LIBSSH2_APINO >= 200706012030. More to come...
2007-06-12 12:31:10 +00:00
Daniel Stenberg
3247ac1918
remove unused field in the state struct
2007-06-12 08:15:02 +00:00
Daniel Stenberg
d23d686de2
restore the correct timeout time that my previous commit broke
2007-06-11 13:35:33 +00:00
Daniel Stenberg
c8677e9d3f
Properly wait for the c-ares resolve to complete, hopefully the cure for
...
bug #1733955
2007-06-11 13:32:49 +00:00
Gisle Vanem
1dcb99f0f7
constify 'hostname' in init_thread_sync_data(). Simply clear
...
the whole 'tsd' structure on exit in destroy_thread_sync_data().
2007-06-11 04:33:21 +00:00
Gisle Vanem
03bc2d34da
Squelsh some warnings for libssh older than 0.1.5.
2007-06-11 04:07:51 +00:00
James Housley
4f8ebd1673
Curl_scp_done() needs to call libssh2_channel_free() to prevent a
...
memory leak, and it is the right thing to do.
2007-06-08 16:19:21 +00:00
James Housley
cd4e6fbcac
Fix to work with the latest CVS version of libssh2
...
* As of (LIBSSH2_APINO >= 200706012030) there are not *nb() functions
* As of (LIBSSH2_APINO >= 200706012030) most libssh2_*() functions
can return LIBSSH2_ERROR_EAGAIN to indicate that the call would block.
To make the code work as previously, blocking, all the code has been
updated so that when (LIBSSH2_APINO >= 200706012030) it loops simulating
blocking. This allows the existing code to function and not hold up
the upcoming release.
2007-06-08 16:02:57 +00:00
Dan Fandrich
38b490a310
Fixed a compiler warning on uClibc.
2007-06-07 22:24:53 +00:00
Daniel Stenberg
48064f8dee
if we read zero bytes from the proxy, the connection is broken and we need
...
to bail out
2007-06-05 13:42:23 +00:00
Daniel Stenberg
e71378d3c8
mark connect failures as non-connected when ConnectPlease() fails, like when
...
a connection through a socks proxy doesn't work
2007-06-05 13:41:50 +00:00
Daniel Stenberg
b10ff9791b
ouch, two conditionals were turned backwards!
2007-06-01 21:24:34 +00:00
Daniel Stenberg
86a25239ec
do the update timer stuff even when CURLM_CALL_MULTI_PERFORM is returned
2007-06-01 21:01:57 +00:00
Daniel Stenberg
4c663ba9a8
When transferring 500 downloads in parallel with a c-ares enabled build only
...
to find that it crashed miserably, and this was due to some select()isms left
in the code. This was due to API restrictions in c-ares 1.3.x, but with the
upcoming c-ares 1.4.0 this is no longer the case so now libcurl runs much
better with c-ares and the multi interface with > 1024 file descriptors in
use.
2007-05-31 11:34:32 +00:00
Daniel Stenberg
713c9f8602
Feng Tu made (lib)curl support "upload" resuming work for file:// URLs.
2007-05-31 08:59:44 +00:00
Daniel Stenberg
a49e78d9b7
Added CURLMOPT_MAXCONNECTS which is a curl_multi_setopt() option for setting
...
the maximum size of the connection cache maximum size of the multi handle.
2007-05-30 20:04:44 +00:00
Daniel Stenberg
b6820b2674
remove really annoying debug output that makes life miserable when you do
...
hundreds of parallel transfers...
2007-05-30 09:24:06 +00:00