Go to file
Peter Stuge f28264c6a3 Define and use LIBSSH2_INVALID_SOCKET instead of INVALID_SOCKET
INVALID_SOCKET is a special value in Windows representing a
non-valid socket identifier. We were #defining this to -1 on
non-Windows platforms, causing unneccessary namespace pollution.
Let's have our own identifier instead.

Thanks to Matt Lawson for pointing this out.
2012-03-02 17:36:52 +01:00
docs s/1.3.1/1.4.0 2012-01-31 23:22:30 +01:00
example example/x11: Set raw terminal mode manually instead of with cfmakeraw() 2012-02-29 22:27:18 +01:00
include Define and use LIBSSH2_INVALID_SOCKET instead of INVALID_SOCKET 2012-03-02 17:36:52 +01:00
m4 Ignore libssh2_config.h.in and stamp-h2 in example/ and remove .cvsignore 2010-01-30 00:25:46 +01:00
nw nw/Makefile.netware: Fix project name typo to avoid needless confusion 2012-02-29 22:31:28 +01:00
src Define and use LIBSSH2_INVALID_SOCKET instead of INVALID_SOCKET 2012-03-02 17:36:52 +01:00
tests Add manpage syntax checker to 'check' target 2011-09-12 15:38:00 +02:00
vms VMS specific: make sure final release can be installed over daily build 2010-05-22 11:06:08 +01:00
win32 Use predefined resource compiler macro. 2011-09-10 16:53:47 +02:00
.gitattribute Ensure that win32/libssh2.dsp will be generated with CRLF line endings 2009-10-17 02:58:53 +02:00
.gitignore ignore TAGS ("make tags" makes them) 2010-03-24 15:38:44 +01:00
acinclude.m4 Fix shell usage. 2009-09-23 09:39:47 +02:00
AUTHORS userauth: Provide more informations if ssh pub key extraction fails 2011-12-19 23:18:46 +01:00
buildconf Make it portable; test uses = for string comparison (not ==). Indent. 2010-02-23 15:27:18 +01:00
config.rpath Use Bruno's M4 macros to search for libgcrypt. 2007-04-05 10:23:54 +00:00
configure.ac example/x11: Build only when sys/un.h is found by configure 2012-02-13 00:40:24 +01:00
COPYING Add re-discovered copyright holders to COPYING 2010-05-05 15:45:17 +07:00
get_ver.awk Added copyright define to libssh2.h and use it for binary builds. 2010-08-15 04:09:01 +02:00
git2news.pl NEWS: auto-generated from git 2011-04-04 13:31:33 +02:00
HACKING Mention libssh2-style.el. 2009-10-29 10:39:15 +01:00
libssh2-style.el helper script for emacs users to get the code style done libssh2-style 2008-12-20 12:36:50 +00:00
libssh2.pc.in libssh2.pc.in: Fixed spelling in pkgconfig file 2011-08-05 14:33:26 -07:00
Makefile.am More MinGW makefile tweaks. 2011-09-10 14:10:45 +02:00
Makefile.inc crypto: unify the generic functions 2010-12-19 00:00:50 +01:00
maketgz maketgz: use git2news.pl by the correct name 2011-04-05 19:19:49 +02:00
NEWS NEWS: auto-generated from git 2011-04-04 13:31:33 +02:00
NMakefile Move examples from example/simple to example/. 2009-12-19 10:56:03 +01:00
README Update mailing list URL to new address 2009-07-10 20:11:29 +02:00
RELEASE-NOTES RELEASE-NOTES: synced with 6bd584d29 for 1.4.0 2012-01-31 23:23:04 +01:00
TODO TODO: remove issues we (sort of) did already 2011-12-09 14:21:36 +01:00

libssh2 - SSH2 library
======================

libssh2 is a library implementing the SSH2 protocol, available under
the revised BSD license.

Web site: http://www.libssh2.org/

Mailing list: http://cool.haxx.se/mailman/listinfo/libssh2-devel

Generic installation instructions are in INSTALL.  Some ./configure
options deserve additional comments:

	* --enable-crypt-none

		The SSH2 Transport allows for unencrypted data
		transmission using the "none" cipher.  Because this is
		such a huge security hole, it is typically disabled on
		SSH2 implementations and is disabled in libssh2 by
		default as well.

		Enabling this option will allow for "none" as a
		negotiable method, however it still requires that the
		method be advertized by the remote end and that no
		more-preferable methods are available.

	* --enable-mac-none

		The SSH2 Transport also allows implementations to
		forego a message authentication code.  While this is
		less of a security risk than using a "none" cipher, it
		is still not recommended as disabling MAC hashes
		removes a layer of security.

		Enabling this option will allow for "none" as a
		negotiable method, however it still requires that the
		method be advertized by the remote end and that no
		more-preferable methods are available.

	* --disable-gex-new

		The diffie-hellman-group-exchange-sha1 (dh-gex) key
		exchange method originally defined an exchange
		negotiation using packet type 30 to request a
		generation pair based on a single target value.  Later
		refinement of dh-gex provided for range and target
		values.  By default libssh2 will use the newer range
		method.

		If you experience trouble connecting to an old SSH
		server using dh-gex, try this option to fallback on
		the older more reliable method.

  	* --with-libgcrypt
  	* --without-libgcrypt
	* --with-libgcrypt-prefix=DIR

		libssh2 can use the Libgcrypt library
		(http://www.gnupg.org/) for cryptographic operations.
		Either Libgcrypt or OpenSSL is required.

		Configure will attempt to locate Libgcrypt
		automatically.

 		If your installation of Libgcrypt is in another
		location, specify it using --with-libgcrypt-prefix.

	* --with-openssl
	* --without-openssl
	* --with-libssl-prefix=[DIR]

		libssh2 can use the OpenSSL library
		(http://www.openssl.org) for cryptographic operations.
		Either Libgcrypt or OpenSSL is required.

		Configure will attempt to locate OpenSSL in the
		default location.

		If your installation of OpenSSL is in another
		location, specify it using --with-libssl-prefix.

	* --with-libz
	* --without-libz
	* --with-libz-prefix=[DIR]

		If present, libssh2 will attempt to use the zlib
		(http://www.zlib.org) for payload compression, however
		zlib is not required.

		If your installation of Libz is in another location,
		specify it using --with-libz-prefix.

	* --enable-debug

		Will make the build use more pedantic and strict compiler
		options as well as enable the libssh2_trace() function (for
		showing debug traces).