Daniel Stenberg
4b991b232d
My knownhost work as of right now. It works at least partly. More tests and
...
tweaks will come.
2009-05-07 13:09:48 +00:00
Daniel Stenberg
9412588373
bug #2785173 pointed out that we really must call _libssh2_transport_read()
...
in loops until it returns < 0 when we call it, as if we just call it once we
may drain the socket for data and then leave unused in-memory data that we
won't detect because the socket is back to idle...
2009-05-01 19:07:20 +00:00
Daniel Stenberg
9f104cd883
Markus posted a bug report about a bad 0-return from libssh2_channel_read:
...
http://libssh2.haxx.se/mail/libssh2-devel-archive-2009-04/0076.shtml
And it was indeed a bad loop that terminated too early due to a receveived
close packet.
2009-04-30 10:30:26 +00:00
Daniel Stenberg
e63cbd907f
Jussi Mononen pointed out we used an unsigned variable to store negative
...
values in, when a plain int is much better anyway since it matches the return
type.
2009-04-06 14:50:29 +00:00
Daniel Stenberg
74f4b7817b
Uh, it is important that we don't set the local state 'local.close' to TRUE
...
until _after_ we're done as otherwise we might not get called again properly
to clean the entire thing since the close state is checked in
libssh2_channel_free
2009-03-31 08:52:25 +00:00
Daniel Stenberg
9ba11a374c
Removed the trace output that said "May block until packet of type..." since
...
it simply wasn't true for non-blocking operations.
2009-03-30 09:19:49 +00:00
Daniel Stenberg
117b95e6e3
made sure the SFTP code makes more use of internal non-blocking functions
...
instead of the external API entries
2009-03-29 22:09:29 +00:00
Daniel Stenberg
60ee30b6c9
Fixed the memory leak in in libssh2_userauth_hostbased_fromfile_ex() that
...
Jean-Louis Charton found. Additional minor indent and comment edits.
2009-03-28 21:31:53 +00:00
Daniel Stenberg
55744f8f34
indent changes and removed libssh2_ prefix from static function
2009-03-28 21:22:16 +00:00
Yang Tse
8f78a935ca
include libssh2_priv.h instead of libssh2.h in order to get
...
LIBSSH2_API properly defined on LIBSSH2_WIN32 build targets
2009-03-28 12:50:34 +00:00
Daniel Stenberg
75d5830490
Additional non-blocking fixes.
2009-03-27 22:24:09 +00:00
Daniel Stenberg
103a6e9e0b
Me and my long fingers couldn't resist "merging" these statements in a previous
...
commit but of course that broke functionality and this is a revert of that
change.
2009-03-27 21:52:49 +00:00
Daniel Stenberg
76dab196b1
Dump to stderr simply because the other tracing functions in misc.c already
...
use stderr and mixing output "channels" causes too much confusion for me!
2009-03-27 21:51:43 +00:00
Daniel Stenberg
4353711127
fixed sftp_shutdown() for the blockiness and fixed libssh2_channel_close()
...
to work properly non-blocking
2009-03-27 20:20:48 +00:00
Daniel Stenberg
ad8b49b208
Fixed the order of the check in the BLOCK_ADJUST() macro so that it also works
...
for libssh2_session_free()
2009-03-27 12:48:03 +00:00
Daniel Stenberg
5936d9ce4e
Fix the BLOCK_ADJUST_ERRNO() macro to behave properly in blocking mode.
2009-03-27 09:37:48 +00:00
Daniel Stenberg
f390c8e02d
fix comments, moved to htonu64 function to sftp.c and made it static
2009-03-27 07:03:00 +00:00
Daniel Stenberg
9df891e412
More cleaning up converting libssh2_ to _libssh2_ for internal functions and
...
removing libssh2_ from static functions. Added mac.h.
2009-03-26 22:25:23 +00:00
Daniel Stenberg
fc28f33384
comp.c only as a single _libssh2_ function, no external one
2009-03-26 22:09:35 +00:00
Daniel Stenberg
eabe072496
* Renamed the functions in src/transport.c to be _libssh2_transport_ prefixed
...
and introduced a transport.h header.
* Fixed the blocking mode to only change behavior not the actual underlying
socket mode so we now always work with non-blocking sockets. This also
introduces a new rule of thumb in libssh2 code: we don't call the
external function calls internally. We use the internal (non-blocking)
ones!
* libssh2_channel_receive_window_adjust2 was added and
libssh2_channel_receive_window_adjust is now deprecated
* Introduced "local" header files with prototypes etc for different parts
instead of cramming everything into libssh2_priv.h. channel.h is the
first.
2009-03-26 15:41:14 +00:00
Daniel Stenberg
2e548c1ca0
Updated comments and removed "libssh2_" prefixes from static functions
2009-03-23 13:35:20 +00:00
Daniel Stenberg
3d97a87669
ENOTCONN obviously doesn't exist in win32 so don't try to map that
2009-03-23 13:08:17 +00:00
Daniel Stenberg
022cac8510
[no comment]
2009-03-23 12:53:50 +00:00
Daniel Stenberg
d187a0fdb6
EEK revert the part of the previous commit that was just my non-functional
...
attempts to make things work with blocking sockets.
2009-03-23 12:51:53 +00:00
Daniel Stenberg
1936d167d1
I cut out the poll_socket argument from the protos for_libssh2_packet_askv()
...
and _libssh2_packet_ask() since they are internal and nothing in the code base
uses that functionality == simplicity with no drawbacks!
2009-03-23 12:43:59 +00:00
Daniel Stenberg
26b65e06b1
pass in unsigned ints for u32 values and not longs
2009-03-19 12:54:58 +00:00
Daniel Stenberg
468272d648
- (Mar 19 2009) Daniel Stenberg: based on a patch by "E L" we now use errno
...
properly after recv() and send() calls (that internally are now known as
_libssh2_recv() and _libssh2_send()) so that the API and more works fine on
windows too!
2009-03-19 12:45:59 +00:00
Daniel Stenberg
53ad07633e
re-indented for clarity
2009-03-17 14:58:24 +00:00
Daniel Stenberg
0b7f20566c
re-indented _libssh2_channel_packet_data_len() somewhat to make the huge
...
condition somewhat easier on the eye
2009-03-17 14:44:38 +00:00
Daniel Stenberg
cc5e952fa0
A cleanup effort: libssh2_ prefixes only on external APIs. Use _libssh2_ prefix
...
for library-wide internal functions. Don't use any of those on static functions.
I also did some comments and whitespace changes.
2009-03-17 13:48:35 +00:00
Simon Josefsson
c7a1d30590
Use libtool -export-symbols-regex to reduce numer of exported symbols.
2009-03-17 10:19:54 +00:00
Daniel Stenberg
94090cf55c
Patch from bug report #1960894 by "Heiner" applied, and edited by me. It makes
...
SCP recv and send deal with file names containing spaces (and other
shell-special letters) by quoting them before they are passed to the remote
server.
2009-03-15 23:28:25 +00:00
Daniel Stenberg
ce9d44a3ff
fixed some wrong comments and did a minor code edit and some further
...
whitespace changes
2009-03-15 23:07:09 +00:00
Daniel Stenberg
0812744424
fix a compiler warning
2009-03-15 22:40:11 +00:00
Daniel Stenberg
f56b8ef605
simplified how the "scp" command line is created in the libssh2_scp_recv()
...
function
2009-03-15 22:38:47 +00:00
Daniel Stenberg
1a630c5c09
Simplified libssh2_channel_read_ex() and made it send window adjustments less
...
frequent, use a few less struct fields in the channel struct and improved
reading from the network with libssh2_packet_read(). I also modified the
windowing algorithm and now use a much larger window. This greatly enhances
SSH/SCP performance. I also increased the size of the buffer the transport
layer uses from 4k to 16K.
2009-03-15 22:29:23 +00:00
Daniel Stenberg
3793b6768d
oops, use %06d for the microseconds!
2009-03-14 23:04:25 +00:00
Daniel Stenberg
269bd5e9a4
re-indented and other whitespace edits
2009-03-14 22:29:48 +00:00
Daniel Stenberg
d7566e5065
improved trace logs with time stamps
2009-03-14 22:29:28 +00:00
Daniel Stenberg
a52f5d3b7e
Cleanups, that do seem to have boosted SFTP download performance up to 300% in
...
some tests:
* cut off "_ex" from several internal function names
* corrected some log outputs
* simplified libssh2_channel_read_ex() and made it much faster in the process
* cut out {{{ and }}} comments that were incorrect anyway
* fixed sftp_packet_ask() to return the correct packet by using memcmp() and
not strncmp()
* fixed mkdir()'s wait for packet to use the correct request_id - it
semi-worked previously because strncmp() in sftp_packet_ask() made it
match far too easily.
* took away the polling functionality from sftp_packet_ask() since it wasn't
used
2009-03-13 22:15:27 +00:00
Daniel Stenberg
5f32304805
- (Mar 7 2009) Olivier Hervieu pointed out a flaw in the
...
libssh2_channel_x11_req_ex() function that made it produce a crappy random
chunk of data. Peter Stuge improved the fix to not do out-of-boundary
writes. I (Daniel Stenberg) replaced the snprintf() with a plain sprintf()
since the size argument wasn't adding anything anyway.
2009-03-07 22:08:05 +00:00
Daniel Stenberg
663da93b42
- Added libssh2_version()
2009-02-23 16:22:46 +00:00
Daniel Stenberg
1addcbbf53
- (Feb 20 2009) libssh2_channel_direct_tcpip_ex() bug #1902169 fixed, which
...
caused it to fail when called a second time.
2009-02-20 16:14:45 +00:00
Simon Josefsson
558de5e103
Bump ABI revision from 1.0.0 to 1.0.1 due to code changes.
2009-02-16 21:49:31 +00:00
Daniel Stenberg
c672b837f8
- (Feb 12 2009) Romain Bondue extended Markus Moeller fix from Feb 8, based on
...
a previous (uncommitted) patch by Erik Brossler. It improves
libssh2_channel_write_ex in blocking situations when the socket is set non-
blocking.
2009-02-12 11:46:28 +00:00
Daniel Stenberg
c547e07caa
Markus Moeller fixed a flaw in libssh2_channel_write_ex() that would occur
...
on EAGAIN situations.
2009-02-08 12:09:20 +00:00
Daniel Stenberg
369fcddb24
fixed compiler warnings, and stripped off "libssh2_" from static functions
...
as that makes shorter function names and then making the code look fine within
80 columns is easier!
2009-01-01 22:47:06 +00:00
Daniel Stenberg
7aac082782
removed obviously superfluous comments
2008-12-22 22:43:05 +00:00
Daniel Stenberg
5a35edcb9a
use a single >>32 instead of "(value / 65536) / 65536", just make sure that
...
the shift is done on a 64bit type
2008-12-22 22:33:03 +00:00
Daniel Stenberg
079d20aca8
remove unused #ifndef, and two whitespace changes
2008-12-22 22:31:51 +00:00