Portable OpenSSH
Go to file
Damien Miller 34132e54cb - Merged OpenBSD IPv6 patch:
- [sshd.c sshd.8 sshconnect.c ssh.h ssh.c servconf.h servconf.c scp.1]
     [scp.c packet.h packet.c login.c log.c canohost.c channels.c]
     [hostfile.c sshd_config]
     ipv6 support: mostly gethostbyname->getaddrinfo/getnameinfo, new
     features: sshd allows multiple ListenAddress and Port options. note
     that libwrap is not IPv6-ready. (based on patches from
     fujiwara@rcac.tdi.co.jp)
   - [ssh.c canohost.c]
     more hints (hints.ai_socktype=SOCK_STREAM) for getaddrinfo,
     from itojun@
   - [channels.c]
     listen on _all_ interfaces for X11-Fwd (hints.ai_flags = AI_PASSIVE)
   - [packet.h]
     allow auth-kerberos for IPv4 only
   - [scp.1 sshd.8 servconf.h scp.c]
     document -4, -6, and 'ssh -L 2022/::1/22'
   - [ssh.c]
     'ssh @host' is illegal (null user name), from
     karsten@gedankenpolizei.de
   - [sshconnect.c]
     better error message
   - [sshd.c]
     allow auth-kerberos for IPv4 only
 - Big IPv6 merge:
   - Cleanup overrun in sockaddr copying on RHL 6.1
   - Replacements for getaddrinfo, getnameinfo, etc based on versions
     from patch from KIKUCHI Takahiro <kick@kyoto.wide.ad.jp>
   - Replacement for missing structures on systems that lack IPv6
   - record_login needed to know about AF_INET6 addresses
   - Borrowed more code from OpenBSD: rresvport_af and requisites
