libssh 0.3

It’s done! After several month of hard work we have a new release of libssh.
Version 0.3 has a lot of small and major changes. The API has been improved and
by this we had to break the API and ABI compability.

New functions:
channel_read_buffer, channel_get_exit_status, ssh_auth_list,
ssh_userauth_agent_pubkey, ssh_get_hexa, ssh_version

Changed functions:
channel_read, ssh_get_pubkey_hash, privatekey_free, try_publickey_from_file,

Please let us know if there is documentation unclear or missing. Please join
our mailing list
or visit our irc channel. You can download libssh 0.3 here along with a NSIS installer for Windows. Packages for openSUSE and Fedora are available here.


  • Added support for ssh-agent authentication.
  • Added POSIX like sftp implementation.
  • Added error checking to all functions.
  • Added const to arguments where it was needed.
  • Added a channel_get_exit_status() function.
  • Added a channel_read_buffer() function, channel_read() is now a POSIX like function.
  • Added a more generic auth callback function.
  • Added printf attribute checking for log and error functions.
  • Added runtime function tracer support.
  • Added NSIS build support with CPack.
  • Added openssh hashed host support.
  • Added API documentation for all public functions.
  • Added asynchronous SFTP read function.
  • Added a ssh_bind_set_fd() function.
  • Fixed known_hosts parsing.
  • Fixed a lot of build warnings.
  • Fixed the Windows build.
  • Fixed a lot of memory leaks.
  • Fixed a double free corruption in the server support.
  • Fixed the “ssh_accept:” bug in server support.
  • Fixed important channel bugs.
  • Refactored the socket handling.
  • Switched to CMake build system.
  • Improved performance.