From fabf1a45ee08f9e13760721b84b6dca7c0347cc1 Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Mon, 4 Apr 2011 13:31:33 +0200 Subject: [PATCH] NEWS: auto-generated from git Starting now, the NEWS file is generated from git using the git2news.pl script. This makes it always accurate and up-to-date, even for daily snapshots etc. --- NEWS | 792 +--------------------------------------------------- git2news.pl | 76 +++++ maketgz | 7 + 3 files changed, 85 insertions(+), 790 deletions(-) create mode 100755 git2news.pl diff --git a/NEWS b/NEWS index 644a090..f48ae35 100644 --- a/NEWS +++ b/NEWS @@ -1,791 +1,3 @@ -This release includes the following changes: +The old NEWS file. - o Added libssh2_free(). By Simon Josefsson. - o Added libssh2_channel_get_exit_signal(). By Tommy Lindgren. - -libssh2 1.2.7 (August 17, 2010) - -This release includes the following changes: - - o Added Watcom makefile - -This release includes the following bugfixes: - - o Better handling of invalid key files - o inputchecks: make lots of API functions check for NULL pointers - o libssh2_session_callback_set: extended the man page - o SFTP: limit write() to not produce overly large packets - o agent: make libssh2_agent_userauth() work blocking properly - o _libssh2_userauth_publickey: reject method names longer than the data - o channel_free: ignore problems with channel_close() - o typedef: make ssize_t get typedef without LIBSSH2_WIN32 - o _libssh2_wait_socket: poll needs milliseconds - o libssh2_wait_socket: reset error code to "leak" EAGAIN less - o Added include for sys/select.h to get fd.set on some platforms - o session_free: free more data to avoid memory leaks - o openssl: make use of the EVP interface - o Fix underscore typo for 64-bit printf format specifiers on Windows - o Make libssh2_debug() create a correctly terminated string - o userauth_hostbased_fromfile: packet length too short - o handshake: Compression enabled at the wrong time - o Don't overflow MD5 server hostkey - -libssh2 1.2.6 (June 10, 2010) - -This release includes the following changes: - - o Added libssh2_sftp_statvfs() and libssh2_sftp_fstatvfs() - o Added libssh2_knownhost_checkp() - o Added libssh2_scp_send64() - -This release includes the following bugfixes: - - o wait_socket: make c89 compliant and use two fd_sets for select() - o OpenSSL AES-128-CTR detection - o proper keyboard-interactive user dialog in the sftp.c example - o build procedure for VMS - o fixed libssh2.dsw to use the generated libssh2.dsp - o several Windows-related build fixes - o fail to init SFTP if session isn't already authenticated - o many tiny fixes that address clang-analyzer warnings - o sftp_open: deal with short channel_write calls - o libssh2_publickey_init: fixed to work better non-blocking - o sftp_close_handle: add precation to not access NULL pointer - o sftp_readdir: simplified and bugfixed - o channel_write: if data has been sent, don't return EAGAIN - -Version 1.2.5 (April 13, 2010) - -This release includes the following changes: - - o Added Add keep-alive support: libssh2_keepalive_config() and - libssh2_keepalive_send() - o Added libssh2_knownhost_addc(), libssh2_init() and libssh2_exit() - o Added LIBSSH2_SFTP_S_IS***() macros - -This release includes the following bugfixes: - - o fix memory leak in libssh2_session_startup() - o added missing error codes - shown as hangs in blocking mode - o fix memory leak in userauth_keyboard_interactive() - o libssh2_knownhost_del: fix write to freed memory - o Send and receive channel EOF before sending SSH_MSG_CHANNEL_CLOSE - o Use AES-CTR from OpenSSL when available - o Fixed gettimeofday to compile with Visual C++ 6 - o NULL dereference when window adjusting a non-existing channel - o avoid using poll on interix and mac os x systems - o fix scp memory leak - o Correctly clear blocking flag after sending multipart packet - o Reduce used window sizes by factor 10 - o libssh2_userauth_publickey_fromfile_ex() handles a NULL password - o sftp_init() deal with _libssh2_channel_write() short returns - - o Use poll instead of select when available. By Paul Querna. - - o Add APIs to have libssh2 automatically send keep-alive requests. - The APIs are libssh2_keepalive_config, and libssh2_keepalive_send. - By Simon Josefsson. - - o Add global init/exit points, to do crypto initialization in one place. - The APIs are libssh2_init and libssh2_exit. By Lars Nordin. - -* (February 15 2010) Daniel Stenberg: -- Added 46 new man pages for public convenience macros. The man pages are - just short redirects to the actual underlying function. The were all - initially created by a script. - -- Committed the patch by Yoichi Iwaki in bug #2929647, which fixed a memory - leak when an 'outbuf' was still allocated when a session was freed. - -Version 1.2.4 (February 13, 2010) - - o Resolve compile issues on Solaris x64 and UltraSPARC - o Allow compiling with OpenSSL when AES isn't available - o Fix Tru64 socklen_t compile issue with example/direct_tcpip.c - -Version 1.2.3 (February 3, 2010) - - o Added libssh2_trace_sethandler() - o Added the direct_tcpip.c example - o Fixed memory leak in userauth_publickey - o Added support for authentication via SSH-Agent. By Daiki Ueno. - - o Respond to unknown SSH_MSG_GLOBAL_REQUEST/SSH_MSG_CHANNEL_REQUEST - with SSH_MSG_REQUEST_FAILURE/SSH_MSG_CHANNEL_FAILURE in order to - make (at least) OpenSSH server keepalive work. Before OpenSSH - servers (configured with a positive ClientAliveInterval) would - terminate connections against libssh2 clients because libssh2 did - not respond properly to the request. By Simon Josefsson. - -Version 1.2.2 (November 16, 2009) - -* This release includes the following changes: - - o Fix crash when server sends an invalid SSH_MSG_IGNORE message. - Reported by Bob Alexander in - . - By Simon Josefsson. - - o Support for the "aes128-ctr", "aes192-ctr", "aes256-ctr" ciphers - as per RFC 4344 for libgcrypt and OpenSSL. They are now the - preferred ciphers. By Simon Josefsson. - - o Support for the "arcfour128" cipher as per RFC 4345 for libgcrypt - and OpenSSL. It is preferred over the normal "arcfour" cipher - which is somewhat broken. By Simon Josefsson. - - o Add support for GCC visibility features. By Cristian Rodríguez. - - o Fix libssh2_channel_forward_accept. By Juzna. - - o Generate Win32 files correctly. By Peter Stuge. - - o Fix permission issue in ssh2 self test. By Dan Fandrich. - - o Use memmove instead of memcpy in one place which copies - overlapping memory areas. - - o Cleanup hard coding of cipher modes in libgcrypt backend. By Simon. - - o Added man page for libssh2_knownhost_free. By Daniel. - -Version 1.2.1 (September 28, 2009) - -* This release includes the following changes: - - o generate and install libssh2.pc - - ... and the following bugfixes: - - o proper return codes returned from several functions - o return EAGAIN internal cleanup - o added knownhost.c to windows makefiles - o pass private-key to OpenSSL as a filename with BIO_new_file(). - o make libssh2_scp_send/recv do blocking mode correctly - o libssh2_channel_wait_closed() could hang - o libssh2_channel_read_ex() must return 0 when closed - o added gettimeofday() function for win32 for the debug trace outputs - o transport layer bug causing invalid -39 (LIBSSH2_ERROR_BAD_USE) errors - o scp examples now loop correctly over libssh2_channel_write() - -* (August 29 2009) Daniel Stenberg: - - - I fixed all code to use the recently added dedicated linked list functions - instead of doing the same stuff spread out all over. - - - I also fixed a few cases where local variables where used to keep memory - but was used to keep state for re-invokes due to non-blocking situations - which would lead to segfaults. - -Version 1.2 (August 10, 2009) ------------------------------ - -* (August 02 2009) Alexander Lamaison: - - - changed _libssh2_rsa_new_private and _libssh2_rsa_new_private so that they - no longer use the OpenSSL functions that take a FILE* argument. Passing - CRT-created objects across a DLL boundary causes crashes on Windows of the - DLL and the client aren't linked to the exact same verison of the CRT. Now - we pass the keys as strings to avoid this issue. - -* (May 29 2009) Daniel Stenberg: - - - Updated the knownhost API and there are now 9 functions, and all of them - have man pages. The libssh2.h now defines HAVE_LIBSSH2_KNOWNHOST_API to - ease things for applications to check for the correct release before trying - to use it. - -* (May 23 2009) Daniel Stenberg: - - - Anonymous bug report #2795816 revealed that doing subsequent - libssh2_sftp_init() calls on the same session failed. - -* (May 20 2009) Daniel Stenberg: - - - made libssh2_sftp_write() properly deal with huge/any sized input buffers. - - - fixed libssh2_channel_write_ex() to return the correct return code, and - deal with sending off huge buffers better - -* (May 7 2009) Daniel Stenberg: - - - linked list code. I got a bit tired of the fact that we don't have any - generic linked-list functions within libssh2 so I wrote up the first embryo - for one that I use for this new functionality. The plan would then be to - move all existing code that uses linked lists to use this new set. - - - base64 encode. I had to add a base64 encoding function which was missing - in the code base so it helps to "bloat" my patch. - - - The knownhost API is currently: - - _init() - init a bundle of known hosts - _add() - add a known host - _del() - delete a known host - _free() - free an entire bundle of known hosts - _check() - check if a host+key is present in the bundle - - The convenience function: - - _parsefile() - reads a ~/.ssh/known_hosts file and add all entries to the - given bundle - - - there's no docs other than some comments in the code/headers yet - - - the patch includes changes to example/simple/ssh2_exec.c that makes use of - a few of these functions. Using that I've verified that the functions in - fact can verify my localhost's key agains my ~/.ssh/known_hosts file - -* (Apr 30 2009) Daniel Stenberg: - - 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. - -* (Apr 14 2009) Daniel Stenberg: - - libssh2_poll() and libssh2_poll_channel_read() are now considered and - documented deprecated and they will be removed at next soname bump. It also - saves us from fixing some rather quirky bugs in libssh2_poll()... - - -Version 1.1 (April 2, 2009) ---------------------------- - -- (Mar 28 2009) Daniel Stenberg: - - Jean-Louis Charton found a memory leak in - libssh2_userauth_hostbased_fromfile_ex() - -- (Mar 25 2009) Daniel Stenberg: - - * 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. - -- (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! - -- (Mar 17 2009) Simon Josefsson: - - Added a Libtool -export-symbols-regex flag to reduce the number of - exported symbols in shared libraries. Reported by Mikhail Gusarov. - -- (Mar 16 2009) Daniel Stenberg: - - I renamed a few man pages to match the exact name of the functions they - describe. I also added template versions for the 13 functions that - previously lacked man pages. While these don't contain any docs just yet, it - will now be easier to add the info as the foundation is there! - -- (Mar 15 2009) Daniel Stenberg: - - * libssh2_channel_read_ex() was simplified and enhanced. It now adjusts the - window less frequent and uses much larger window that now allows MUCH - faster transfers. - - * SCP send/recv now allow file names with whitespaces etc, thanks to a patch - by Heiner Steven - -- (Mar 13 2009) Daniel Stenberg: 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 - -- (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. - -- (Feb 23 2009) Added libssh2_version() - -- (Feb 20 2009) libssh2_channel_direct_tcpip_ex() bug #1902169 fixed, which - caused it to fail when called a second time. - -- (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. - -- (Feb 8 2009) Markus Moeller fixed a flaw in libssh2_channel_write_ex() that - would occur on EAGAIN situations. - -Version 1.0 (December 26 2008) ------------------------------- - -- (Dec 20 2008) Based on Alexander Lamaison's patch, there's now a new - function called libssh2_sftp_tell64() that returns the 64 bit file offset, - as the existing libssh2_sftp_tell() only returns a size_t. - -- (Dec 18 2008) Markus Moeller fixed the issue also reported by Alexander - Lamaison which caused SFTP reads with large buffers to fail. - -- Several flaws were fixed that prevented at least SFTP to work reliably - -- Vlad Grachov brought the new function called - libssh2_session_block_directions() which returns a bitmask for what - directions the connection blocks. It is to be used applications that use - non-blocking sockets and when a libssh2 function returns - LIBSSH2_ERROR_EAGAIN this function can be used to figure out in which - direction the socket would block and thus it can wait for the socket to - again be ready for communication in that direction before it calls libssh2 - again. - -- Vincent Jaulin brought the new libssh2_channel_request_pty_size_ex() - function. - -- Carlo Bramini fixed the build for msys+mingw. Bug #1943976. - -- Neil Gierman provided improved Visual Studio 2008 code in bug #1946268 - -- Bug #1862727 fixed libssh2_poll() to work on windows (by defining - HAVE_SELECT). - -- Based on bug #1815692, we introduce libssh2_sftp_seek64() that allows - seeking beyond the 2GB margin even on 32bit machines. - -- Based on a patch in bug #1878059 by Steven Ayre libssh2 now parses >2GB file - sizes when downloading SCP files. - -- Bug #2064371 pointed out that the SSH2 banner may not use dash - ('-'). Reported by Bjorn Stenborg. - -- Sean Peterson fixed a key re-exchange bug: - http://daniel.haxx.se/projects/libssh2/mail/libssh2-devel-archive-2008-06/0002.shtml - -- Mike Protts filed the bug report #1908724 that identified and fixed a problem - with SFTP stat on files >4GB in size. Previously it used 32bit math only. - -- Removed a stderr debug message that was accidentally left in (bug #1863153) - -- OpenSSL and libz detection changed to make cross-compiling to Mingw - work. See README for parameters to use if the auto-detection does - not work for you. From Simon Josefsson. - -- Simon Josefsson added a self-test that uses libssh2 to connect to a - local sshd (only enabled if if OpenSSH is installed). - -Version 0.18 (November 11 2007) -------------------------------- - -- Various changes that improve non-blocking operations and prevent stalls. - Especially noticable on Windows since libssh2 just didn't work properly - non-blocking on Windows before. - -- Peter O'Gorman reported how a SCP transfer would hang for him, and it was - fairly easy reproducable. One bug was in the transport layer, ignoring to - read more data while there was data left even though it couldn't decrypt the - data that was left due to it being too little... The other bug was in the - channel layer, where the libssh2_channel_receive_window_adjust() function - missed to set the state variables at times and thus this function would - misbehave on repeated invokes. - -- Changed the signature of libssh2_channel_setenv_ex to add const to the - "varname" parameter (Dan Fandrich) - -- Satish Mittal and David J Sullivan fixed an infinit recv() loop in - libssh2_banner_receive() - -Version 0.17 (August 6 2007) ----------------------------- -Changes since previous version include: - - o Re-indented the source code with this GNU indent setup: - - --braces-on-if-line - --braces-after-struct-decl-line - --space-after-cast - --line-length 79 - --comment-line-length 79 - --cuddle-else - --no-tabs - --tab-size 8 - --indent-level 4 - --no-space-after-for - --space-after-if - --space-after-while - --no-space-after-function-call-names - -Version 0.16 (August 6 2007) ----------------------------- -Changes since previous version include: - - o CRLF stripping fix for PEM reading - o libssh2_scp_recv() error message fix - o added HACKING as an initial attempt to describe our source code format - o new public defines in include/libssh2.h to allow applictions to figure out - version number etc - o new script (maketgz) to build releases with - o updated files for building with MSVC and mingw - o keyboard-interactive would always fail due to claimed memory problem - o a few minor memory leaks fixed - o libssh2_poll() no longer relies on C99 features - o AIX 4 and 5 now supports non-blocking sockets - o large file magic checks in configure - o LIBSSH2_APINO was removed from the public header file - -This release would not have been possible without these friendly contributors: - - James Housley, Simon Josefsson, Dan Fandrich, Guenter Knauf and I too did - some poking. (Sorry if I forgot anyone I should've mentioned here.) - -Of course we would have nothing without the great work by Sara Golemon that -we're extending and building upon. - -Version 0.15 (June 15 2007) ---------------------------- - Added libssh2_sftp_readdir_ex() and updated LIBSSH2_APINO to - 200706151200 (James Housley) - - Converted all of the libssh2 code to be able to work in non-blocking - mode. This included some public API changes, listed below (James Housley) - Changed function return values: - int libssh2_session_free() - int libssh2_publickey_shutdown() - ssize_t libssh2_channel_read_ex() - ssize_t libssh2_channel_write_ex() - - Added functions: - libssh2_session_last_errno(), libssh2_channel_handle_extended_data2(), - libssh2_channel_wait_closed(), libssh2_channel_wait_eof(), - libssh2_session_set_blocking() - - Removed functions: - libssh2_channel_readnb_ex(), libssh2_channel_writenb_ex(), - libssh2_sftp_readnb(), libssh2_sftp_writenb(), - libssh2_sftp_mkdirnb_ex() - - Added the following functions for non-blocking operations: (Daniel Stenberg) - libssh2_channel_readnb_ex() - libssh2_channel_writenb_ex() - libssh2_sftp_readnb() - libssh2_sftp_writenb() - - Size parameter changed from 'int' to 'unsigned int' in several - public APIs. - - Added (a few) man pages in docs/. (Daniel Stenberg) - - Maximum SSH packet size is now some 35000 bytes. - - Private include files are now in src/ and only public headers are in - include/. (Daniel Stenberg) - - Automake and libtool are being used (increased portability). (Daniel - Stenberg) - - Fixed OpenSSL detection using pkg-config. (Daniel Stenberg) - - Simple self test added to tests/. (Simon Josefsson) - - Libgcrypt can now be used instead of OpenSSL if you specify - --with-libgcrypt. (Simon Josefsson) - - Fixed a memory leak in the packet handling, and better handle out of - memory situations. (Dan Fandrich) - - Made libssh2 build with OpenSSL 0.9.6. (Dan Fandrich) - - Improved portability to Solaris related to -lsocket and - -lnsl. (Simon Josefsson) - - Clean up of README, INSTALL, NEWS, added ChangeLog. (Simon - Josefsson) - - Improve debugging code. Avoids many #ifdef's. - - Improved session closing to avoid potentially truncated files on - OpenSSH servers (Dan Fandrich) - - Made some function parameters in the API const (Dan Fandrich) - -Version 0.14 ------------- - - Plug leaks in EVP cipher init/shutdown. (Selcuk Gueney) - - Allow socket_fd == 0 in libssh2_session_startup(). (puudeli) - - Swap ordering of packet_add/packet-inspection to avoid inspect after - free. (Selcuk) - - Swap KEX_INIT ordering, send our KEX_INIT first. - - Add check for oportunistic KEX_INIT packets. Burn bad guess if necessary. - - Fix OpenSSL detection using pkg-config. (Dan Casey) - -Version 0.13 ------------- - - Fixed channel not being marked closed when CHANNEL_CLOSE package cannot be - sent. (David Robins) - - Fixed payload packet allocation bug when invalid packet length - received. (David Robins) - - Fixed `make install' target for MacOSX. - - Add terminating NULL character to readlink()/realpath() results. - - BugFix#1436593: Apply build options for HPUX targets. - -Version 0.12 ------------- - - Added support for publickey subsytem (not the same as publickey auth). - - Fix x11_req. Multiple packet_len issues and error handling logic. - (Thanks Simon Hart) - - Fix generation of 'e' portion of Diffie-Hellman keyset. - - Use appropriate order for BN_rand() rather than fixed group1-specific value. - - Re-fixed libssh2_sftp_rename_ex() - - Transport had right packet_len, but sftp layer still had extra 4 bytes. - - Fixed build with newer OpenSSL headers. - - Added extern "C" declarations to libssh2_sftp.h for C++ compatability. - -Version 0.11 ------------- - - Added libssh2_chnnale_get_exit_status() -- Mikhail - - Added libssh2_channel_wait_closed() -- Mikhail - - Added libssh2_userauth_keyboard_interactive_ex() -- Mikhail - - Added libssh2_channel_receive_window_adjust() to be able to increase the - size of the receive window. - - Added queueing for small window_adjust packets to avoid unnecessary packet - conversation. - - Fixed libssh2_sftp_rename_ex() to only send flags parameter if version >= 5 - negotiated (not currently possible, but will be and might as well keep the - API consistent). - -Version 0.10 ------------- - - Added developer debugging hooks. See --enable-debug-* options to ./configure - - Ignore extended data in the SFTP layer. With no other mechanism to deal - with that data it'd just fill up and get stuck. - - (Re)Fixed channel_write() to provide an opportunity for window space to - become available again. - - (Re)Fixed SFTP INIT to send the correct SFTP packet length. - - Fixed segfault when client and host can't agree on a hostkey/crypt/mac/comp - method. (Thanks puudeli) - - Fixed major issue with sftp packet buffering mechanism. Using wrong - blocking semantics. (No puudeli, YOU the man) - - Reduced busy-looping of libssh2_sftp_packet_requirev. - -Version 0.9 ------------ - - Changed blocking_read to only block as much as necessary and not an - arbitrary length of time. (Thanks Felix) - - Fixed SFTP INIT/VERSION to exclude request_id and send correct maximum - version number. - - Fixed SFTP to be properly BC with version 1 and 2 servers. - - Fixed libssh2_poll() to recognized closed sessions/channels. - - Fixed libssh2_channel_write_ex() to fully block when set to blocking mode. - Return actual bytes written as well. (Thanks deadem) - - Added tests for -lm and -lsocket and add them when necessary. - - Added libssh2_channel_window_read_ex() and libssh2_channel_window_write_ex() - for examining the ssh transport windowing states. - -Version 0.8 ------------ - - Fix potential segfault in compression/decompression. - - Fix compatability with older versions of OpenSSL - - Swapped order of none,zlib compression modes to prefer no compression by - default. - - Added sys/uio.h for platforms (FBSD) which need it in order to define struct - iovec. - - Added libssh2_poll() to check status of sockets/channels/listeners. - - Removed unnecessary inclusion of stdio.h (holdover from debugging) - -Version 0.7 ------------ - - Added libssh2_userauth_hostbased_fromfile_ex() for authenticating from hostkey. - - Added configure recognition for MacOSX (Darwin) (Thanks Gabe) - - Fixed extended data identification in libssh2_channel_read(). - - Fixed window adjust code. Hadn't acknowledged adjustments correctly. - - Removed initial_window_size requirement for sending window adjust packet. - - -Version 0.6 ------------ - - Added LIBSSH2_FLAG_SIGPIPE to enable/disable SIGPIPE generated by - send()/recv() calls. Default off. - - Added libssh2_session_flag() to set optional session flags. - - Collapsed exchanging_keys/newkeys/authenticated flags into single state - attribute. - - Fix zlib compression issue when internal buffer state misses partial sync. - - Fix segfault when libssh2_session_methods() is called prior to - session_startup(). - - Fixed client to server channel windowing. Pervent send queue overruns. - - Swapped banner send/receive order (send first, then wait for response). - -Version 0.5 ------------ - - *** BC Break *** - Reimplemented libssh2_session_methods() to match - libssh2_session_method_pref() style - - Fixed libssh2_attr2bin() (effects any setstat style call). - - Fixed authenticating with encrypted private key. - - Fixed authenticating via ssh-dss public key. - - Fixed KEX_INIT cookie and packet padding to use actual random data - - Added DESTDIR support to makefiles (Adam Gołębiowski -- I hope that - character set translates right) - - Added libssh2_channel_forward_listen_ex(), libssh2_channel_forward_cancel(), - and libssh2_channel_forward_accept(). - - Added ./configure option '--disable-gex-new' to allow using the older - group-exchange format - - Added MAC methods hmac-md5 and hmac-md5-96. - -Version 0.4 ------------ - - Fixed crash when trying to free sftp_dirhandle data from a filehandle struct. - - Fixed leak in sftp_open_ex(), handle->handle not freed in handle_close(). - - Fixed leak in sftp_symlink_ex(), result for READLINK and REALPATH not freed unless there was an error. - - Added libssh2_banner_set(), specify an arbitrary banner to send on introduction. - -Version 0.3 ------------ - - Fixed libssh2_channel_read_ex(). Packet loop initialized BEFORE transport polled for new packets (should have been after). - - Fixed blocking issues in scp_send()/scp_recv(). - - Fixed degree of indirection in macerror callback. - - Changed packet read mechanism to use a fixed buffer and avoid unnecessary alloc/free calls. (especially while non-block looping) - - Added channel close callback. - - Added SFTP support (Using its own header file: libssh2_sftp.h) - -Version 0.2 ------------ - - Changed extended data ignorance mechanism: - libssh2_channel_ignore_extended_data() changed to libssh2_channel_handle_extended_data() - Macro introduced for backward compatability during beta phase. - *** THE LIBSSH2_CHANNEL_IGNORE_EXTENDED_DATA() MACRO WILL BE REMOVED PRIOR TO 1.0 RELEASE *** - libssh2_channel_handle_extended_data() may be passed one of three "ignore_mode" constants - LIBSSH2_CHANNEL_EXTENDED_DATA_NONE Default behavior, queue ED packets and return them with read_ex - LIBSSH2_CHANNEL_EXTENDED_DATA_IGNORE Equivalent to libssh2_channel_ignore_extended_data() - IGNORE will implicitly flush the extended data stream(s) - LIBSSH2_CHANNEL_EXTENDED_DATA_MERGE Calls to channel_read() will check both the standard data stream - and the extended data stream(s) for the first available packet - - Changed libssh2_session_disconnect_ex() to return an error code when alloc fails - - Added libssh2_channel_flush_ex() and basic macros: ..._flush() ..._flush_stderr() - flush_ex accepts either the streamid (0 for standard data, 1 for stderr) or one of the two following constants: - LIBSSH2_CHANNEL_FLUSH_ALL Flush all streams - LIBSSH2_CHANNEL_FLUSH_EXTENDED_DATA Flush all streams EXCEPT the standard data stream - - Added libssh2_session_callback_set() for setting ignore/debug/disconnect/macerror callbacks - - Added libssh2_session_method_pref() to selectively set methods and method preferences. - - Added libssh2_session_methods() to determine what methods were negotiated. - - Added libssh2_session_abstract() for retreiving &session->abstract - - Added libssh2_session_last_error() for retreiving error codes/messages - -Version 0.1 ------------ - - Initial Release: - KEX methods: diffie-hellman-group14-sha1, diffie-hellman-group-exchange-sha1, diffie-hellman-group1-sha1 - Hostkey methods: ssh-rsa, ssh-dss - Cipher methods: aes256-cbc, rijndael-cbc@lysator.liu.se, aes192-cbc, aes128-cbc, blowfish-cbc, arcfour, cast128-cbc, 3des-cbc, none* - Compression methods: zlib, none - MAC methods: hmac-sha1, hmac-sha1-96, hmac-ripemd160, hmac-ripemd160@openssh.com none* - *Cipher/MAC "none" is disabled by default for security purposes, - Use --enable-crypt-none and/or --enable-mac-none with ./configure to enable +NEWS is now generated from git and put into the release tarballs. diff --git a/git2news.pl b/git2news.pl new file mode 100755 index 0000000..7da4709 --- /dev/null +++ b/git2news.pl @@ -0,0 +1,76 @@ +#!/usr/bin/perl + +# git log --pretty=fuller --no-color --date=short --decorate=full + +my @mname = ('Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', + 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec' ); + +sub nicedate { + my ($date)=$_; + + if($date =~ /(\d\d\d\d)-(\d\d)-(\d\d)/) { + return sprintf("%d %s %4d", $3, $mname[$2-1], $1); + } + return $date; +} + +print +' Changelog for the libssh2 project. Generated with git2news.pl +'; + +my $line; +my $tag; +while() { + my $l = $_; + + if($l =~/^commit ([[:xdigit:]]*) ?(.*)/) { + $co = $1; + my $ref = $2; + if ($ref =~ /refs\/tags\/(libssh2-|VERSION\.)([0-9._]*)/) { + $tag = $2; + } else { + $tag = ''; + } + } + elsif($l =~ /^Author: *(.*) +/dev/null fi +####################################################################### +# +# Generate the changelog +# +echo "generate NEWS" +git log --pretty=fuller --no-color --date=short --decorate=full -1000 | ./log2changes.pl > NEWS.dist + ############################################################################ # # Now run make dist to generate a tar.gz archive