2000-01-14 15:45:46 +11:00
packages Prepare for V_1_2_1_PRE25 2000-01-06 13:51:32 +11:00
acconfig.h - Merged OpenBSD IPv6 patch: 2000-01-14 15:45:46 +11:00
atomicio.c - Integrated patchs from Juergen Keil <jk@tools.de> 1999-12-15 09:06:28 +11:00
auth-krb4.c - Merged OpenBSD CVS changes: 1999-12-06 11:47:28 +11:00
auth-pam.c - Removed most of the pam code into its own file auth-pam.[ch]. This 1999-12-30 15:08:44 +11:00
auth-pam.h - Removed most of the pam code into its own file auth-pam.[ch]. This 1999-12-30 15:08:44 +11:00
auth-passwd.c - Fixed annoying DES corruption problem. libcrypt has been 2000-01-06 12:03:12 +11:00
auth-rh-rsa.c - More reformatting merged from OpenBSD CVS 1999-11-25 11:54:57 +11:00
auth-rhosts.c - OpenBSD CVS updates: 1999-12-27 23:54:55 +11:00
auth-rsa.c - Merged OpenBSD CVS changes: 1999-12-06 11:47:28 +11:00
auth-skey.c - Fixes to auth-skey to enable it to use the standard OpenSSL libraries 2000-01-11 10:59:47 +11:00
authfd.c - Merged OpenBSD CVS changes: 1999-12-16 13:18:04 +11:00
authfd.h - More reformatting merged from OpenBSD CVS 1999-11-25 11:54:57 +11:00
authfile.c - Merged more OpenBSD changes: 1999-12-07 15:38:31 +11:00
bsd-bindresvport.c - Merged OpenBSD IPv6 patch: 2000-01-14 15:45:46 +11:00
bsd-bindresvport.h - Merged OpenBSD IPv6 patch: 2000-01-14 15:45:46 +11:00
bsd-daemon.c - Merged more Solaris support from Marc G. Fournier 1999-11-20 12:18:40 +11:00
bsd-daemon.h - Renamed BSD helper function files to bsd-* 1999-11-19 15:32:34 +11:00
bsd-login.c 19991226 1999-12-26 10:21:48 +11:00
bsd-login.h - Prepare for 1.2.1pre20 1999-12-25 10:11:29 +11:00
bsd-misc.c Doc updates 2000-01-06 20:28:41 +11:00
bsd-misc.h Doc updates 2000-01-06 20:28:41 +11:00
bsd-mktemp.c - Rename helper.[ch] to (more appropriate) bsd-misc.[ch] 1999-12-29 19:56:30 +11:00
bsd-mktemp.h - Renamed BSD helper function files to bsd-* 1999-11-19 15:32:34 +11:00
bsd-rresvport.c - Merged OpenBSD IPv6 patch: 2000-01-14 15:45:46 +11:00
bsd-rresvport.h - Merged OpenBSD IPv6 patch: 2000-01-14 15:45:46 +11:00
bsd-snprintf.c - Replacement for getpagesize() for systems which lack it 1999-12-28 10:19:16 +11:00
bsd-snprintf.h - Add definition for __P() 1999-11-26 12:21:24 +11:00
bsd-strlcat.c - Added OpenBSD bsd-strlcat.c, created bsd-strlcat.h 1999-11-22 13:57:07 +11:00
bsd-strlcat.h - Added OpenBSD bsd-strlcat.c, created bsd-strlcat.h 1999-11-22 13:57:07 +11:00
bsd-strlcpy.c - Renamed BSD helper function files to bsd-* 1999-11-19 15:32:34 +11:00
bsd-strlcpy.h - Renamed BSD helper function files to bsd-* 1999-11-19 15:32:34 +11:00
bufaux.c - More reformatting merged from OpenBSD CVS 1999-11-25 11:54:57 +11:00
bufaux.h - More reformatting merged from OpenBSD CVS 1999-11-25 11:54:57 +11:00
buffer.c - More reformatting merged from OpenBSD CVS 1999-11-25 11:54:57 +11:00
buffer.h - More reformatting merged from OpenBSD CVS 1999-11-25 11:54:57 +11:00
canohost.c - Merged OpenBSD IPv6 patch: 2000-01-14 15:45:46 +11:00
ChangeLog - Merged OpenBSD IPv6 patch: 2000-01-14 15:45:46 +11:00
channels.c - Merged OpenBSD IPv6 patch: 2000-01-14 15:45:46 +11:00
channels.h - More reformatting merged from OpenBSD CVS 1999-11-25 11:54:57 +11:00
cipher.c - Added better test for inline functions compiler support from 1999-12-15 09:34:31 +11:00
cipher.h - More reformatting merged from OpenBSD CVS 1999-11-25 11:54:57 +11:00
clientloop.c - Merged more OpenBSD changes: 1999-12-07 15:38:31 +11:00
compat.c - More reformatting merged from OpenBSD CVS 1999-11-25 11:54:57 +11:00
compat.h - More reformatting merged from OpenBSD CVS 1999-11-25 11:54:57 +11:00
compress.c - More reformatting merged from OpenBSD CVS 1999-11-25 11:54:57 +11:00
compress.h - More reformatting merged from OpenBSD CVS 1999-11-25 11:54:57 +11:00
config.guess - New config.sub and config.guess to fix problems on SCO. Supplied 2000-01-07 08:56:05 +11:00
config.sub - New config.sub and config.guess to fix problems on SCO. Supplied 2000-01-07 08:56:05 +11:00
configure.in - Merged OpenBSD IPv6 patch: 2000-01-14 15:45:46 +11:00
COPYING.Ylonen Updated COPYING file with usage of RC4 1999-10-30 09:46:20 +10:00
crc32.c - Merged very large OpenBSD source code reformat 1999-11-25 00:26:21 +11:00
crc32.h - More reformatting merged from OpenBSD CVS 1999-11-25 11:54:57 +11:00
CREDITS - New config.sub and config.guess to fix problems on SCO. Supplied 2000-01-07 08:56:05 +11:00
deattack.c - Merged very large OpenBSD source code reformat 1999-11-25 00:26:21 +11:00
deattack.h - Merged very large OpenBSD source code reformat 1999-11-25 00:26:21 +11:00
defines.h - Merged OpenBSD IPv6 patch: 2000-01-14 15:45:46 +11:00
fake-gai-errnos.h - Merged OpenBSD IPv6 patch: 2000-01-14 15:45:46 +11:00
fake-getaddrinfo.c - Merged OpenBSD IPv6 patch: 2000-01-14 15:45:46 +11:00
fake-getaddrinfo.h - Merged OpenBSD IPv6 patch: 2000-01-14 15:45:46 +11:00
fake-getnameinfo.c - Merged OpenBSD IPv6 patch: 2000-01-14 15:45:46 +11:00
fake-getnameinfo.h - Merged OpenBSD IPv6 patch: 2000-01-14 15:45:46 +11:00
fake-socket.h - Merged OpenBSD IPv6 patch: 2000-01-14 15:45:46 +11:00
fingerprint.c Third time lucky 1999-12-07 17:03:33 +11:00
fingerprint.h Third time lucky 1999-12-07 17:03:33 +11:00
fixpaths - Merged OpenBSD IPv6 patch: 2000-01-14 15:45:46 +11:00
getput.h - Merged very large OpenBSD source code reformat 1999-11-25 00:26:21 +11:00
gnome-ssh-askpass.c Use puts instead of printf 1999-11-22 22:42:17 +11:00
hostfile.c - Merged OpenBSD IPv6 patch: 2000-01-14 15:45:46 +11:00
includes.h - Merged OpenBSD IPv6 patch: 2000-01-14 15:45:46 +11:00
INSTALL - Better KrbIV / AFS detection, based on patch from: 2000-01-07 08:45:55 +11:00
install-sh - Added BSD compatible install program and autoconf test, thanks to 1999-11-25 12:31:26 +11:00
log-client.c - Merged very large OpenBSD source code reformat 1999-11-25 00:26:21 +11:00
log-server.c - Merged very large OpenBSD source code reformat 1999-11-25 00:26:21 +11:00
log.c - Merged OpenBSD IPv6 patch: 2000-01-14 15:45:46 +11:00
login.c - Merged OpenBSD IPv6 patch: 2000-01-14 15:45:46 +11:00
Makefile.in - Merged OpenBSD IPv6 patch: 2000-01-14 15:45:46 +11:00
match.c - More reformatting merged from OpenBSD CVS 1999-11-25 11:54:57 +11:00
md5crypt.c - Portability fixes for Irix 5.3 (now compiles OK!) 1999-12-28 15:09:35 +11:00
md5crypt.h - Portability fixes for Irix 5.3 (now compiles OK!) 1999-12-28 15:09:35 +11:00
mpaux.c - OpenBSD CVS Changes 1999-12-14 10:47:15 +11:00
mpaux.h - More reformatting merged from OpenBSD CVS 1999-11-25 11:54:57 +11:00
nchan.c - Merged OpenBSD IPv6 patch: 2000-01-14 15:45:46 +11:00
nchan.h - More reformatting merged from OpenBSD CVS 1999-11-25 11:54:57 +11:00
nchan.ms - Merged OpenBSD IPv6 patch: 2000-01-14 15:45:46 +11:00
OVERVIEW - [OVERVIEW README] typos; green@freebsd 1999-11-21 18:31:57 +11:00
packet.c - Merged OpenBSD IPv6 patch: 2000-01-14 15:45:46 +11:00
packet.h - Merged OpenBSD IPv6 patch: 2000-01-14 15:45:46 +11:00
pty.c - Integration of large HPUX patch from Andre Lucas 1999-12-21 11:18:08 +11:00
pty.h - Merged more OpenBSD changes: 1999-12-07 15:38:31 +11:00
radix.c - More reformatting merged from OpenBSD CVS 1999-11-25 11:54:57 +11:00
readconf.c - Merged OpenBSD CVS changes: 1999-12-06 11:47:28 +11:00
readconf.h - Merged OpenBSD CVS changes: 1999-12-06 11:47:28 +11:00
README Doc updates 2000-01-06 20:28:41 +11:00
README.Ylonen Renamed README -> README.Ylonen 1999-10-30 11:30:35 +10:00
readpass.c - OpenBSD CVS updates: 1999-12-09 10:31:37 +11:00
RFC.nroff Initial revision 1999-10-27 13:42:43 +10:00
rsa.c Added key generation progress meter 1999-12-17 14:02:47 +11:00
rsa.h - More reformatting merged from OpenBSD CVS 1999-11-25 11:54:57 +11:00
scp.1.in - Merged OpenBSD IPv6 patch: 2000-01-14 15:45:46 +11:00
scp.c - Merged OpenBSD IPv6 patch: 2000-01-14 15:45:46 +11:00
servconf.c - Merged OpenBSD IPv6 patch: 2000-01-14 15:45:46 +11:00
servconf.h - Merged OpenBSD IPv6 patch: 2000-01-14 15:45:46 +11:00
serverloop.c - Merged more OpenBSD changes: 1999-12-07 15:38:31 +11:00
ssh_config.in - Automatically correct paths in manpages and configuration files. Patch 1999-12-27 09:23:58 +11:00
ssh-add.1.in - Automatically correct paths in manpages and configuration files. Patch 1999-12-27 09:23:58 +11:00
ssh-add.c - Merged OpenBSD CVS changes: 1999-12-06 11:47:28 +11:00
ssh-agent.1.in - Automatically correct paths in manpages and configuration files. Patch 1999-12-27 09:23:58 +11:00
ssh-agent.c - OpenBSD CVS updates 2000-01-03 23:41:05 +11:00
ssh-askpass Lots of changes: 1999-11-08 15:30:59 +11:00
ssh-keygen.1.in - Automatically correct paths in manpages and configuration files. Patch 1999-12-27 09:23:58 +11:00
ssh-keygen.c - More reformatting merged from OpenBSD CVS 1999-11-25 11:54:57 +11:00
ssh.1.in - Merged OpenBSD IPv6 patch: 2000-01-14 15:45:46 +11:00
ssh.c - Merged OpenBSD IPv6 patch: 2000-01-14 15:45:46 +11:00
ssh.h - Merged OpenBSD IPv6 patch: 2000-01-14 15:45:46 +11:00
sshconnect.c - Merged OpenBSD IPv6 patch: 2000-01-14 15:45:46 +11:00
sshd_config.in - Merged OpenBSD IPv6 patch: 2000-01-14 15:45:46 +11:00
sshd.8.in - Merged OpenBSD IPv6 patch: 2000-01-14 15:45:46 +11:00
sshd.c - Merged OpenBSD IPv6 patch: 2000-01-14 15:45:46 +11:00
sshd.pam.generic - Removed "nullok" directive from default PAM configuration files. 2000-01-03 20:00:52 +11:00
tildexpand.c - Merged more OpenBSD changes: 1999-12-07 15:38:31 +11:00
TODO - Merged OpenBSD IPv6 patch: 2000-01-14 15:45:46 +11:00
ttymodes.c - More reformatting merged from OpenBSD CVS 1999-11-25 11:54:57 +11:00
ttymodes.h - More reformatting merged from OpenBSD CVS 1999-11-25 11:54:57 +11:00
uidswap.c - More reformatting merged from OpenBSD CVS 1999-11-25 11:54:57 +11:00
uidswap.h - Merged very large OpenBSD source code reformat 1999-11-25 00:26:21 +11:00
UPGRADING - Removed "nullok" directive from default PAM configuration files. 2000-01-03 20:00:52 +11:00
version.h - OpenBSD CVS Changes 1999-12-14 10:47:15 +11:00
xmalloc.c - Merged very large OpenBSD source code reformat 1999-11-25 00:26:21 +11:00
xmalloc.h - Merged very large OpenBSD source code reformat 1999-11-25 00:26:21 +11:00

