James Housley [Thu, 28 Jun 2007 11:11:29 +0000 (11:11 +0000)]
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().
James Housley [Wed, 27 Jun 2007 20:15:48 +0000 (20:15 +0000)]
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
Daniel Stenberg [Tue, 26 Jun 2007 21:09:28 +0000 (21:09 +0000)]
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.
Daniel Stenberg [Mon, 25 Jun 2007 13:58:14 +0000 (13:58 +0000)]
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.
Daniel Stenberg [Sun, 24 Jun 2007 19:32:33 +0000 (19:32 +0000)]
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.
Daniel Stenberg [Thu, 21 Jun 2007 14:23:38 +0000 (14:23 +0000)]
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.
Daniel Stenberg [Wed, 20 Jun 2007 21:57:28 +0000 (21:57 +0000)]
Adam Piggott filed bug report #1740263
(http://curl.haxx.se/bug/view.cgi?id=1740263). Adam discovered that when
getting a large amount of URLs with curl, they were fetched slower and
slower... which turned out to be because the --libcurl data collecting which
wrongly always was enabled, but no longer is...
Daniel Stenberg [Mon, 18 Jun 2007 21:09:32 +0000 (21:09 +0000)]
Robson Braga Araujo filed bug report #1739100
(http://curl.haxx.se/bug/view.cgi?id=1739100) that mentioned that libcurl
could not actually list the contents of the root directory of a given FTP
server if the login directory isn't root. I fixed the problem and added three
test cases (one is disabled for now since I identified KNOWN_BUGS #44, we
cannot use --ftp-method nocwd and list ftp directories).
Daniel Stenberg [Mon, 18 Jun 2007 21:04:05 +0000 (21:04 +0000)]
Test listing of root dir with the three ftp-methods. KNOWN_BUGS #44 make me
disable test 351 by default by I add the test case anyway to make it easier
to work on this problem in the future.
Daniel Stenberg [Thu, 14 Jun 2007 11:21:48 +0000 (11:21 +0000)]
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...
James Housley [Thu, 14 Jun 2007 10:36:53 +0000 (10:36 +0000)]
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.
Daniel Stenberg [Wed, 13 Jun 2007 20:17:35 +0000 (20:17 +0000)]
Tom Regner provided a patch and worked together with James Housley, so now
CURLOPT_FTP_CREATE_MISSING_DIRS works for SFTP connections as well as FTP
ones.
Daniel Stenberg [Wed, 13 Jun 2007 20:08:19 +0000 (20:08 +0000)]
Rich Rauenzahn filed bug report #1733119
(http://curl.haxx.se/bug/view.cgi?id=1733119) and we collaborated on the fix.
The problem is that for 64bit HPUX builds, several socket-related functions
would still assume int (32 bit) arguments and not socklen_t (64 bit) ones.
James Housley [Wed, 13 Jun 2007 12:15:23 +0000 (12:15 +0000)]
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.
Daniel Stenberg [Tue, 12 Jun 2007 21:39:21 +0000 (21:39 +0000)]
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.
James Housley [Tue, 12 Jun 2007 16:15:20 +0000 (16:15 +0000)]
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.
Dan Fandrich [Mon, 11 Jun 2007 17:53:10 +0000 (17:53 +0000)]
Wait longer for servers to start up since the ssh server needs to generate
keys the first time (which can take a while on a slow or loaded host).
Enforce a longer startup wait time for the ssh client SOCKS server, too.
Check for an error code from startnew() when starting any server.
James Housley [Fri, 8 Jun 2007 16:02:57 +0000 (16:02 +0000)]
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.
Daniel Stenberg [Thu, 7 Jun 2007 21:47:29 +0000 (21:47 +0000)]
Daniel S (6 June 2007)
- -s/--silent can now be used to toggle off the silence again if used a second
time.
Daniel S (5 June 2007)
- Added Daniel Black's work that adds the first few SOCKS test cases. I also
fixed two minor SOCKS problems to make the test cases run fine.
Dan Fandrich [Thu, 7 Jun 2007 21:42:33 +0000 (21:42 +0000)]
Renamed the sshd log file to sshd.log.
Added more options to the ssh config file to improve the consistency of
the test environment.
Force a rewrite of the ssh config files on every invocation.
Changed the opens to work on older versions of perl.