Import OpenSSH-5.9p1.
authorPeter Avalos <pavalos@dragonflybsd.org>
Tue, 20 Sep 2011 22:19:10 +0000 (15:19 -0700)
committerPeter Avalos <pavalos@dragonflybsd.org>
Tue, 20 Sep 2011 22:23:47 +0000 (15:23 -0700)
commit1c188a7f014f0a2a8b80748ed7de5c096aa8b1fd
tree60aa682c048781649dab43b37e71a0d4ad081887
parent5efbf4b6b3c9f21e5a5d0dedbfc4c2d9cc26a6cd
Import OpenSSH-5.9p1.

 * Introduce sandboxing of the pre-auth privsep child using an optional
   sshd_config(5) "UsePrivilegeSeparation=sandbox" mode that enables
   mandatory restrictions on the syscalls the privsep child can perform.
   This intention is to prevent a compromised privsep child from being
   used to attack other hosts (by opening sockets and proxying) or
   probing local kernel attack surface.

   The rlimit sandbox is a fallback choice for platforms that don't
   support a better one; it uses setrlimit() to reset the hard-limit
   of file descriptors and processes to zero, which should prevent
   the privsep child from forking or opening new network connections.

 * Add new SHA256-based HMAC transport integrity modes from
   http://www.ietf.org/id/draft-dbider-sha2-mac-for-ssh-02.txt
   These modes are hmac-sha2-256, hmac-sha2-256-96, hmac-sha2-512,
   and hmac-sha2-512-96, and are available by default in ssh(1) and
   sshd(8)

 * The pre-authentication sshd(8) privilege separation slave process
   now logs via a socket shared with the master process, avoiding the
   need to maintain /dev/log inside the chroot.

 * ssh(1) now warns when a server refuses X11 forwarding

 * sshd_config(5)'s AuthorizedKeysFile now accepts multiple paths,
   separated by whitespace. The undocumented AuthorizedKeysFile2
   option is deprecated (though the default for AuthorizedKeysFile
   includes .ssh/authorized_keys2)

 * sshd_config(5): similarly deprecate UserKnownHostsFile2 and
   GlobalKnownHostsFile2 by making UserKnownHostsFile and
   GlobalKnownHostsFile accept multiple options and default to
   include known_hosts2

 * Retain key comments when loading v.2 keys. These will be visible
   in "ssh-add -l" and other places. bz#439

 * ssh(1) and sshd(8): set IPv6 traffic class from IPQoS (as well as
   IPv4 ToS/DSCP). bz#1855

 * ssh_config(5)'s ControlPath option now expands %L to the host
   portion of the destination host name.

 * ssh_config(5) "Host" options now support negated Host matching, e.g.

     Host *.example.org !c.example.org
        User mekmitasdigoat

   Will match "a.example.org", "b.example.org", but not "c.example.org"

 * ssh_config(5): a new RequestTTY option provides control over when a
   TTY is requested for a connection, similar to the existing -t/-tt/-T
   ssh(1) commandline options.

 * sshd(8): allow GSSAPI authentication to detect when a server-side
   failure causes authentication failure and don't count such failures
   against MaxAuthTries; bz#1244

 * ssh-keygen(1): Add -A option. For each of the key types (rsa1, rsa,
   dsa and ecdsa) for which host keys do not exist, generate the host
   keys with the default key file path, an empty passphrase, default
   bits for the key type, and default comment. This is useful for
   system initialization scripts.

 * ssh(1): Allow graceful shutdown of multiplexing: request that a mux
   server removes its listener socket and refuse future multiplexing
   requests but don't kill existing connections. This may be requested
   using "ssh -O stop ..."

 * ssh-add(1) now accepts keys piped from standard input. E.g.
   "ssh-add - < /path/to/key"

 * ssh-keysign(8) now signs hostbased authentication
   challenges correctly using ECDSA keys; bz#1858

 * sftp(1): document that sftp accepts square brackets to delimit
   addresses (useful for IPv6); bz#1847a

 * ssh(1): when using session multiplexing, the master process will
   change its process title to reflect the control path in use and
   when a ControlPersist-ed master is waiting to close; bz#1883 and
   bz#1911

 * Other minor bugs fixed: 1849 1861 1862 1869 1875 1878 1879 1892
   1900 1905 1913
66 files changed:
crypto/openssh/PROTOCOL.mux
crypto/openssh/README
crypto/openssh/README.DELETED
crypto/openssh/auth-rsa.c
crypto/openssh/auth-skey.c
crypto/openssh/auth.c
crypto/openssh/auth.h
crypto/openssh/auth2-gss.c
crypto/openssh/auth2-pubkey.c
crypto/openssh/auth2.c
crypto/openssh/authfd.c
crypto/openssh/authfile.c
crypto/openssh/authfile.h
crypto/openssh/channels.c
crypto/openssh/channels.h
crypto/openssh/clientloop.c
crypto/openssh/clientloop.h
crypto/openssh/defines.h
crypto/openssh/entropy.c
crypto/openssh/gss-serv.c
crypto/openssh/key.c
crypto/openssh/log.c
crypto/openssh/log.h
crypto/openssh/mac.c
crypto/openssh/misc.c
crypto/openssh/misc.h
crypto/openssh/moduli.5
crypto/openssh/monitor.c
crypto/openssh/monitor.h
crypto/openssh/monitor_wrap.c
crypto/openssh/monitor_wrap.h
crypto/openssh/mux.c
crypto/openssh/myproposal.h
crypto/openssh/openbsd-compat/bsd-cygwin_util.h
crypto/openssh/openbsd-compat/openssl-compat.h
crypto/openssh/openbsd-compat/port-linux.h
crypto/openssh/packet.c
crypto/openssh/packet.h
crypto/openssh/pathnames.h
crypto/openssh/readconf.c
crypto/openssh/readconf.h
crypto/openssh/sandbox-rlimit.c [new file with mode: 0644]
crypto/openssh/servconf.c
crypto/openssh/servconf.h
crypto/openssh/serverloop.c
crypto/openssh/session.c
crypto/openssh/sftp-server.c
crypto/openssh/sftp.1
crypto/openssh/ssh-add.c
crypto/openssh/ssh-agent.c
crypto/openssh/ssh-keygen.1
crypto/openssh/ssh-keygen.c
crypto/openssh/ssh-keyscan.c
crypto/openssh/ssh-keysign.c
crypto/openssh/ssh-pkcs11-helper.c
crypto/openssh/ssh-pkcs11.c
crypto/openssh/ssh-sandbox.h [copied from crypto/openssh/openbsd-compat/port-linux.h with 58% similarity]
crypto/openssh/ssh.1
crypto/openssh/ssh.c
crypto/openssh/ssh_config.5
crypto/openssh/sshconnect.c
crypto/openssh/sshconnect2.c
crypto/openssh/sshd.8
crypto/openssh/sshd.c
crypto/openssh/sshd_config
crypto/openssh/sshd_config.5