This is the port of OpenBSD's excellent OpenSSH to Linux and other
Unices.

OpenSSH is based on the last free version of Tatu Ylonen's SSH with
all patent-encumbered algorithms removed (to external libraries), all
known security bugs fixed, new features reintroduced and many other
clean-ups. More information about SSH itself can be found in the file
README.Ylonen. OpenSSH has been created by Aaron Campbell, Bob Beck,
Markus Friedl, Niels Provos, Theo de Raadt, and Dug Song. It has a
homepage at http://www.openssh.com/

This port consists of the re-introduction of autoconf support, PAM
support (for Linux and Solaris), EGD[1] support, SOCKS support (using
the Dante [6] libraries and replacements for OpenBSD library functions
that are (regrettably) absent from other unices. This port has been
best tested on Linux, Solaris, HPUX, NetBSD and Irix. Support for AIX,
SCO, NeXT and other Unices is underway. This version actively tracks
changes in the OpenBSD CVS repository.

The PAM support is now more functional than the popular packages of
commercial ssh-1.2.x. It checks "account" and "session" modules for
all logins, not just when using password authentication.

All new code is released under a XFree style license, which is very
liberal. Please refer to the source files for details. The code in
bsd-*.[ch] is from the OpenBSD project and has its own license (again,
see the source files for details).

OpenSSH depends on Zlib[2], OpenSSL[3] and optionally PAM[4] and
Dante[6]. To build the GNOME[5] pass-phrase requester
(--with-gnome-askpass), you will need the GNOME libraries installed.
If you are building OpenSSH on a Unix which lacks a kernel random
number pool (/dev/random), you will need to install EGD[1]. 

There is now several mailing lists for this port of OpenSSH. Please
refer to http://violet.ibs.com.au/openssh/list.html for details on how
to join.

Please send bug reports and patches to the mailing list
openssh-unix-dev@mindrot.org. The list is currently open to posting by
unsubscribed users.

Please refer to the INSTALL document for information on how to install
OpenSSH on your system. The UPGRADING document details differences 
between this port of OpenSSH and F-Secure SSH 1.x.

Damien Miller <djm@ibs.com.au>
Internet Business Solutions

Miscellania - 

This version of SSH is based upon code retrieved from the OpenBSD CVS
repository which in turn was based on the last free 
version of SSH released by Tatu Ylonen.

Code in bsd-misc.[ch] and gnome-ssh-askpass.c is Copyright 1999 Damien
Miller & Internet Business Solutions and is released under a X11-style
license (see source files for details).

References -

[1] http://www.lothar.com/tech/crypto/
[2] http://www.cdrom.com/pub/infozip/zlib/
[3] http://www.openssl.org/
[4] http://www.kernel.org/pub/linux/libs/pam/ (PAM is standard on Solaris)
[5] http://www.gnome.org/
[6] http://www.inet.no/dante