ChangeLog   [plain text]

 - (djm) Release OpenSSH-5.6p1

 - (dtucker) [ openbsd-compat/
   openbsd-compat/openbsd-compat.h openbsd-compat/strptime.c] Add strptime to
   the compat library which helps on platforms like old IRIX.  Based on work
   by djm, tested by Tom Christensen.
 - OpenBSD CVS Sync
   - 2010/08/12 21:49:44
     close any extra file descriptors inherited from parent at start and
     reopen stdin/stdout to /dev/null when forking for ControlPersist.
     prevents tools that fork and run a captive ssh for communication from
     failing to exit when the ssh completes while they wait for these fds to
     close. The inherited fds may persist arbitrarily long if a background
     mux master has been started by ControlPersist. cvs and scp were effected
     by this.
     "please commit" markus@
 - (djm) [regress/README.regress] typo

 - (tim) [regress/ regress/ regress/
   regress/] Under certain conditions when testing with sudo
   tests would fail because the pidfile could not be read by a regular user.
   "cat: cannot open ...../regress/pidfile: Permission denied (error 13)"
   Make sure cat is run by $SUDO.  no objection from me. djm@
 - (tim) [auth.c] add cast to quiet compiler. Change only affects SVR5 systems.

 - (djm) bz#1561: don't bother setting IFF_UP on tun(4) device if it is
   already set. Makes FreeBSD user openable tunnels useful; patch from
   richard.burakowski+ossh AT, ok dtucker@
 - (dtucker) bug #1530: strip trailing ":" from hostname in ssh-copy-id.
   based in part on a patch from Colin Watson, ok djm@

 - OpenBSD CVS Sync
   - 2010/08/08 16:26:42
     crank to 5.6
 - (djm) [README contrib/caldera/openssh.spec contrib/redhat/openssh.spec]
   [contrib/suse/openssh.spec] Crank version numbers

 - OpenBSD CVS Sync
   - 2010/08/04 05:37:01
     [ssh.1 ssh_config.5 sshd.8]
     Remove mentions of weird "addr/port" alternate address format for IPv6
     addresses combinations. It hasn't worked for ages and we have supported
     the more commen "[addr]:port" format for a long time. ok jmc@ markus@
   - 2010/08/04 05:40:39
     [PROTOCOL.certkeys ssh-keygen.c]
     tighten the rules for certificate encoding by requiring that options
     appear in lexical order and make our ssh-keygen comply. ok markus@
   - 2010/08/04 05:42:47
     [auth.c auth2-hostbased.c authfile.c authfile.h ssh-keysign.8]
     [ssh-keysign.c ssh.c]
     enable certificates for hostbased authentication, from Iain Morgan;
     "looks ok" markus@
   - 2010/08/04 05:49:22
     commited the wrong version of the hostbased certificate diff; this
     version replaces some strlc{py,at} verbosity with xasprintf() at
     the request of markus@
   - 2010/08/04 06:07:11
     [ssh-keygen.1 ssh-keygen.c]
     Support CA keys in PKCS#11 tokens; feedback and ok markus@
   - 2010/08/04 06:08:40
     clean for -Wuninitialized (Id sync only; portable had this change)
   - 2010/08/05 13:08:42
     Fix a trio of bugs in the local/remote window calculation for datagram
     data channels (i.e. TunnelForward):
     Calculate local_consumed correctly in channel_handle_wfd() by measuring
     the delta to buffer_len(c->output) from when we start to when we finish.
     The proximal problem here is that the output_filter we use in portable
     modified the length of the dequeued datagram (to futz with the headers
     for !OpenBSD).
     In channel_output_poll(), don't enqueue datagrams that won't fit in the
     peer's advertised packet size (highly unlikely to ever occur) or which
     won't fit in the peer's remaining window (more likely).
     In channel_input_data(), account for the 4-byte string header in
     datagram packets that we accept from the peer and enqueue in c->output.
     report, analysis and testing 2/3 cases from wierbows AT;
     "looks good" markus@

 - (dtucker) [monitor.c] Bug #1795: Initialize the values to be returned from
   PAM to sane values in case the PAM method doesn't write to them.  Spotted by
   Bitman Zhou, ok djm@.
 - OpenBSD CVS Sync
   - 2010/07/16 04:45:30
     avoid bogus compiler warning
   - 2010/07/16 14:07:35
     more timing paranoia - compare all parts of the expected decrypted
     data before returning. AFAIK not exploitable in the SSH protocol.
     "groovy" deraadt@
   - 2010/07/19 03:16:33
     bz#1797: fix swapped args in upload_dir_internal(), breaking recursive
     upload depth checks and causing verbose printing of transfers to always
     be turned on; patch from imorgan AT
   - 2010/07/19 09:15:12
     [clientloop.c readconf.c readconf.h ssh.c ssh_config.5]
     add a "ControlPersist" option that automatically starts a background
     ssh(1) multiplex master when connecting. This connection can stay alive
     indefinitely, or can be set to automatically close after a user-specified
     duration of inactivity. bz#1330 - patch by dwmw2 AT, but
     further hacked on by wmertens AT, apb AT,
     martin-mindrot-bugzilla AT and myself; "looks ok" markus@
   - 2010/07/21 02:10:58
     sync timingsafe_bcmp() with the one dempsky@ committed to sys/lib/libkern
   - 2010/07/23 08:49:25
     Ciphers is documented in ssh_config(5) these days

 - (dtucker) [contrib/ssh-copy-ud.1] Bug #1786: update ssh-copy-id.1 with more
   details about its behaviour WRT existing directories.  Patch from
   asguthrie at gmail com, ok djm.

 - (djm) OpenBSD CVS Sync
   - 2010/07/02 04:32:44
     unbreak strdelim() skipping past quoted strings, e.g.
     AllowUsers "blah blah" blah
     was broken; report and fix in bz#1757 from bitman.zhou AT
     ok dtucker;
   - 2010/07/12 22:38:52
     Make ExitOnForwardFailure work with fork-after-authentication ("ssh -f")
     for protocol 2. ok markus@
   - 2010/07/12 22:41:13
     [ssh.c ssh_config.5]
     expand %h to the hostname in ssh_config Hostname options. While this
     sounds useless, it is actually handy for working with unqualified
     Host *.*
        Hostname %h
     Host *
     "I like it" markus@
   - 2010/07/13 11:52:06
     [auth-rsa.c channels.c jpake.c key.c misc.c misc.h monitor.c]
     [packet.c ssh-rsa.c]
     implement a timing_safe_cmp() function to compare memory without leaking
     timing information by short-circuiting like memcmp() and use it for
     some of the more sensitive comparisons (though nothing high-value was
     readily attackable anyway); "looks ok" markus@
   - 2010/07/13 23:13:16
     [auth-rsa.c channels.c jpake.c key.c misc.c misc.h monitor.c packet.c]
   - 2010/07/14 17:06:58
     finally ssh synopsis looks nice again! this commit just removes a ton of
     hacks we had in place to make it work with old groff;
   - 2010/07/15 21:20:38
     repair incorrect block nesting, which screwed up indentation;
     problem reported and fix OK by jmc@

 - (tim) [contrib/redhat/openssh.spec] Bug 1796: Test for skip_x11_askpass
   (line 77) should have been for no_x11_askpass. 

 - (djm) OpenBSD CVS Sync
   - 2010/06/26 00:57:07
     tweak previous;
   - 2010/06/26 23:04:04
     oops, forgot to #include <canohost.h>; spotted and patch from chl@
   - 2010/06/29 23:15:30
     [ssh-keygen.1 ssh-keygen.c]
     allow import (-i) and export (-e) of PEM and PKCS#8 encoded keys;
     bz#1749; ok markus@
   - 2010/06/29 23:16:46
     [auth2-pubkey.c sshd_config.5]
     allow key options (command="..." and friends) in AuthorizedPrincipals;
     ok markus@
   - 2010/06/30 07:24:25
     tweak previous;
   - 2010/06/30 07:26:03
     sort usage();
   - 2010/06/30 07:28:34
     tweak previous;
   - 2010/07/01 13:06:59
     Fix a longstanding problem where if you suspend scp at the
     password/passphrase prompt the terminal mode is not restored.
     OK djm@
   - 2010/06/27 19:19:56
     fix how we run the tests so we can successfully use SUDO='sudo -E'
     in our env
   - 2010/06/29 23:59:54
     regress tests for key options in AuthorizedPrincipals

 - (tim) [openbsd-compat/port-uw.c] Reorder includes. auth-options.h now needs

 - (djm) OpenBSD CVS Sync
   - 2010/05/21 05:00:36
     colon() returns char*, so s/return (0)/return NULL/
   - 2010/06/08 21:32:19
     check length of value returned  C_GetAttributValue for != 0
     from; bugzilla #1773; ok dtucker@
   - 2010/06/17 07:07:30
     Correct sizing of object to be allocated by calloc(), replacing
     sizeof(state) with sizeof(*state). This worked by accident since
     the struct contained a single int at present, but could have broken
     in the future. patch from hyc AT
   - 2010/06/18 00:58:39
     unbreak ls in working directories that contains globbing characters in
     their pathnames. bz#1655 reported by vgiffin AT
   - 2010/06/18 03:16:03
     Missing check for chroot_director == "none" (we already checked against
     NULL); bz#1564 from Jan.Pechanec AT Sun.COM
   - 2010/06/18 04:43:08
     fix memory leak in do_realpath() error path; bz#1771, patch from
     anicka AT
   - 2010/06/22 04:22:59
     [servconf.c sshd_config.5]
     expose some more sshd_config options inside Match blocks:
       AuthorizedKeysFile AuthorizedPrincipalsFile
       HostbasedUsesNameFromPacketOnly PermitTunnel
     bz#1764; feedback from imorgan AT; ok dtucker@
   - 2010/06/22 04:32:06
     standardise error messages when attempting to open private key
     files to include "progname: filename: error reason"
     bz#1783; ok dtucker@
   - 2010/06/22 04:49:47
     queue auth debug messages for bad ownership or permissions on the user's
     keyfiles. These messages will be sent after the user has successfully
     authenticated (where our client will display them with LogLevel=debug).
     bz#1554; ok dtucker@
   - 2010/06/22 04:54:30
     replace verbose and overflow-prone Linebuf code with read_keyfile_line()
     based on patch from joachim AT; bz#1565; ok dtucker@
   - 2010/06/22 04:59:12
     include the user name on "subsystem request for ..." log messages;
     bz#1571; ok dtucker@
   - 2010/06/23 02:59:02
     fix printing of extensions in v01 certificates that I broke in r1.190
   - 2010/06/25 07:14:46
     [channels.c mux.c readconf.c readconf.h ssh.h]
     bz#1327: remove hardcoded limit of 100 permitopen clauses and port
     forwards per direction; ok markus@ stevesk@
   - 2010/06/25 07:20:04
     [channels.c session.c]
     bz#1750: fix requirement for /dev/null inside ChrootDirectory for
     internal-sftp accidentally introduced in r1.253 by removing the code
     that opens and dup /dev/null to stderr and modifying the channels code
     to read stderr but discard it instead; ok markus@
   - 2010/06/25 08:46:17
     [auth1.c auth2-none.c]
     skip the initial check for access with an empty password when
     PermitEmptyPasswords=no; bz#1638; ok markus@
   - 2010/06/25 23:10:30
     log the hostname and address that we connected to at LogLevel=verbose
     after authentication is successful to mitigate "phishing" attacks by
     servers with trusted keys that accept authentication silently and
     automatically before presenting fake password/passphrase prompts;
     "nice!" markus@
   - 2010/06/25 23:10:30
     log the hostname and address that we connected to at LogLevel=verbose
     after authentication is successful to mitigate "phishing" attacks by
     servers with trusted keys that accept authentication silently and
     automatically before presenting fake password/passphrase prompts;
     "nice!" markus@

 - (djm) [loginrec.c] crank LINFO_NAMESIZE (username length) to 512
   bz#1579; ok dtucker

 - (djm) [contrib/ssh-copy-id] Update key file explicitly under ~
   rather than assuming that $CWD == $HOME. bz#1500, patch from
   timothy AT

 - (tim) [contrib/cygwin/README] Remove a reference to the obsolete
   minires-devel package, and to add the reference to the libedit-devel
   package since CYgwin now provides libedit. Patch from Corinna Vinschen.

 - (djm) OpenBSD CVS Sync
   - 2010/05/07 11:31:26
     [regress/Makefile regress/]
     regress tests for AuthorizedPrincipalsFile and "principals=" key option.
     feedback and ok markus@
   - 2010/05/11 02:58:04
     don't accept certificates marked as "cert-authority" here; ok markus@
   - 2010/05/14 00:47:22
     check that the certificate matches the corresponding private key before
     grafting it on
   - 2010/05/14 23:29:23
     [channels.c channels.h mux.c ssh.c]
     Pause the mux channel while waiting for reply from aynch callbacks.
     Prevents misordering of replies if new requests arrive while waiting.
     Extend channel open confirm callback to allow signalling failure
     conditions as well as success. Use this to 1) fix a memory leak, 2)
     start using the above pause mechanism and 3) delay sending a success/
     failure message on mux slave session open until we receive a reply from
     the server.
     motivated by and with feedback from markus@
   - 2010/05/16 12:55:51
     [PROTOCOL.mux clientloop.h mux.c readconf.c readconf.h ssh.1 ssh.c]
     mux support for remote forwarding with dynamic port allocation,
     use with
        LPORT=`ssh -S muxsocket -R0:localhost:25 -O forward somehost`
     feedback and ok djm@
   - 2010/05/20 11:25:26
     fix logspam when key options (from="..." especially) deny non-matching
     keys; reported by henning@ also bz#1765; ok markus@ dtucker@
   - 2010/05/20 23:46:02
     [PROTOCOL.certkeys auth-options.c ssh-keygen.c]
     Move the permit-* options to the non-critical "extensions" field for v01
     certificates. The logic is that if another implementation fails to
     implement them then the connection just loses features rather than fails
     ok markus@

 - (dtucker) [] Bug #1770: Link libopenbsd-compat twice to solve
   circular dependency problem on old or odd platforms.  From Tom Lane, ok
 - (djm) [openbsd-compat/openssl-compat.h] Fix build breakage on older
   libcrypto by defining OPENSSL_[DR]SA_MAX_MODULUS_BITS if they aren't
   already. ok dtucker@

 - OpenBSD CVS Sync
   - 2010/04/23 01:47:41
     bz#1740: display a more helpful error message when $HOME is
     inaccessible while trying to create .ssh directory. Based on patch
     from jchadima AT; ok dtucker@
   - 2010/04/23 22:27:38
     set "detach_close" flag when registering channel cleanup callbacks.
     This causes the channel to close normally when its fds close and
     hangs when terminating a mux slave using ~. bz#1758; ok markus@
   - 2010/04/23 22:42:05
     set stderr to /dev/null for subsystems rather than just closing it.
     avoids hangs if a subsystem or shell initialisation writes to stderr.
     bz#1750; ok markus@
   - 2010/04/23 22:48:31
     refuse to generate keys longer than OPENSSL_[RD]SA_MAX_MODULUS_BITS,
     since we would refuse to use them anyway. bz#1516; ok dtucker@
   - 2010/04/26 22:28:24
     bz#1502: authctxt.success is declared as an int, but passed by
     reference to function that accepts sig_atomic_t*. Convert it to
     the latter; ok markus@ dtucker@
   - 2010/05/01 02:50:50
     typo; jmeltzer@
   - 2010/05/05 04:22:09
     restore mput and mget which got lost in the tab-completion changes.
     found by Kenneth Whitaker, ok djm@
   - 2010/05/07 11:30:30
     [auth-options.c auth-options.h auth.c auth.h auth2-pubkey.c]
     [key.c servconf.c servconf.h sshd.8 sshd_config.5]
     add some optional indirection to matching of principal names listed
     in certificates. Currently, a certificate must include the a user's name
     to be accepted for authentication. This change adds the ability to
     specify a list of certificate principal names that are acceptable.
     When authenticating using a CA trusted through ~/.ssh/authorized_keys,
     this adds a new principals="name1[,name2,...]" key option.
     For CAs listed through sshd_config's TrustedCAKeys option, a new config
     option "AuthorizedPrincipalsFile" specifies a per-user file containing
     the list of acceptable names.
     If either option is absent, the current behaviour of requiring the
     username to appear in principals continues to apply.
     These options are useful for role accounts, disjoint account namespaces
     and "user@realm"-style naming policies in certificates.
     feedback and ok markus@
   - 2010/05/07 12:49:17
     tweak previous;

 - (dtucker) [] Bug #1756: Check for the existence of a lib64 dir
   in the openssl install directory (some newer openssl versions do this on at
   least some amd64 platforms).

 - OpenBSD CVS Sync
   - 2010/04/16 06:45:01
     tweak previous; ok djm
   - 2010/04/16 06:47:04
     [ssh-keygen.1 ssh-keygen.c]
     tweak previous; ok djm
   - 2010/04/16 21:14:27
     oops, %r => remote username, not %u
   - 2010/04/16 01:58:45
     [regress/ regress/]
     regression tests for v01 certificate format
     includes interop tests for v00 certs
 - (dtucker) [contrib/aix/] Fix creation of ssh_prng_cmds.default

 - (djm) Release openssh-5.5p1
 - OpenBSD CVS Sync
   - 2010/03/26 03:13:17
     allow buffer_get_int_ret/buffer_get_int64_ret to take a NULL pointer
     argument to allow skipping past values in a buffer
   - 2010/03/26 06:54:36
     tweak previous;
   - 2010/03/27 14:26:55
     tweak previous; ok dtucker
   - 2010/04/10 00:00:16
     bz#1746 - suppress spurious tty warning when using -O and stdin
     is not a tty; ok dtucker@ markus@
   - 2010/04/10 00:04:30
     fix terminology: we didn't find a certificate in known_hosts, we found
     a CA key
   - 2010/04/10 02:08:44
     bz#1698: kill channel when pty allocation requests fail. Fixed
     stuck client if the server refuses pty allocation.
     ok dtucker@ "think so" markus@
   - 2010/04/10 02:10:56
     show the key type that we are offering in debug(), helps distinguish
     between certs and plain keys as the path to the private key is usually
     the same.
   - 2010/04/10 05:48:16
     fix NULL dereference; from matthew.haub AT
   - 2010/04/14 22:27:42
     [ssh_config.5 sshconnect.c]
     expand %r => remote username in ssh_config:ProxyCommand;
     ok deraadt markus
   - 2010/04/15 20:32:55
     retry lookup for private key if there's no matching key with CKA_SIGN
     attribute enabled; this fixes fixes MuscleCard support (bugzilla #1736)
     ok djm@
   - 2010/04/16 01:47:26
     [PROTOCOL.certkeys auth-options.c auth-options.h auth-rsa.c]
     [auth2-pubkey.c authfd.c key.c key.h myproposal.h ssh-add.c]
     [ssh-agent.c ssh-dss.c ssh-keygen.1 ssh-keygen.c ssh-rsa.c]
     [sshconnect.c sshconnect2.c sshd.c]
     revised certificate format ssh-{dss,rsa} with the
     following changes:
     move the nonce field to the beginning of the certificate where it can
     better protect against chosen-prefix attacks on the signature hash
     Rename "constraints" field to "critical options"
     Add a new non-critical "extensions" field
     Add a serial number
     The older format is still support for authentication and cert generation
     (use "ssh-keygen -t v00 -s ca_key ..." to generate a v00 certificate)
     ok markus@

 - (dtucker) [] Put the check for the existence of getaddrinfo
   back so we disable the IPv6 tests if we don't have it.

 - (dtucker) [contrib/cygwin/Makefile] Don't overwrite files with the wrong
   ones.  Based on a patch from Roumen Petrov.
 - (dtucker) [] Bug #1744: use pkg-config for libedit flags if we
   have it and the path is not provided to --with-libedit.  Based on a patch
   from Iain Morgan.
 - (dtucker) [ defines.h loginrec.c logintest.c] Bug #1732: enable
   utmpx support on FreeBSD where possible.  Patch from Ed Schouten, ok djm@

 - (djm) [openbsd-compat/bsd-arc4random.c] Fix preprocessor detection
   for arc4random_buf() and arc4random_uniform(); from Josh Gilkerson
 - (dtucker) [] Bug #1741: Add section for Haiku, patch originally
   by Ingo Weinhold via Scott McCreary, ok djm@
 - (djm) OpenBSD CVS Sync
   - 2010/03/25 23:38:28
     from portable: getcwd(NULL, 0) doesn't work on all platforms, so
     use a stack buffer; ok dtucker@
   - 2010/03/26 00:26:58
     mention that -S none disables connection sharing; from Colin Watson
 - (djm) [session.c] Allow ChrootDirectory to work on SELinux platforms -
   set up SELinux execution context before chroot() call. From Russell
   Coker via Colin watson; bz#1726 ok dtucker@
 - (djm) [channels.c] Check for EPFNOSUPPORT as a socket() errno; bz#1721
   ok dtucker@
 - (dtucker) Bug #1725: explicitly link libX11 into gnome-ssh-askpass2 using
   pkg-config, patch from Colin Watson.  Needed for newer linkers (ie gold).
 - (djm) [contrib/ssh-copy-id] Don't blow up when the agent has no keys;
   bz#1723 patch from Adeodato Simóvia Colin Watson; ok dtucker@
 - (dtucker) OpenBSD CVS Sync
   - 2010/03/26 01:06:13
     Reformat default value of PreferredAuthentications entry (current
     formatting implies ", " is acceptable as a separator, which it's not.
     ok djm@

 - (dtucker) [contrib/cygwin/ssh-host-config] Mount the Windows directory
   containing the services file explicitely case-insensitive.  This allows to
   tweak the Windows services file reliably.  Patch from vinschen at redhat.

 - (djm) OpenBSD CVS Sync
   - 2010/03/08 09:41:27
     sort the list of constraints (to -O); ok djm
   - 2010/03/10 07:40:35
     typos; from Ross Richardson
     closes prs 6334 and 6335
   - 2010/03/10 23:27:17
     correct certificate logging and make it more consistent between
     authorized_keys and TrustedCAKeys; ok markus@
   - 2010/03/12 01:06:25
     unbreak AuthorizedKeys option with a $HOME-relative path; reported by
     vinschen AT, ok dtucker@
   - 2010/03/12 11:37:40
     do not prepend AuthorizedKeysFile with getcwd(), unbreaks relative paths
     free() (not xfree()) the buffer returned by getcwd()
   - 2010/03/13 21:10:38
     protocol conformance fix: send language tag when disconnecting normally;
     spotted by 1.41421 AT, ok markus@ deraadt@
   - 2010/03/13 21:45:46
     Certificates are named *, not *; committing a diff
     from stevesk@ ok me
   - 2010/03/13 23:38:13
     fix a formatting error (args need quoted); noted by stevesk
   - 2010/03/15 19:40:02
     [key.c key.h ssh-keygen.c]
     also print certificate type (user or host) for ssh-keygen -L
     ok djm kettenis
   - 2010/03/16 15:46:52
     spelling in error message. ok djm kettenis
   - 2010/03/16 16:36:49
     crank version to openssh-5.5 since we have a few fixes since 5.4;
     requested deraadt@ kettenis@
 - (djm) [README contrib/caldera/openssh.spec contrib/redhat/openssh.spec]
   [contrib/suse/openssh.spec] Crank version numbers

 - (djm) [ssh-pkcs11-helper.c] Move #ifdef to after #defines to fix
   compilation failure when !HAVE_DLOPEN. Reported by felix-mindrot
 - (djm) [] Respecify -lssh after -lopenbsd-compat for
   ssh-pkcs11-helper to repair static builds (we do the same for
   ssh-keyscan). Reported by felix-mindrot AT

 - (tim) [] Now that scard is gone, no need to make $(datadir)
 - (tim) [] Add missing $(EXEEXT) to install targets.
   Patch from Corinna Vinschen.
 - (tim) [contrib/cygwin/Makefile] Fix list of documentation files to install
   on a Cygwin installation. Patch from Corinna Vinschen.

 - (tim) [contrib/suse/openssh.spec] crank version number here too.
   report by imorgan AT

 - (dtucker) [] Use a proper AC_CHECK_DECL for BROKEN_GETADDRINFO
   so setting it in CFLAGS correctly skips IPv6 tests.

 - (djm) OpenBSD CVS Sync
   - 2010/03/07 22:16:01
     make internal strptime string match strftime format;
     suggested by vinschen AT and markus@
   - 2010/03/08 00:28:55
     document permit-agent-forwarding certificate constraint; patch from
   - 2010/03/07 22:01:32
 - (djm) [README contrib/caldera/openssh.spec contrib/redhat/openssh.spec]
   crank version numbers
 - (djm) Release OpenSSH-5.4p1

 - (dtucker) [auth.c] Bug #1710: call setauthdb on AIX before getpwuid so that
   it gets the passwd struct from the LAM that knows about the user which is
   not necessarily the default.  Patch from Alexandre Letourneau.
 - (dtucker) [session.c] Bug #1567: move setpcred call to before chroot and
   do not set real uid, since that's needed for the chroot, and will be set
   by permanently_set_uid.
 - (dtucker) [session.c] Also initialize creds to NULL for handing to
 - (dtucker) OpenBSD CVS Sync
   - 2010/03/07 11:57:13
     [auth-rhosts.c monitor.c monitor_wrap.c session.c auth-options.c sshd.c]
     Hold authentication debug messages until after successful authentication.
     Fixes an info leak of environment variables specified in authorized_keys,
     reported by Jacob Appelbaum.  ok djm@

 - OpenBSD CVS Sync
   - 2010/03/04 12:51:25
     [ssh.1 sshd_config.5]
     tweak previous;
   - 2010/03/04 20:35:08
     [ssh-keygen.1 ssh-keygen.c]
     Add a -L flag to print the contents of a certificate; ok markus@
   - 2010/03/04 22:52:40
     fix Bk/Ek;
   - 2010/03/04 23:17:25
     missing word; spotted by jmc@
   - 2010/03/04 23:19:29
     [ssh.1 sshd.8]
     move section on CA and revoked keys from ssh.1 to sshd.8's known hosts
     format section and rework it a bit; requested by jmc@
   - 2010/03/04 23:27:25
     [auth-options.c ssh-keygen.c]
     "force-command" is not spelled "forced-command"; spotted by
     imorgan AT
   - 2010/03/05 02:58:11
     make the warning for a revoked key louder and more noticable
   - 2010/03/05 06:50:35
     [ssh.1 sshd.8]
     tweak previous;
   - 2010/03/05 08:31:20
     document certificate authentication; help/ok djm
   - 2010/03/05 10:28:21
     [ssh-add.1 ssh.1 ssh_config.5]
     mention loading of certificate files from [private] when
     they are present; feedback and ok jmc@
 - (tim) [ssh-pkcs11.c] Fix "non-constant initializer" errors in older
   compilers. OK djm@
 - (djm) [ssh-rand-helper.c] declare optind, avoiding compilation failure
   on some platforms
 - (djm) [] set -fno-strict-aliasing for gcc4; ok dtucker@

 - (djm) [ssh-keygen.c] Use correct local variable, instead of
   maybe-undefined global "optarg"
 - (djm) [contrib/redhat/openssh.spec] Replace obsolete BuildPreReq
   on XFree86-devel with neutral /usr/include/X11/Xlib.h;
   imorgan AT in bz#1731
 - (djm) [.cvsignore] Ignore ssh-pkcs11-helper
 - (djm) [regress/Makefile] Cleanup sshd_proxy_orig
 - OpenBSD CVS Sync
   - 2010/03/03 01:44:36
     [auth-options.c key.c]
     reject strings with embedded ASCII nul chars in certificate key IDs,
     principal names and constraints
   - 2010/03/03 22:49:50
     the authorized_keys option for CA keys is "cert-authority", not
     "from=cert-authority". spotted by imorgan AT
   - 2010/03/03 22:50:40
     s/similar same/similar/; from imorgan AT
   - 2010/03/04 01:44:57
     use buffer_get_string_ptr_ret() where we are checking the return
     value explicitly instead of the fatal()-causing buffer_get_string_ptr()
   - 2010/03/04 10:36:03
     [auth-rh-rsa.c auth-rsa.c auth.c auth.h auth2-hostbased.c auth2-pubkey.c]
     [authfile.c authfile.h hostfile.c hostfile.h servconf.c servconf.h]
     [ssh-keygen.c ssh.1 sshconnect.c sshd_config.5]
     Add a TrustedUserCAKeys option to sshd_config to specify CA keys that
     are trusted to authenticate users (in addition than doing it per-user
     in authorized_keys).
     Add a RevokedKeys option to sshd_config and a @revoked marker to
     known_hosts to allow keys to me revoked and banned for user or host
     feedback and ok markus@
   - 2010/03/03 00:47:23
     [regress/ regress/]
     add an extra test to ensure that authentication with the wrong
     certificate fails as it should (and it does)
   - 2010/03/04 10:38:23
     [regress/ regress/]
     additional regression tests for revoked keys and TrustedUserCAKeys

 - (djm) [PROTOCOL.certkeys] Add RCS Ident
 - OpenBSD CVS Sync
   - 2010/02/26 22:09:28
     [ssh-keygen.1 ssh.1 sshd.8]
     tweak previous;
   - 2010/03/01 11:07:06
     zap what seems to be a left-over debug message; ok markus@
   - 2010/03/02 23:20:57
     POSIX strptime is stricter than OpenBSD's so do a little dance to
     appease it.
 - (djm) [regress/] s/echo -n/echon/ here too

 - (tim) [config.guess config.sub] Bug 1722: Update to latest versions from (2009-12-30 and 2010-01-22

 - (dtucker) [regress/{cert-hostkey,cfgmatch,cipher-speed}.sh} Replace
   "echo -n" with "echon" for portability.
 - (dtucker) [openbsd-compat/port-linux.c] Make failure to write to the OOM
   adjust log at verbose only, since according to cjwatson in bug #1470
   some virtualization platforms don't allow writes.

 - (djm) [auth.c] On Cygwin, refuse usernames that have differences in
   case from that matched in the system password database. On this
   platform, passwords are stored case-insensitively, but sshd requires
   exact case matching for Match blocks in sshd_config(5). Based on
   a patch from vinschen AT
 - (tim) [ssh-pkcs11-helper.c] Move declarations before calling functions
   to make older compilers (gcc 2.95) happy.

 - (djm) [ssh-pkcs11-helper.c ] Ensure RNG is initialised and seeded
 - (djm) [openbsd-compat/bsd-cygwin_util.c] Reduce the set of environment
   variables copied into sshd child processes. From vinschen AT

 - OpenBSD CVS Sync
   - 2010/02/26 20:29:54
     [PROTOCOL PROTOCOL.agent PROTOCOL.certkeys addrmatch.c auth-options.c]
     [auth-options.h auth.h auth2-pubkey.c authfd.c dns.c dns.h hostfile.c]
     [hostfile.h kex.h kexdhs.c kexgexs.c key.c key.h match.h monitor.c]
     [myproposal.h servconf.c servconf.h ssh-add.c ssh-agent.c ssh-dss.c]
     [ssh-keygen.1 ssh-keygen.c ssh-rsa.c ssh.1 ssh.c ssh2.h sshconnect.c]
     [sshconnect2.c sshd.8 sshd.c sshd_config.5]
     Add support for certificate key types for users and hosts.
     OpenSSH certificate key types are not X.509 certificates, but a much
     simpler format that encodes a public key, identity information and
     some validity constraints and signs it with a CA key. CA keys are
     regular SSH keys. This certificate style avoids the attack surface
     of X.509 certificates and is very easy to deploy.
     Certified host keys allow automatic acceptance of new host keys
     when a CA certificate is marked as trusted in ~/.ssh/known_hosts.
     see VERIFYING HOST KEYS in ssh(1) for details.
     Certified user keys allow authentication of users when the signing
     CA key is marked as trusted in authorized_keys. See "AUTHORIZED_KEYS
     FILE FORMAT" in sshd(8) for details.
     Certificates are minted using ssh-keygen(1), documentation is in
     the "CERTIFICATES" section of that manpage.
     Documentation on the format of certificates is in the file
     feedback and ok markus@
   - 2010/02/26 20:33:21
     [Makefile regress/ regress/]
     regression tests for certified keys

 - (djm) [pkcs11.h ssh-pkcs11-client.c ssh-pkcs11-helper.c ssh-pkcs11.c]
   [ssh-pkcs11.h] Add $OpenBSD$ RCS idents so we can sync portable
 - (djm) OpenBSD CVS Sync
   - 2010/02/11 20:37:47
     correct comment
   - 2009/11/09 04:20:04
     add regression test for ssh-keygen pubkey conversions
   - 2010/01/11 02:53:44
     regress test for stdio forwarding
   - 2010/02/09 04:57:36
     clean up droppings
   - 2010/02/09 06:29:02
     turn on all the malloc(3) checking options when running regression
     tests. this has caught a few bugs for me in the past; ok dtucker@
   - 2010/02/24 06:21:56
     wait for sshd to fully stop in cleanup() function; avoids races in tests
     that do multiple start_sshd/cleanup cycles; "I hate pidfiles" deraadt@
   - 2010/02/08 10:52:47
     test for PKCS#11 support (currently disabled)
 - (djm) [ ssh-pkcs11-helper.8] Add manpage for PKCS#11 helper
 - (djm) [contrib/caldera/openssh.spec contrib/redhat/openssh.spec]
   [contrib/suse/openssh.spec] Add PKCS#11 helper binary and manpage

 - (djm) OpenBSD CVS Sync
   - 2010/02/02 22:49:34
     make buffer_get_string_ret() really non-fatal in all cases (it was
     using buffer_get_int(), which could fatal() on buffer empty);
     ok markus dtucker
   - 2010/02/08 10:50:20
     [pathnames.h readconf.c readconf.h scp.1 sftp.1 ssh-add.1 ssh-add.c]
     [ssh-agent.c ssh-keygen.1 ssh-keygen.c ssh.1 ssh.c ssh_config.5]
     replace our obsolete smartcard code with PKCS#11.
     ssh(1) and ssh-keygen(1) use dlopen(3) directly to talk to a PKCS#11
     provider (shared library) while ssh-agent(1) delegates PKCS#11 to
     a forked a ssh-pkcs11-helper process.
     PKCS#11 is currently a compile time option.
     feedback and ok djm@; inspired by patches from Alon Bar-Lev
   - 2010/02/08 22:03:05
     [ssh-add.1 ssh-keygen.1 ssh.1 ssh.c]
     tweak previous; ok markus
   - 2010/02/09 00:50:36
     fallout from PKCS#11: unbreak -D
   - 2010/02/09 00:50:59
     fix -Wall
   - 2010/02/09 03:56:28
     [buffer.c buffer.h]
     constify the arguments to buffer_len, buffer_ptr and buffer_dump
   - 2010/02/09 06:18:46
     unbreak ChrootDirectory+internal-sftp by skipping check for executable
     shell when chrooting; reported by danh AT; ok dtucker@
   - 2010/02/10 23:20:38
     [ssh-add.1 ssh-keygen.1 ssh.1 ssh_config.5]
     pkcs#11 is no longer optional; improve wording; ok jmc@
   - 2010/02/11 13:23:29
     libarary -> library;
 - (djm) [INSTALL README.smartcard scard-opensc.c]
   [scard.c scard.h pkcs11.h scard/ scard/Ssh.bin.uu scard/]
   Remove obsolete smartcard support
 - (djm) [ssh-pkcs11-client.c ssh-pkcs11-helper.c ssh-pkcs11.c]
   Make it compile on OSX
 - (djm) [ssh-pkcs11-client.c ssh-pkcs11-helper.c ssh-pkcs11.c]
   Use ssh_get_progname to fill __progname
 - (djm) [] Enable PKCS#11 support only when we find a working

 - (djm) add -lselinux to LIBS before calling AC_CHECK_FUNCS for
   getseuserbyname; patch from calebcase AT via
   cjwatson AT

 - (djm) OpenBSD CVS Sync
   - 2010/01/30 21:08:33
     debug output goes to stderr, not "the system log"; ok markus dtucker
   - 2010/01/30 21:12:08
     fake local addr:port when stdio fowarding as some servers (Tectia at
     least) validate that they are well-formed;
     reported by imorgan AT
     ok dtucker

 - (djm) OpenBSD CVS Sync
   - 2010/01/28 00:21:18
     downgrade an error() to a debug() - this particular case can be hit in
     normal operation for certain sequences of mux slave vs session closure
     and is harmless
   - 2010/01/29 00:20:41
     set FD_CLOEXEC on sock_in/sock_out; bz#1706 from jchadima AT
     ok dtucker@
   - 2010/01/29 20:16:17
     kill correct channel (was killing already-dead mux channel, not
     its session channel)
   - 2010/01/30 02:54:53
     don't mark channel as read failed if it is already closing; suppresses
     harmless error messages when connecting to SSH.COM Tectia server
     report by imorgan AT

 - (dtucker) [openbsd-compat/openssl-compat.c] Bug #1707: Call OPENSSL_config()
   after registering the hardware engines, which causes the openssl.cnf file to
   be processed.  See OpenSSL's man page for OPENSSL_config(3) for details.
   Patch from Solomon Peachy, ok djm@.

 - (djm) OpenBSD CVS Sync
   - 2010/01/26 02:15:20
     -Wuninitialized and remove a // comment; from portable
     (Id sync only)
   - 2010/01/27 13:26:17
     fix bug introduced in mux rewrite:
     In a mux master, when a socket to a mux slave closes before its server
     session (as may occur when the slave has been signalled), gracefully
     close the server session rather than deleting its channel immediately.
     A server may have more messages on that channel to send (e.g. an exit
     message) that will fatal() the client if they are sent to a channel that
     has been prematurely deleted.
     spotted by imorgan AT
   - 2010/01/27 19:21:39
     add missing "p" flag to getopt optstring;
     bz#1704 from imorgan AT

 - (djm) OpenBSD CVS Sync
   - 2010/01/17 21:49:09
     Correct and clarify ssh-add's password asking behavior.
     Improved text dtucker and ok jmc
   - 2010/01/18 01:50:27
     s/long long unsigned/unsigned long long/, from tim via portable
     (Id sync only, change already in portable)
   - 2010/01/26 01:28:35
     [channels.c channels.h clientloop.c clientloop.h mux.c nchan.c ssh.c]
     rewrite ssh(1) multiplexing code to a more sensible protocol.
     The new multiplexing code uses channels for the listener and
     accepted control sockets to make the mux master non-blocking, so
     no stalls when processing messages from a slave.
     avoid use of fatal() in mux master protocol parsing so an errant slave
     process cannot take down a running master.
     implement requesting of port-forwards over multiplexed sessions. Any
     port forwards requested by the slave are added to those the master has
     add support for stdio forwarding ("ssh -W host:port ...") in mux slaves.
     document master/slave mux protocol so that other tools can use it to
     control a running ssh(1). Note: there are no guarantees that this
     protocol won't be incompatibly changed (though it is versioned).
     feedback Salvador Fandino, dtucker@
     channel changes ok markus@

 - (tim) [] Due to constraints in Windows Sockets in terms of
   socket inheritance, reduce the default SO_RCVBUF/SO_SNDBUF buffer size
   in Cygwin to 65535. Patch from Corinna Vinschen.

 - (tim) [] OpenServer 5 needs BROKEN_GETADDRINFO too.
 - (tim) [] On SVR5 systems, use the C99-conforming functions
   snprintf() and vsnprintf() named _xsnprintf() and _xvsnprintf().

 - (dtucker) [openbsd-compat/pwcache.c] Pull in includes.h and thus defines.h
   so we correctly detect whether or not we have a native user_from_uid.
 - (dtucker) [openbsd-compat/openbsd-compat.h] Prototypes for user_from_uid
   and group_from_gid.
 - (dtucker) [openbsd-compat/openbsd-compat.h] Fix prototypes, spotted by
 - (dtucker) OpenBSD CVS Sync
   - 2010/01/15 09:24:23
 - (dtucker) [openbsd-compat/pwcache.c] Shrink ifdef area to prevent unused
   variable warnings.
 - (dtucker) [openbsd-compat/openbsd-compat.h] Typo.
 - (tim) [regress/] Shell portability fix.
 - (tim) [] Define BROKEN_GETADDRINFO on SVR5 systems. The native
   getaddrinfo() is too old and limited for addr_pton() in addrmatch.c.
 - (tim) [roaming_client.c] Use of <sys/queue.h> is not really portable so we
   use "openbsd-compat/sys-queue.h". s/long long unsigned/unsigned long long/
   to keep USL compilers happy.

 - (dtucker) OpenBSD CVS Sync
   - 2010/01/13 12:48:34
     [sftp.1 sftp.c]
     sftp.1: put ls -h in the right place
     sftp.c: as above, plus add -p to get/put, and shorten their arg names
     to keep the help usage nicely aligned
     ok djm
   - 2010/01/13 23:47:26
     when using ChrootDirectory, make sure we test for the existence of the
     user's shell inside the chroot; bz #1679, patch from alex AT;
     ok dtucker
   - 2010/01/14 23:41:49
     use user_from{uid,gid} to lookup up ids since it keeps a small cache.
     ok djm
   - 2010/01/15 00:05:22
     Reset SIGTERM to SIG_DFL before executing ssh, so that even if sftp
     inherited SIGTERM as ignored it will still be able to kill the ssh it
     ok dtucker@
 - (dtucker) [openbsd-compat/pwcache.c] Pull in pwcache.c from OpenBSD (no
   changes yet but there will be some to come).
 - (dtucker) [ openbsd-compat/{,pwcache.c} Portability
   for pwcache.  Also, added caching of negative hits.

 - (djm) [platform.h] Add missing prototype for

 - (dtucker) [monitor_fdpass.c] Wrap poll.h include in ifdefs.
 - (dtucker) [openbsd-compat/readpassphrase.c] Resync against OpenBSD's r1.18:
   missing restore of SIGTTOU and some whitespace.
 - (dtucker) [openbsd-compat/readpassphrase.c] Update to OpenBSD's r1.21.
 - (dtucker) [openbsd-compat/readpassphrase.c] Update to OpenBSD's r1.22.
   Fixes bz #1590, where sometimes you could not interrupt a connection while
   ssh was prompting for a passphrase or password.
 - (dtucker) OpenBSD CVS Sync
   - 2010/01/13 00:19:04
     [sshconnect.c auth.c]
     Fix a couple of typos/mispellings in comments
   - 2010/01/13 01:10:56
     Ignore and log any Protocol 1 keys where the claimed size is not equal to
     the actual size.  Noted by Derek Martin, ok djm@
   - 2010/01/13 01:20:20
     [canohost.c ssh-keysign.c sshconnect2.c]
     Make HostBased authentication work with a ProxyCommand.  bz #1569, patch
     from imorgan at nas nasa gov, ok djm@
   - 2010/01/13 01:40:16
     [sftp.c sftp-server.c sftp.1 sftp-common.c sftp-common.h]
     support '-h' (human-readable units) for sftp's ls command, just like
     ls(1); ok dtucker@
   - 2010/01/13 03:48:13
     [servconf.c servconf.h sshd.c]
     avoid run-time failures when specifying hostkeys via a relative
     path by prepending the cwd in these cases; bz#1290; ok dtucker@
   - 2010/01/13 04:10:50
     don't append a space after inserting a completion of a directory (i.e.
     a path ending in '/') for a slightly better user experience; ok dtucker@
 - (dtucker) [sftp-common.c] Wrap include of util.h in an ifdef.
 - (tim) [defines.h] openbsd-compat/readpassphrase.c now needs _NSIG. 
   feedback and ok dtucker@

 - (dtucker) OpenBSD CVS Sync
   - 2010/01/11 01:39:46
     [ssh_config channels.c ssh.1 channels.h ssh.c]
     Add a 'netcat mode' (ssh -W).  This connects stdio on the client to a
     single port forward on the server.  This allows, for example, using ssh as
     a ProxyCommand to route connections via intermediate servers.
     bz #1618, man page help from jmc@, ok markus@
   - 2010/01/11 04:46:45
     [authfile.c sshconnect2.c]
     Do not prompt for a passphrase if we fail to open a keyfile, and log the
     reason the open failed to debug.
     bz #1693, found by tj AT castaglia org, ok djm@
   - 2010/01/11 10:51:07
     when converting keys, truncate key comments at 72 chars as per RFC4716;
     bz#1630 reported by tj AT; ok markus@
   - 2010/01/12 00:16:47
     Fix bug introduced in r1.78 (incorrect brace location) that broke key auth.
     Patch from joachim joachimschipper nl.
   - 2010/01/12 00:58:25
     avoid spinning when fd passing on nonblocking sockets by calling poll()
     in the EINTR/EAGAIN path, much like we do in atomicio; ok dtucker@
   - 2010/01/12 00:59:29
     delete with extreme prejudice a debug() that fired with every keypress;
     ok dtucker deraadt
   - 2010/01/12 01:31:05
     Do not allow logins if /etc/nologin exists but is not readable by the user
     logging in.  Noted by Jan.Pechanec at Sun, ok djm@ deraadt@
   - 2010/01/12 01:36:08
     [buffer.h bufaux.c]
     add a buffer_get_string_ptr_ret() that does the same as
     buffer_get_string_ptr() but does not fatal() on error; ok dtucker@
   - 2010/01/12 08:33:17
     Add explicit stat so we reliably detect nologin with bad perms.
     ok djm markus

 - (dtucker) [ misc.c readconf.c servconf.c ssh-keyscan.c]
   Remove hacks add for RoutingDomain in preparation for its removal.
 - (dtucker) OpenBSD CVS Sync
   - 2010/01/09 23:04:13
     [channels.c ssh.1 servconf.c sshd_config.5 sshd.c channels.h servconf.h
     ssh-keyscan.1 ssh-keyscan.c readconf.c sshconnect.c misc.c ssh.c
     readconf.h scp.1 sftp.1 ssh_config.5 misc.h]
     Remove RoutingDomain from ssh since it's now not needed.  It can be
     replaced with "route exec" or "nc -V" as a proxycommand.  "route exec"
     also ensures that trafic such as DNS lookups stays withing the specified
     routingdomain.  For example (from reyk):
     # route -T 2 exec /usr/sbin/sshd
     or inherited from the parent process
     $ route -T 2 exec sh
     $ ssh
     ok deraadt@ markus@ stevesk@ reyk@
   - 2010/01/10 03:51:17
     Add ChrootDirectory to sshd.c test-mode output
   - 2010/01/10 07:15:56
     Output a debug if we can't open an existing keyfile.  bz#1694, ok djm@

 - (dtucker) Wrap use of IPPROTO_IPV6 in an ifdef for platforms that don't
   have it.
 - (dtucker) [defines.h] define PRIu64 for platforms that don't have it.
 - (dtucker) [roaming_client.c] Wrap inttypes.h in an ifdef.
 - (dtucker) [loginrec.c] Use the SUSv3 specified name for the user name
   when using utmpx.  Patch from Ed Schouten.
 - (dtucker) OpenBSD CVS Sync
   - 2010/01/09 00:20:26
     [sftp-server.c sftp-server.8]
     add a 'read-only' mode to sftp-server(8) that disables open in write mode
     and all other fs-modifying protocol methods. bz#430 ok dtucker@
   - 2010/01/09 00:57:10
     tweak language
   - 2010/01/09 03:36:00
     bad place to forget a comma...
   - 2010/01/09 05:04:24
     [mux.c sshpty.h clientloop.c sshtty.c]
     quell tc[gs]etattr warnings when forcing a tty (ssh -tt), since we
     usually don't actually have a tty to read/set; bz#1686 ok dtucker@
   - 2010/01/09 05:17:00
     Remove a PRIu64 format string that snuck in with roaming.  ok djm@
   - 2010/01/09 11:13:02
     Prevent sftp from derefing a null pointer when given a "-" without a
     command.  Also, allow whitespace to follow a "-".  bz#1691, path from
     Colin Watson via Debian.  ok djm@ deraadt@
   - 2010/01/09 11:17:56
     Afer sshd receives a SIGHUP, ignore subsequent HUPs while sshd re-execs
     itself.  Prevents two HUPs in quick succession from resulting in sshd
     dying.  bz#1692, patch from Colin Watson via Ubuntu.
 - (dtucker) [defines.h] Remove now-undeeded PRIu64 define.

 - (dtucker) OpenBSD CVS Sync
   - 2009/10/24 11:11:58
     Declarations needed for upcoming changes.
     ok markus@
   - 2009/10/24 11:13:54
     [sshconnect2.c kex.h kex.c]
     Let the client detect if the server supports roaming by looking
     for the kex algorithm.
     ok markus@
   - 2009/10/24 11:15:29
     client_loop() must detect if the session has been suspended and resumed,
     and take appropriate action in that case.
     From Martin Forssen, maf at appgate dot com
   - 2009/10/24 11:19:17
     Define the KEX messages used when resuming a suspended connection.
     ok markus@
   - 2009/10/24 11:22:37
     Do the actual suspend/resume in the client. This won't be useful until
     the server side supports roaming.
     Most code from Martin Forssen, maf at appgate dot com. Some changes by
     me and markus@
     ok markus@
   - 2009/10/24 11:23:42
     Request roaming to be enabled if UseRoaming is true and the server
     supports it.
     ok markus@
   - 2009/10/28 16:38:18
     [ssh_config.5 sshd.c misc.h ssh-keyscan.1 readconf.h sshconnect.c
     channels.c channels.h servconf.h servconf.c ssh.1 ssh-keyscan.c scp.1
     sftp.1 sshd_config.5 readconf.c ssh.c misc.c]
     Allow to set the rdomain in ssh/sftp/scp/sshd and ssh-keyscan.
     ok markus@
   - 2009/10/28 21:45:08
     [sshd_config.5 sftp.1]
     tweak previous;
   - 2009/11/10 02:56:22
     explain the constraints on LocalCommand some more so people don't
     try to abuse it.
   - 2009/11/10 02:58:56
     clarify that StrictModes does not apply to ChrootDirectory. Permissions
     and ownership are always checked when chrooting. bz#1532
   - 2009/11/10 04:30:45
     [sshconnect2.c channels.c sshconnect.c]
     Set close-on-exec on various descriptors so they don't get leaked to
     child processes.  bz #1643, patch from jchadima at redhat, ok deraadt.
   - 2009/11/11 21:37:03
     [channels.c channels.h]
     fix race condition in x11/agent channel allocation: don't read after
     the end of the select read/write fdset and make sure a reused FD
     is not touched before the pre-handlers are called.
     with and ok djm@
   - 2009/11/17 05:31:44
     fix incorrect exit status when multiplexing and channel ID 0 is recycled
     bz#1570 reported by peter.oliver AT; ok dtucker
   - 2009/11/19 23:39:50
     bz#1606: error when an attempt is made to connect to a server
     with ForceCommand=internal-sftp with a shell session (i.e. not a
     subsystem session). Avoids stuck client when attempting to ssh to such a
     service. ok dtucker@
   - 2009/11/20 00:15:41
     Warn but do not fail if stat()ing the subsystem binary fails.  This helps
     with chrootdirectory+forcecommand=sftp-server and restricted shells.
     bz #1599, ok djm.
   - 2009/11/20 00:54:01
     bz#1588 change "Connecting to host..." message to "Connected to host."
     and delay it until after the sftp protocol connection has been established.
     Avoids confusing sequence of messages when the underlying ssh connection
     experiences problems. ok dtucker@
   - 2009/11/20 00:59:36
     Use the HostKeyAlias when prompting for passwords.  bz#1039, ok djm@
   - 2009/11/20 03:24:07
     correct off-by-one in percent_expand(): we would fatal() when trying
     to expand EXPAND_MAX_KEYS, allowing only EXPAND_MAX_KEYS-1 to actually
     work.  Note that nothing in OpenSSH actually uses close to this limit at
     present.  bz#1607 from Jan.Pechanec AT Sun.COM
   - 2009/11/22 13:18:00
     make passing of zero-length arguments to ssh safe by
     passing "-<switch>" "<value>" rather than "-<switch><value>"
     ok dtucker@, guenther@, djm@
   - 2009/12/06 23:41:15
     zap unused variable and strlen; from Steve McClellan, ok djm
   - 2009/12/06 23:53:45
     use socklen_t for getsockopt optlen parameter; reported by
     Steve.McClellan AT, ok dtucker@
   - 2009/12/06 23:53:54
     fix potential divide-by-zero in sftp's "df" output when talking to a server
     that reports zero files on the filesystem (Unix filesystems always have at
     least the root inode).  From Steve McClellan at radisys, ok djm@
   - 2009/12/11 18:16:33
     switch from 35 to the more common value of RSA_F4 == (2**16)+1 == 65537
     for the RSA public exponent; discussed with provos; ok djm@
   - 2009/12/20 07:28:36
     [ssh.c sftp.c scp.c]
     When passing user-controlled options with arguments to other programs,
     pass the option and option argument as separate argv entries and
     not smashed into one (e.g., as -l foo and not -lfoo).  Also, always
     pass a "--" argument to stop option parsing, so that a positional
     argument that starts with a '-' isn't treated as an option.  This
     fixes some error cases as well as the handling of hostnames and
     filenames that start with a '-'.
     Based on a diff by halex@
     ok halex@ djm@ deraadt@
   - 2009/12/20 23:20:40
     fix an incorrect magic number and typo in PROTOCOL; bz#1688
     report and fix from ueno AT
   - 2009/12/25 19:40:21
     [readconf.c servconf.c misc.h ssh-keyscan.c misc.c]
     validate routing domain is in range 0-RT_TABLEID_MAX.
     'Looks right' deraadt@
   - 2009/12/29 16:38:41
     [sshd_config.5 readconf.c ssh_config.5 scp.1 servconf.c sftp.1 ssh.1]
     Rename RDomain config option to RoutingDomain to be more clear and
     consistent with other options.
     NOTE: if you currently use RDomain in the ssh client or server config,
     or ssh/sshd -o, you must update to use RoutingDomain.
     ok markus@ djm@
   - 2009/12/29 18:03:32
     [sshd_config.5 ssh_config.5]
     sort previous;
   - 2010/01/04 01:45:30
     Don't escape backslashes in the SSH2 banner.  bz#1533, patch from
     Michal Gorny via Gentoo.
   - 2010/01/04 02:03:57
     Implement tab-completion of commands, local and remote filenames for sftp.
     Hacked on and off for some time by myself, mouring, Carlos Silva (via 2009
     Google Summer of Code) and polished to a fine sheen by myself again.
     It should deal more-or-less correctly with the ikky corner-cases presented
     by quoted filenames, but the UI could still be slightly improved.
     In particular, it is quite slow for remote completion on large directories.
     bz#200; ok markus@
   - 2010/01/04 02:25:15
     bz#1566 don't unnecessarily dup() in and out fds for sftp-server;
     ok markus@
   - 2010/01/08 21:50:49
     Fix two warnings: possibly used unitialized and use a nul byte instead of
     NULL pointer.  ok djm@
 - (dtucker) [ added roaming_client.c roaming_serv.c] Import new
   files for roaming and add to Makefile.
 - (dtucker) [] .c files do not belong in the OBJ lines.
 - (dtucker) [sftp.c] ifdef out the sftp completion bits for platforms that
   don't have libedit.
 - (dtucker) [ misc.c readconf.c servconf.c ssh-keyscan.c] Make
   RoutingDomain an unsupported option on platforms that don't have it.
 - (dtucker) [sftp.c] Expand ifdef for libedit to cover complete_is_remote
 - (dtucker) [misc.c] Move the routingdomain ifdef to allow the socket to
   be created.
 - (dtucker] [misc.c] Shrink the area covered by USE_ROUTINGDOMAIN more
   to eliminate an unused variable warning.
 - (dtucker) [roaming_serv.c] Include includes.h for u_intXX_t types.

 - (tim) [contrib/cygwin/Makefile] Install ssh-copy-id and ssh-copy-id.1
   Gzip all man pages. Patch from Corinna Vinschen.

 - (dtucker) [auth-krb5.c platform.{c,h} openbsd-compat/port-aix.{c,h}]
   Bug #1583: Use system's kerberos principal name on AIX if it's available.
   Based on a patch from and tested by Miguel Sanders 

 - (dtucker) Bug #1470: Disable OOM-killing of the listening sshd on Linux,
   based on a patch from Vaclav Ovsik and Colin Watson.  ok djm.

 - (dtucker) Bug #1160: use pkg-config for opensc config if it's available.
   Tested by Martin Paljak.
 - (dtucker) Bug #1677: add conditionals around the source for ssh-askpass.

 - (tim) [] If PidFile is set in sshd_config, use it.
   Bug 1628. OK dtucker@

 - (djm) [ssh-rand-helper.c] Print error and usage() when passed command-
   line arguments as none are supported. Exit when passed unrecognised
   commandline flags. bz#1568 from gson AT

 - (djm) [channels.c misc.c misc.h sshd.c] add missing setsockopt() to
   set IPV6_V6ONLY for local forwarding with GatwayPorts=yes. Unify
   setting IPV6_V6ONLY behind a new function misc.c:sock_set_v6only()
   bz#1648, report and fix from jan.kratochvil AT
 - (djm) [contrib/gnome-ssh-askpass2.c] Make askpass dialog desktop-modal.
   bz#1645, patch from jchadima AT

 - (dtucker) [authfile.c] Fall back to 3DES for the encryption of private
    keys when built with OpenSSL versions that don't do AES.

 - (dtucker) [authfile.c] Add OpenSSL compat header so this still builds with
   older versions of OpenSSL.

 - (dtucker) OpenBSD CVS Sync
   - 2009/10/11 23:03:15
     mention the host name that we are looking for in check_host_in_hostfile()
   - 2009/10/17 12:10:39
     sort flags.
   - 2009/10/22 12:35:53
     [ssh.1 ssh-agent.1 ssh-add.1]
     use the UNIX-related macros (.At and .Ux) where appropriate.
     ok jmc@
   - 2009/10/22 15:02:12
     [ssh-agent.1 ssh-add.1 ssh.1]
     write UNIX-domain in a more consistent way; while here, replace a
     few remaining ".Tn UNIX" macros with ".Ux" ones.
     pointed out by ratchov@, thanks!
     ok jmc@
   - 2009/10/22 22:26:13
     switch from 3DES to AES-128 for encryption of passphrase-protected
     SSH protocol 2 private keys; ok several
   - 2009/10/23 01:57:11
     disallow a hostile server from checking jpake auth by sending an
     out-of-sequence success message. (doesn't affect code enabled by default)
   - 2009/10/24 00:48:34
     ssh-keygen now uses AES-128 for private keys
 - (dtucker) [mdoc2man.awk] Teach it to understand the .Ux macro.
 - (dtucker) [session.c openbsd-compat/port-linux.{c,h}] Bug #1637: if selinux
   is enabled set the security context to "sftpd_t" before running the
   internal sftp server   Based on a patch from jchadima at redhat.

 - (dtucker) [ sftp-client.c] Remove the gyrations required for
   dirent d_type and DTTOIF as we've switched OpenBSD to the more portable
 - (dtucker) OpenBSD CVS Sync
   - 2009/10/08 14:03:41
     [sshd_config readconf.c ssh_config.5 servconf.c sshd_config.5]
     disable protocol 1 by default (after a transition period of about 10 years)
     ok deraadt
   - 2009/10/08 20:42:12
     [sshd_config.5 ssh_config.5 sshd.8 ssh.1]
     some tweaks now that protocol 1 is not offered by default; ok markus
   - 2009/10/11 10:41:26
     d_type isn't portable so use lstat to get dirent modes.  Suggested by and
     "looks sane" deraadt@
   - 2009/10/08 18:04:27
     re-enable protocol v1 for the tests.

 - (dtucker) OpenBSD CVS Sync
   - 2009/08/12 00:13:00
     [sftp.c sftp.1]
     support most of scp(1)'s commandline arguments in sftp(1), as a first
     step towards making sftp(1) a drop-in replacement for scp(1).
     One conflicting option (-P) has not been changed, pending further
     Patch from as part of his work in the
     Google Summer of Code
  - 2009/08/12 06:31:42
     sort options;
   - 2009/08/13 01:11:19
     [sftp.1 sftp.c]
     Swizzle options: "-P sftp_server_path" moves to "-D sftp_server_path",
     add "-P port" to match scp(1). Fortunately, the -P option is only really
     used by our regression scripts.
     part of larger patch from for his Google Summer
     of Code work; ok deraadt markus
   - 2009/08/13 13:39:54
     [sftp.1 sftp.c]
     sync synopsis and usage();
   - 2009/08/14 18:17:49
     make the "get_handle: ..." error messages vaguely useful by allowing
     callers to specify their own error message strings.
   - 2009/08/15 18:56:34
     remove unused define. markus@ ok.
     (Id sync only, Portable still uses this.)
   - 2009/08/16 23:29:26
     Add PubkeyAuthentication to the list allowed in a Match block (bz #1577)
   - 2009/08/18 18:36:21
     [sftp-client.h sftp.1 sftp-client.c sftp.c]
     recursive transfer support for get/put and on the commandline
     work mostly by for the Google Summer of Code
     with some tweaks by me; "go for it" deraadt@
  - 2009/08/18 21:15:59
     fix "get" command usage, spotted by jmc@
   - 2009/08/19 04:56:03
     ether -> either;
   - 2009/08/20 23:54:28
     subsystem_flag is defined in ssh.c so it's extern; ok djm
   - 2009/08/27 17:28:52
     allow setting an explicit umask on the commandline to override whatever
     default the user has. bz#1229; ok dtucker@ deraadt@ markus@
   - 2009/08/27 17:33:49
     force use of correct hash function for random-art signature display
     as it was inheriting the wrong one when bubblebabble signatures were
     activated; bz#1611 report and patch from fwojcik+openssh AT;
     ok markus@
   - 2009/08/27 17:43:00
     allow setting an explicit umask on the commandline to override whatever
     default the user has. bz#1229; ok dtucker@ deraadt@ markus@
   - 2009/08/27 17:44:52
     [authfd.c ssh-add.c authfd.h]
     Do not fall back to adding keys without contraints (ssh-add -c / -t ...)
     when the agent refuses the constrained add request. This was a useful
     migration measure back in 2002 when constraints were new, but just
     adds risk now.
     bz #1612, report and patch from dkg AT; ok markus@
   - 2009/08/31 20:56:02
     check correct variable for error message, spotted by martynas@
   - 2009/08/31 21:01:29
     document -e and -h; prodded by jmc@
   - 2009/09/01 14:43:17
     fix a race condition in ssh-agent that could result in a wedged or
     spinning agent: don't read off the end of the allocated fd_sets, and
     don't issue blocking read/write on agent sockets - just fall back to
     select() on retriable read/write errors. bz#1633 reported and tested
     by "noodle10000 AT"; ok dtucker@ markus@
   - 2009/10/01 11:37:33
     fix a cast
     ok djm@ markus@
   - 2009/10/06 04:46:40
     bz#1596: fflush(NULL) before exec() to ensure that everying (motd
     in particular) has made it out before the streams go away.
   - 2008/12/07 22:17:48
     match string "passwordauthentication" only at start of line, not anywhere
     in sshd -T output
   - 2009/05/05 07:51:36
     Always specify ssh_config for multiplex tests: prevents breakage caused
     by options in ~/.ssh/config.  From Dan Peterson.
   - 2009/08/13 00:57:17
     regression test for port number parsing. written as part of the a2port
     change that went into 5.2 but I forgot to commit it at the time...
   - 2009/08/13 01:11:55
     [regress/ regress/ regress/
     regress/ regres/]
     date: 2009/08/13 01:11:19;  author: djm;  state: Exp;  lines: +10 -7
     Swizzle options: "-P sftp_server_path" moves to "-D sftp_server_path",
     add "-P port" to match scp(1). Fortunately, the -P option is only really
     used by our regression scripts.
     part of larger patch from for his Google Summer
     of Code work; ok deraadt markus
   - 2009/08/20 18:43:07
     fix one sftp -D ... => sftp -P ... conversion that I missed; from Carlos
     Silva for Google Summer of Code
   - 2009/10/06 23:51:49
     Add OpenBSD tag to make syncs easier
 - (dtucker) [regress/] Import new test.
 - (dtucker) [ sftp-client.c] DTOTIF is in fs/ffs/dir.h on at
   least dragonflybsd.
 - (dtucker) d_type is not mandated by POSIX, so add fallback code using
    stat(), needed on at least cygwin.

 - (djm) [] Mention readconf.o in ssh-keysign's make deps.
   spotted by des AT

 - (djm) [contrib/caldera/openssh.spec contrib/redhat/openssh.spec]
         [contrib/suse/openssh.spec] Update for release
 - (djm) [README] update relnotes URL
 - (djm) [packet.c] Restore EWOULDBLOCK handling that got lost somewhere
 - (djm) Release 5.3p1

 - (dtucker) [] Change the -lresolv check so it works on Mac OS X
   10.6 (which doesn't have BIND8_COMPAT and thus uses res_9_query).  Patch
   from jbasney at ncsa uiuc edu.

 - (djm) [serverloop.c] Fix test for server-assigned remote forwarding port
   (-R 0:...); bz#1578, spotted and fix by gavin AT; ok dtucker@

 - (dtucker) [] Bug #1639: use AC_PATH_PROG to search the path for
   krb5-config if it's not in the location specified by --with-kerberos5.
   Patch from jchadima at redhat.

 - (dtucker) [README.platform] Add text about development packages, based on
   text from Chris Pepper in bug #1631.

 - dtucker [auth-sia.c] Roll back the change for bug #1241 as it apparently
   causes problems in some Tru64 configurations.
 - (djm) [sshd_config.5] downgrade mention of login.conf to be an example
   and mention PAM as another provider for ChallengeResponseAuthentication;
   bz#1408; ok dtucker@
 - (djm) [sftp-server.c] bz#1535: accept ENOSYS as a fallback error when
   attempting atomic rename(); ok dtucker@
 - (djm) [] bz#1505: Solaris make(1) doesn't accept make variables
   in argv, so pass them in the environment; ok dtucker@
 - (dtucker) [channels.c] Bug #1528: skip the tcgetattr call on
    the pty master on Solaris, since it never succeeds and can hang if large
    amounts of data is sent to the slave (eg a copy-paste).  Based on a patch
    originally from Doke Scott, ok djm@
 - (dtucker) [clientloop.c defines.h] Make the client's IO buffer
   size a compile-time option and set it to 64k on Cygwin, since Corinna
   reports that it makes a significant difference to performance.  ok djm@
 - (dtucker) [] Fix the syntax of the Solaris tcgetattr entry.

 - (dtucker) [includes.h] Bug #1634: do not include system glob.h if we're not
   using it since the type conflicts can cause problems on FreeBSD.  Patch
   from Jonathan Chen.
 - (dtucker) [session.c openbsd-compat/port-aix.h] Bugs #1249 and #1567: move
   the setpcred call on AIX to immediately before the permanently_set_uid().
   Ensures that we still have privileges when we call chroot and
   pam_open_sesson.  Based on a patch from David Leonard.

 - (dtucker) [] Check for headers before libraries for openssl an
   zlib, which should make the errors slightly more meaningful on platforms
   where there's separate "-devel" packages for those.
 - (dtucker) [sshlogin.c openbsd-compat/port-aix.{c,h}] Bug #1595: make
   PrintLastLog work on AIX.  Based in part on a patch from Miguel Sanders.

 - (tim) [contrib/cygwin/ssh-user-config] Change script to call correct error
   function. Patch from Corinna Vinschen.

 - (dtucker) [openbsd-compat/getrrsetbyname.c] Reduce answer buffer size so it
   fits into 16 bits to work around a bug in glibc's resolver where it masks
   off the buffer size at 16 bits.  Patch from Hauke Lampe, ok djm jakob.

 - (dtucker) [] Include sys/param.h for the sys/mount.h test,
   prevents configure complaining on older BSDs.
 - (dtucker [contrib/cygwin/ssh-{host,user}-config] Add license text. Patch
   from Corinna Vinschen.
 - (dtucker) [auth-pam.c] Bug #1534: move the deletion of PAM credentials on
   logout to after the session close.  Patch from Anicka Bernathova,
   originally from Andreas Schwab via Novelll ok djm.

 - (dtucker) [contrib/cygwin/ssh-host-config] better support for automated
   scripts and fix usage of eval.  Patch from Corinna Vinschen.

 - (dtucker) OpenBSD CVS Sync
   - 2009/06/27 09:29:06
     [packet.h packet.c]
     packet_bacup_state() and packet_restore_state() will be used to
     temporarily save the current state ren resuming a suspended connection.
     ok markus@
   - 2009/06/27 09:32:43
     [roaming_common.c roaming.h]
     It may be necessary to retransmit some data when resuming, so add it
     to a buffer when roaming is enabled.
     Most of this code was written by Martin Forssen, maf at appgate dot com.
     ok markus@
   - 2009/06/27 09:35:06
     [readconf.h readconf.c]
     Add client option UseRoaming. It doesn't do anything yet but will
     control whether the client tries to use roaming if enabled on the
     server. From Martin Forssen.
     ok markus@
   - 2009/06/30 14:54:40
     crank version; ok deraadt
   - 2009/07/02 02:11:47
     allow for long home dir paths (bz #1615).  ok deraadt
     (based in part on a patch from jchadima at redhat)
   - 2009/07/05 19:28:33
     only send SSH2_MSG_DISCONNECT if we're in compat20; from dtucker@
     ok deraadt@ markus@

 - (dtucker) OpenBSD CVS Sync
   - 2009/06/22 05:39:28
     [monitor_wrap.c monitor_mm.c ssh-keygen.c auth2.c gss-genr.c sftp-client.c]
     alphabetize includes; reduces diff vs portable and style(9).
     ok stevesk djm
     (Id sync only; these were already in order in -portable)

 - (dtucker) OpenBSD CVS Sync
   - 2009/03/17 21:37:00
     pass correct argv[0] to openlog(); ok djm@
  - 2009/03/19 15:15:09
     for "Ciphers", just point the reader to the keyword in ssh_config(5), just
     as we do for "MACs": this stops us getting out of sync when the lists
     fixes documentation/6102, submitted by Peter J. Philipp
     alternative fix proposed by djm
     ok markus
   - 2009/03/23 08:31:19
     Fixed a possible out-of-bounds memory access if the environment variable
     SHELL is shorter than 3 characters.
     with input by and ok dtucker
   - 2009/03/23 19:38:04
     My previous commit didn't fix the problem at all, so stick at my first
     version of the fix presented to dtucker.
     Issue notified by Matthias Barkhoff (matthias dot barkhoff at gmx dot de).
     ok dtucker
   - 2009/03/26 08:38:39
     [sftp-server.8 sshd.8 ssh-agent.1]
     fix a few typographical errors found by spell(1).
     ok dtucker@, jmc@
   - 2009/04/13 19:07:44
     fix possessive; ok djm@
   - 2009/04/14 16:33:42
     remove unused option character from getopt() optstring; ok markus@
   - 2009/04/14 21:10:54
     Fixed a few the-the misspellings in comments. Skipped a bunch in
     binutils,gcc and so on. ok jmc@
   - 2009/04/17 19:23:06
     use INTERNAL_SFTP_NAME for setproctitle() of in-process sftp-server;
     ok djm@ markus@
   - 2009/04/17 19:40:17
     clarify that even internal-sftp needs /dev/log for logging to work; ok
   - 2009/04/18 18:39:10
     tweak previous; ok stevesk
   - 2009/04/21 15:13:17
     clarify we cd to user's home after chroot; ok markus@ on
     earlier version; tweaks and ok jmc@
   - 2009/05/25 06:48:01
     [channels.c packet.c clientloop.c packet.h serverloop.c monitor_wrap.c
     Put the globals in packet.c into a struct and don't access it directly
     from other files. No functional changes.
     ok markus@ djm@
   - 2009/05/27 06:31:25
     [canohost.h canohost.c]
     Add clear_cached_addr(), needed for upcoming changes allowing the peer
     address to change.
     ok markus@
   - 2009/05/27 06:33:39
     Send SSH2_MSG_DISCONNECT when the client disconnects. From a larger
     change from Martin Forssen, maf at appgate dot com.
     ok markus@
   - 2009/05/27 06:34:36
     [kex.c kex.h]
     Move the KEX_COOKIE_LEN define to kex.h
     ok markus@
   - 2009/05/27 06:36:07
     [packet.h packet.c]
     Add packet_put_int64() and packet_get_int64(), part of a larger change
     from Martin Forssen.
     ok markus@
   - 2009/05/27 06:38:16
     [sshconnect.h sshconnect.c]
     Un-static ssh_exchange_identification(), part of a larger change from
     Martin Forssen and needed for upcoming changes.
     ok markus@
   - 2009/05/28 16:50:16
     [sshd.c packet.c serverloop.c monitor_wrap.c clientloop.c sshconnect.c
     monitor.c Added roaming.h roaming_common.c roaming_dummy.c]
     Keep track of number of bytes read and written. Needed for upcoming
     changes. Most code from Martin Forssen, maf at appgate dot com.
     ok markus@
     Also, applied appropriate changes to
   - 2009/06/12 20:43:22
     [monitor.c packet.c]
     Fix warnings found by chl@ and djm@ and change roaming_atomicio's
     return type to match atomicio's
     Diff from djm@, ok markus@
   - 2009/06/12 20:58:32
     Move some more statics into session_state
     ok markus@ djm@
   - 2009/06/21 07:37:15
     [kexdhs.c kexgexs.c]
     abort if key_sign fails, preventing possible null deref.  Based on report
     from Paolo Ganci, ok markus@ djm@
   - 2009/06/21 09:04:03
     [roaming.h roaming_common.c roaming_dummy.c]
     Add  tags for the benefit of the sync scripts
     Also: pull in the changes for 1.1->1.2 missed in the previous sync.
 - (dtucker) [auth2-jpake.c auth2.c canohost.h session.c] Whitespace and
   header-order changes to reduce diff vs OpenBSD.
 - (dtucker) [servconf.c sshd.c] More whitespace sync.
 - (dtucker) [roaming_common.c roaming_dummy.c] Wrap #include <inttypes.h> in

 - (dtucker) [ defines.h] Bug #1607: handle the case where fsid_t
   is a struct with a __val member.  Fixes build on, eg, Redhat 6.2.

 - (dtucker) [sshlogin.c] Move the NO_SSH_LASTLOG #ifndef line to include
   variable declarations.  Should prevent unused warnings anywhere it's set
   (only Crays as far as I can tell) and be a no-op everywhere else.

 - (tim) [] Remove setting IP_TOS_IS_BROKEN for Cygwin. The problem
   that setsockopt(IP_TOS) doesn't work on Cygwin has been fixed since 2005.
   Based on patch from vinschen at redhat com.

 - (dtucker) [auth-passwd.c auth1.c auth2-kbdint.c auth2-none.c auth2-passwd.c
   auth2-pubkey.c session.c openbsd-compat/bsd-cygwin_util.{c,h}
   openbsd-compat/daemon.c] Remove support for Windows 95/98/ME and very old
   version of Cygwin.  Patch from vinschen at redhat com.

 - (dtucker) [contrib/aix/] Only try to rename ssh_prng_cmds if it
   exists (it's not created if OpenSSL's PRNG is self-seeded, eg if the OS
   has a /dev/random).
 - (dtucker) [schnorr.c openbsd-compat/openssl-compat.{c,h}] Add
   EVP_DigestUpdate to the OLD_EVP compatibility functions and tell schnorr.c
   to use them.  Allows building with older OpenSSL versions.
 - (dtucker) [ defines.h] Check for in_port_t and typedef if needed.
 - (dtucker) [] Missing comma in type list.
 - (dtucker) [ openbsd-compat/openssl-compat.{c,h}]
   EVP_DigestUpdate does not exactly match the other OLD_EVP functions (eg
   in openssl 0.9.6) so add an explicit test for it.

 - (djm) OpenBSD CVS Sync
   - 2009/03/05 07:18:19
     [auth2-jpake.c jpake.c jpake.h monitor_wrap.c monitor_wrap.h schnorr.c]
     refactor the (disabled) Schnorr proof code to make it a little more
     generally useful
   - 2009/03/05 11:30:50
     document what these functions do so I don't ever have to recuse into
     b64_pton/ntop to remember their return values

 - (djm) OpenBSD CVS Sync
   - 2009/02/22 23:50:57
     [ssh_config.5 sshd_config.5]
     don't advertise experimental options
   - 2009/02/22 23:59:25
     missing period
   - 2009/02/23 00:06:15
 - (djm) [README] update for 5.2
 - (djm) Release openssh-5.2p1

 - (djm) OpenBSD CVS Sync
   - 2009/02/21 19:32:04
     [misc.c sftp-server-main.c ssh-keygen.c]
     Added missing newlines in error messages.
     ok dtucker

 - (djm) OpenBSD CVS Sync
   - 2009/02/17 01:28:32
     sync with revised default ciphers; pointed out by dkrause@
   - 2009/02/18 04:31:21
     signature should hash over the entire group, not just the generator
     (this is still disabled code)
 - (djm) [contrib/caldera/openssh.spec contrib/redhat/openssh.spec]
   [contrib/suse/openssh.spec] Prepare for 5.2p1

 - (djm) [regress/ regress/]
   [regress/ regress/] Downgrade disabled
   interop tests from FATAL error to a warning. Allows some interop
   tests to proceed if others are missing necessary prerequisites.
 - (djm) [] support GNU/kFreeBSD and GNU/kOpensolaris
   systems; patch from Aurelien Jarno via rmh AT

 - (djm) OpenBSD CVS Sync
   - 2009/02/02 11:15:14
     Initialize a few variables to prevent spurious "may be used
     uninitialized" warnings from newer gcc's.  ok djm@
   - 2009/02/12 03:00:56
     [canohost.c canohost.h channels.c channels.h clientloop.c readconf.c]
     [readconf.h serverloop.c ssh.c]
     support remote port forwarding with a zero listen port (-R0:...) to
     dyamically allocate a listen port at runtime (this is actually
     specified in rfc4254); bz#1003 ok markus@
   - 2009/02/12 03:16:01
     tighten check for -R0:... forwarding: only allow dynamic allocation
     if want_reply is set in the packet
   - 2009/02/12 03:26:22
     some paranoia: check that the serialised key is really KEY_RSA before
     diddling its internals
   - 2009/02/12 03:42:09
     document -R0:... usage
   - 2009/02/12 03:44:25
     consistency: Dq => Ql
   - 2009/02/12 03:46:17
     document RemoteForward usage with 0 listen port
   - 2009/02/12 07:34:20
     kill trailing whitespace;
   - 2009/02/13 11:50:21
     check for enc !=NULL in packet_start_discard
   - 2009/02/14 06:35:49
     mention that eow and no-more-sessions extensions are sent only to
     OpenSSH peers

 - (djm) [sshpty.c] bz#1419: OSX uses cloning ptys that automagically
   set ownership and modes, so avoid explicitly setting them
 - (djm) [ loginrec.c] bz#1421: fix lastlog support for OSX.
   OSX provides a getlastlogxbyname function that automates the reading of
   a lastlog file. Also, the pututxline function will update lastlog so
   there is no need for loginrec.c to do it explicitly. Collapse some
   overly verbose code while I'm in there.

 - (dtucker) [defines.h sshconnect.c] INET6_ADDRSTRLEN is now needed in
   channels.c too, so move the definition for non-IP6 platforms to defines.h
   where it can be shared.

 - (tim) [contrib/cygwin/ssh-host-config] Patch from Corinna Vinschen.
   If the CYGWIN environment variable is empty, the installer script
   should not install the service with an empty CYGWIN variable, but
   rather without setting CYGWNI entirely.
 - (tim) [contrib/cygwin/ssh-host-config] Whitespace cleanup. No code changes.

 - (tim) [contrib/cygwin/ssh-host-config] Patch from Corinna Vinschen.
   Changes to work on Cygwin 1.5.x as well as on the new Cygwin 1.7.x.
   The information given for the setting of the CYGWIN environment variable
   is wrong for both releases so I just removed it, together with the
   unnecessary (Cygwin 1.5.x) or wrong (Cygwin 1.7.x) default setting.

 - (djm) OpenBSD CVS Sync
   - 2008/12/09 03:20:42
     [channels.c servconf.c]
     channel_print_adm_permitted_opens() should deal with all the printing
     for that config option.  suggested by markus@; ok markus@ djm@
   - 2008/12/09 04:32:22
     replace by-hand string building with xasprinf(); ok deraadt@
   - 2008/12/09 15:35:00
     [sftp.1 sftp.c]
     update for the synopses displayed by the 'help' command, there are a
     few missing flags; add 'bye' to the output of 'help'; sorting and spacing.
     jmc@ suggested replacing .Oo/.Oc with a single .Op macro.
     ok jmc@
   - 2008/12/09 22:37:33
     fix typo in error message
   - 2008/12/10 03:55:20
     o cannot be NULL here but use xfree() to be consistent; ok djm@
   - 2008/12/29 01:12:36
     fix example, default key type is rsa for 3+ years; from
   - 2008/12/29 02:23:26
     no need to escape single quotes in comments
   - 2008/12/30 00:46:56
     add AllowAgentForwarding to available Match keywords list
     ok djm
   - 2009/01/01 21:14:35
     call channel destroy callbacks on receipt of open failure messages.
     fixes client hangs when connecting to a server that has MaxSessions=0
     set spotted by imorgan AT; ok markus@
   - 2009/01/01 21:17:36
     fix hash calculation for KEXGEX: hash over the original client-supplied
     values and not the sanity checked versions that we acutally use;
     bz#1540 reported by john.smith AT
     ok markus@
   - 2009/01/14 01:38:06
     support SOCKS4A protocol, from dwmw2 AT via bz#1482;
     "looks ok" markus@
   - 2009/01/15 17:38:43
     1) use obsolete instead of alias for consistency
     2) oUserKnownHostsFile not obsolete but oGlobalKnownHostsFile2 is
        so move the comment.
     3) reorder so like options are together
     ok djm@
   - 2009/01/22 09:46:01
     [channels.c channels.h session.c]
     make Channel->path an allocated string, saving a few bytes here and
     there and fixing bz#1380 in the process; ok markus@
   - 2009/01/22 09:49:57
     oops! I committed the wrong version of the Channel->path diff,
     it was missing some tweaks suggested by stevesk@
   - 2009/01/22 10:02:34
     [clientloop.c misc.c readconf.c readconf.h servconf.c servconf.h]
     [serverloop.c ssh-keyscan.c ssh.c sshd.c]
     make a2port() return -1 when it encounters an invalid port number
     rather than 0, which it will now treat as valid (needed for future work)
     adjust current consumers of a2port() to check its return value is <= 0,
     which in turn required some things to be converted from u_short => int
     make use of int vs. u_short consistent in some other places too
     feedback & ok markus@
   - 2009/01/22 10:09:16
     another chunk of a2port() diff that got away. wtfdjm??
   - 2009/01/23 07:58:11
     prefer CTR modes and revised arcfour (i.e w/ discard) modes to CBC
     modes; ok markus@
   - 2009/01/24 17:10:22
     [ssh_config.5 sshd_config.5]
     sync list of preferred ciphers; ok djm@
   - 2009/01/26 09:58:15
     [cipher.c cipher.h packet.c]
     Work around the CPNI-957037 Plaintext Recovery Attack by always
     reading 256K of data on packet size or HMAC errors (in CBC mode only).
     Help, feedback and ok djm@
     Feedback from Martin Albrecht and Paterson Kenny

 - (djm) [uidswap.c] bz#1412: Support >16 supplemental groups in OS X.
   Patch based on one from vgiffin AT; ok dtucker@
 - (djm) [channels.c] bz#1419: support "on demand" X11 forwarding via
   launchd on OS X; patch from vgiffin AT, slightly tweaked;
   ok dtucker@
 - (djm) [contrib/ssh-copy-id.1 contrib/ssh-copy-id] bz#1492: Make
   ssh-copy-id copy by default (instead of the legacy "identity"
   key). Patch from cjwatson AT

 - (tim) [ defines.h openbsd-compat/port-uw.c
   openbsd-compat/xcrypt.c] Add SECUREWARE support to OpenServer 6 SVR5 ABI.
   OK djm@ dtucker@
 - (tim) [] Move check_for_libcrypt_later=1 in *-*-sysv5*) section.
   OpenServer 6 doesn't need libcrypt.

 - (djm) OpenBSD CVS Sync
   - 2008/12/09 02:38:18
     The ~C escape handler does not work correctly for multiplexed sessions -
     it opens a commandline on the master session, instead of on the slave
     that requested it. Disable it on slave sessions until such time as it
     is fixed; bz#1543 report from Adrian Bridgett via Colin Watson
     ok markus@
   - 2008/12/09 02:39:59
     Deal correctly with failures in remote stat() operation in sftp,
     correcting fail-on-error behaviour in batchmode. bz#1541 report and
     fix from anedvedicky AT; ok markus@
   - 2008/12/09 02:58:16
     don't leave junk (free'd) pointers around in Forward *fwd argument on
     failure; avoids double-free in ~C -L handler when given an invalid
     forwarding specification; bz#1539 report from adejong AT
     via Colin Watson; ok markus@ dtucker@
   - 2008/12/09 03:02:37
     [sftp.1 sftp.c]
     correct sftp(1) and corresponding usage syntax;
     bz#1518 patch from imorgan AT; ok deraadt@ improved diff jmc@

 - (djm) [] bz#1538: better test for ProPolice/SSP: actually
   use some stack in main().
   Report and suggested fix from vapier AT
 - (djm) OpenBSD CVS Sync
   - 2008/12/02 19:01:07
     we have to use the recipient's channel number (RFC 4254) for
     otherwise we trigger 'Non-public channel' error messages on sshd
     systems with clientkeepalive enabled; noticed by sturm; ok djm;
   - 2008/12/02 19:08:59
     backout 1.149, since it's not necessary and openssh clients send
     broken CHANNEL_FAILURE/SUCCESS messages since about 2004; ok djm@
   - 2008/12/02 19:09:38
     s/remote_id/id/ to be more consistent with other code; ok djm@

 - (dtucker) [contrib/cygwin/{Makefile,ssh-host-config}]  Add new doc files
   and tweak the is-sshd-running check in ssh-host-config.  Patch from
   vinschen at redhat com.
 - (dtucker) OpenBSD CVS Sync
   - 2008/11/21 15:47:38
     packet_disconnect() on padding error, too.  should reduce the success
     probability for the CPNI-957037 Plaintext Recovery Attack to 2^-18
     ok djm@
   - 2008/11/30 11:59:26
     Retry sendmsg/recvmsg on EAGAIN and EINTR; ok djm@

 - (dtucker) [monitor_fdpass.c] Reduce diff vs OpenBSD by moving some
    declarations, removing an unnecessary union member and adding whitespace.
    cmsgbuf.tmp thing spotted by des at des no, ok djm some time ago.

 - (tim) [addrmatch.c] Some platforms do not have sin6_scope_id
   member of sockaddr_in6. Also reported in Bug 1491 by David Leonard. OK and
   feedback by djm@

 - (dtucker) OpenBSD CVS Sync
   - 2008/11/05 11:22:54
     passord -> password;
     fixes user/5975 from Rene Maroufi
   - 2008/11/07 00:42:12
     spelling/typo in comment
   - 2008/11/07 18:50:18
     add space to some log/debug messages for readability; ok djm@ markus@
   - 2008/11/07 23:34:48
     Move JPAKE define to make life easier for portable.  ok djm@
   - 2008/11/09 12:34:47
     [session.c ssh.1]
     typo fixed (overriden -> overridden)
     ok espie, jmc
   - 2008/11/11 02:58:09
     USE_AFS not referenced so remove #ifdef.  fixes sshd -T not printing
     kerberosgetafstoken. ok dtucker@
     (Id sync only, we still want the ifdef in portable)
   - 2008/11/11 03:55:11
     for sshd -T print 'permitopen any' vs. 'permitopen' for case of no
     permitopen's; ok and input dtucker@
   - 2008/11/10 02:06:35
     PuTTY supports AES CTR modes, so interop test against them too

 - OpenBSD CVS Sync
   - 2008/11/03 08:59:41
     include MaxSessions in sshd -T output; patch from imorgan AT
   - 2008/11/04 07:58:09
     need unistd.h for close() prototype
     (ID sync only)
   - 2008/11/04 08:22:13
     [auth.h auth2.c monitor.c monitor.h monitor_wrap.c monitor_wrap.h]
     [readconf.c readconf.h servconf.c servconf.h ssh2.h ssh_config.5]
     [sshconnect2.c sshd_config.5 jpake.c jpake.h schnorr.c auth2-jpake.c]
     Add support for an experimental zero-knowledge password authentication
     method using the J-PAKE protocol described in F. Hao, P. Ryan,
     "Password Authenticated Key Exchange by Juggling", 16th Workshop on
     Security Protocols, Cambridge, April 2008.
     This method allows password-based authentication without exposing
     the password to the server. Instead, the client and server exchange
     cryptographic proofs to demonstrate of knowledge of the password while
     revealing nothing useful to an attacker or compromised endpoint.
     This is experimental, work-in-progress code and is presently
     compiled-time disabled (turn on -DJPAKE in
     "just commit it.  It isn't too intrusive." deraadt@
   - 2008/11/04 19:18:00
     because parse_forward() is now used to parse all forward types (DLR),
     and it malloc's space for host variables, we don't need to malloc
     here.  fixes small memory leaks.
     previously dynamic forwards were not parsed in parse_forward() and
     space was not malloc'd in that case.
     ok djm@
   - 2008/11/05 03:23:09
     [clientloop.c ssh.1]
     add dynamic forward escape command line; ok djm@

 - OpenBSD CVS Sync
   - 2008/07/24 23:55:30
     Add "ssh-keygen -F -l" to synopsis (displays fingerprint from
     known_hosts).  ok djm@
   - 2008/07/25 06:56:35
     Add VisualHostKey to example file, ok djm@
   - 2008/07/25 07:05:16
     In random art visualization, make sure to use the end marker only at the
     end.  Initial diff by Dirk Loss, tweaks and ok djm@
  - 2008/07/31 14:48:28
     don't allocate space for empty banners; report t8m at;
     ok deraadt
   - 2008/08/02 04:29:51
     whitepsace -> whitespace. From Matthew Clarke via bugs@.
   - 2008/08/21 04:09:57
     allow ForceCommand internal-sftp with arguments. based on patch from
     michael.barabanov AT; ok markus@
   - 2008/09/06 12:24:13
     OpenSSL 0.9.8h supplies a real EVP_sha256 so we do not need our
     replacement anymore
     (ID sync only for portable - we still need this)
   - 2008/09/11 14:22:37
     [compat.c compat.h nchan.c ssh.c]
     only send eow and no-more-sessions requests to openssh 5 and newer;
     fixes interop problems with broken ssh v2 implementations; ok djm@
   - 2008/10/02 14:39:35
     Convert an unchecked strdup to xstrdup.  OK deraadt@
  - 2008/10/03 13:08:12
     do not give an example of how to chmod files: we can presume the user
     knows that. removes an ambiguity in the permission of authorized_keys;
     ok deraadt
   - 2008/10/03 23:56:28
     Repair strnvis() buffersize of 4*n+1, with termination gauranteed by the
     spotted by des@freebsd, who commited an incorrect fix to the freebsd tree
     and (as is fairly typical) did not report the problem to us.  But this fix
     is correct.
     ok djm
   - 2008/10/08 23:34:03
     [ssh.1 ssh.c]
     Add -y option to force logging via syslog rather than stderr.
     Useful for daemonised ssh connection (ssh -f). Patch originally from
     and ok'd by markus@
   - 2008/10/09 03:50:54
     [servconf.c sshd_config.5]
     support setting PermitEmptyPasswords in a Match block
     requested in PR3891; ok dtucker@
   - 2008/10/09 06:54:22
     add -y to usage();
   - 2008/10/10 04:55:16
     spelling in comment; ok djm@
   - 2008/10/10 05:00:12
     typo in error message; ok djm@
   - 2008/10/10 16:43:27
     use 'Privileged ports can be forwarded only when logging in as root on
     the remote machine.' for RemoteForward just like ssh.1 -R.
     ok djm@ jmc@
   - 2008/10/14 18:11:33
     use #define ROQUIET here; no binary change. ok dtucker@
   - 2008/10/17 18:36:24
     correct and clarify VisualHostKey; ok jmc@
   - 2008/10/30 19:31:16
     [clientloop.c sshd.c]
     don't need to #include "monitor_fdpass.h"
   - 2008/10/31 15:05:34
     remove unused #define DISPATCH_MIN; ok markus@
   - 2008/11/01 04:50:08
     sprinkle ARGSUSED on dispatch handlers
     nuke stale unusued prototype
   - 2008/11/01 06:43:33
     fix some typos in log messages; ok djm@
   - 2008/11/01 11:14:36
     [ssh-keyscan.1 ssh-keyscan.c]
     the ellipsis is not an optional argument; while here, improve spacing.
   - 2008/11/01 17:40:33
     [clientloop.c readconf.c readconf.h ssh.c]
     merge dynamic forward parsing into parse_forward();
     'i think this is OK' djm@
   - 2008/11/02 00:16:16
     protocol 2 tty modes support is now 7.5 years old so remove these
     debug3()s; ok deraadt@
   - 2008/11/03 01:07:02
     remove valueless comment
   - 2008/11/03 02:44:41
     fix comment
 - (djm) [contrib/caldera/ssh-host-keygen contrib/suse/rc.sshd]
   Make example scripts generate keys with default sizes rather than fixed,
   non-default 1024 bits; patch from imorgan AT
 - (djm) [contrib/sshd.pam.generic contrib/caldera/sshd.pam]
   [contrib/redhat/sshd.pam] Move pam_nologin to account group from
   incorrect auth group in example files;
   patch from imorgan AT

 - (dtucker) [config.guess config.sub] Update to latest versions from (2008-04-14 and 2008-06-16

 - (dtucker) [openbsd-compat/bsd-poll.c] correctly check for number of FDs
   larger than FD_SETSIZE (OpenSSH only ever uses poll with one fd).  Patch
   from Nicholas Marriott.

 - (djm) OpenBSD CVS Sync
   - 2008/07/23 07:36:55
     do not try to print options that have been compile-time disabled
     in config test mode (sshd -T); report from nix-corp AT
     ok dtucker@
 - (djm) [servconf.c] Print UsePAM option in config test mode (when it
   has been compiled in); report from nix-corp AT
   ok dtucker@

 - (djm) OpenBSD CVS Sync
   - 2008/07/18 22:51:01
     no need for .Pp before or after .Sh;
   - 2008/07/21 08:19:07
 - (djm) [README contrib/caldera/openssh.spec contrib/redhat/openssh.spec]
   [contrib/suse/openssh.spec] Update version number in README and RPM specs
 - (djm) Release OpenSSH-5.1

 - (djm) OpenBSD CVS Sync
   - 2008/07/17 08:48:00
     strnvis preauth banner; pointed out by mpf@ ok markus@
   - 2008/07/17 08:51:07
     strip trailing '.' from hostname when HostbasedUsesNameFromPacketOnly=yes
     report and patch from res AT (bz#1200); ok markus@
 - (dtucker) [openbsd-compat/bsd-cygwin_util.c]  Remove long-unneeded compat
   code, replace with equivalent cygwin library call.  Patch from vinschen
   at, ok djm@.
 - (djm) [sshconnect2.c] vis.h isn't available everywhere

 - OpenBSD CVS Sync
   - 2008/07/15 02:23:14
     number of pipelined requests is now 64;
     prodded by Iain.Morgan AT
   - 2008/07/16 11:51:14
     rename variable first_gc -> last_gc (since it is actually the last
     in the list).
   - 2008/07/16 11:52:19
     this loop index should be automatic, not static

 - (djm) OpenBSD CVS Sync
   - 2008/07/13 21:22:52
     Change "ssh-keygen -F [host] -l" to not display random art unless
     -v is also specified, making it consistent with the manual and other
     uses of -l.
     ok grunk@
   - 2008/07/13 22:13:07
     use struct sockaddr_storage instead of struct sockaddr for accept(2)
     address argument. from visibilis AT in bz#1485; ok markus@
   - 2008/07/13 22:16:03
     increase number of piplelined requests so they properly fill the
     (recently increased) channel window. prompted by rapier AT;
     ok markus@
   - 2008/07/14 01:55:56
     mention requirement for /dev/log inside chroot when using sftp-server
     with ChrootDirectory
 - (djm) [openbsd-compat/bindresvport.c] Rename variables s/sin/in/ to
   avoid clash with sin(3) function; reported by
   cristian.ionescu-idbohrn AT
 - (djm) [openbsd-compat/rresvport.c] Add unistd.h for missing close()
   prototype; reported by cristian.ionescu-idbohrn AT
 - (djm) [umac.c] Rename variable s/buffer_ptr/bufp/ to avoid clash;
   reported by cristian.ionescu-idbohrn AT
 - (djm) [contrib/cygwin/Makefile contrib/cygwin/ssh-host-config]
   [contrib/cygwin/ssh-user-config contrib/cygwin/sshd-inetd]
   Revamped and simplified Cygwin ssh-host-config script that uses
   unified csih configuration tool. Requires recent Cygwin.
   Patch from vinschen AT

 - (djm) OpenBSD CVS Sync
   - 2008/07/12 04:52:50
     unbreak; move clearing of cctx struct to before first use
     reported by dkrause@
   - 2008/07/12 05:33:41
     better description for -i flag:
     s/RSA authentication/public key authentication/
 - (djm) [openbsd-compat/fake-rfc2553.c openbsd-compat/fake-rfc2553.h]
   return EAI_FAMILY when trying to lookup unsupported address family;
   from vinschen AT

 - (djm) OpenBSD CVS Sync
   - 2008/07/07 00:31:41
     we don't need arg after the debug3() was removed.  from lint.
     ok djm@
   - 2008/07/07 23:32:51
     /*NOTREACHED*/ for lint warning:
       warning: function key_equal falls off bottom without returning value
     ok djm@
   - 2008/07/10 18:05:58
     missing bzero; from mickey; ok djm@
   - 2008/07/10 18:08:11
     [clientloop.c monitor.c monitor_wrap.c packet.c packet.h sshd.c]
     sync v1 and v2 traffic accounting; add it to sshd, too;
     ok djm@, dtucker@

 - (djm) [] Print "all tests passed" when all regress tests pass
 - (djm) [auth1.c] Fix format string vulnerability in protocol 1 PAM
   account check failure path. The vulnerable format buffer is supplied
   from PAM and should not contain attacker-supplied data.
 - (djm) [auth.c] Missing unistd.h for close()
 - (djm) [] Add -Wformat-security to CFLAGS for gcc 3.x and 4.x

 - (djm) [auth.c] Fixed test for locked account on HP/UX with shadowed
   passwords disabled. bz#1083 report & patch from senthilkumar_sen AT, w/ dtucker@
 - (djm) [atomicio.c] Disable poll() fallback in atomiciov for
   Tru64. readv doesn't seem to be a comparable object there.
   bz#1386, patch from dtucker@ ok me
 - (djm) [] Pass though pass to conch for interop tests
 - (djm) [] unbreak: remove extra closing brace
 - (djm) OpenBSD CVS Sync
   - 2008/07/04 23:08:25
     handle EINTR in packet_write_poll()l ok dtucker@
   - 2008/07/04 23:30:16
     [auth1.c auth2.c]
     Make protocol 1 MaxAuthTries logic match protocol 2's.
     Do not treat the first protocol 2 authentication attempt as
     a failure IFF it is for method "none".
     Makes MaxAuthTries' user-visible behaviour identical for
     protocol 1 vs 2.
     ok dtucker@
   - 2008/07/05 05:16:01

 - (dtucker) OpenBSD CVS Sync
   - 2008/07/02 13:30:34
     really really remove the freebie "none" auth try for protocol 2
   - 2008/07/02 13:47:39
     [ssh.1 ssh.c]
     When forking after authentication ("ssh -f") with ExitOnForwardFailure
     enabled, delay the fork until after replies for any -R forwards have
     been seen. Allows for robust detection of -R forward failure when
     using -f (similar to bz#92); ok dtucker@
   - 2008/07/03 21:46:58
     avoid nasty double free; ok dtucker@ djm@
   - 2008/07/04 03:44:59
     [servconf.c groupaccess.h groupaccess.c]
     support negation of groups in "Match group" block (bz#1315); ok dtucker@
   - 2008/07/04 03:47:02
     Make debug a little clearer.  ok djm@
   - 2008/06/30 08:07:34
     shell portability: use "=" instead of "==" in test(1) expressions,
     double-quote string with backslash escaped /
   - 2008/06/30 10:31:11
     remove "set -e" left over from debugging
   - 2008/06/30 10:43:03
     explicitly disable conch options that could interfere with the test
 - (dtucker) [sftp-server.c] Bug #1447: fall back to racy rename if link
   returns EXDEV.  Patch from Mike Garrison, ok djm@
 - (djm) [atomicio.c channels.c clientloop.c defines.h includes.h]
   [packet.c scp.c serverloop.c sftp-client.c ssh-agent.c ssh-keyscan.c]
   [sshd.c] Explicitly handle EWOULDBLOCK wherever we handle EAGAIN, on
   some platforms (HP nonstop) it is a distinct errno;
   bz#1467 reported by sconeu AT; ok dtucker@

 - (dtucker) OpenBSD CVS Sync
    - 2008/06/30 08:05:59
      typo: s/constraint_date/constraint_data/
   - 2008/06/30 12:15:39
     only pass channel requests on session channels through to the session
     channel handler, avoiding spurious log messages; ok! markus@
   - 2008/06/30 12:16:02
     only send notifications for session channels; ok! markus@
   - 2008/06/30 12:18:34
     clarify that is only sent on session channels
   - 2008/07/01 07:20:52
     Check ExitOnForwardFailure if forwardings are disabled due to a failed
     host key check.  ok djm@
   - 2008/07/01 07:24:22
     [sshconnect.c sshd.c]
     Send CR LF during protocol banner exchanges, but only for Protocol 2 only,
     in order to comply with RFC 4253.  bz #1443, ok djm@
   - 2008/07/01 23:12:47
     fix some typos; ok djm@
   - 2008/07/02 02:24:18
     [sshd_config sshd_config.5 sshd.8 servconf.c]
     increase default size of ssh protocol 1 ephemeral key from 768 to 1024
     bits; prodded by & ok dtucker@ ok deraadt@
   - 2008/07/02 12:03:51
     [auth-rsa.c auth.c auth2-pubkey.c auth.h]
     Merge duplicate host key file checks, based in part on a patch from Rob
     Holland via bz #1348 .  Also checks for non-regular files during protocol
     1 RSA auth.  ok djm@
   - 2008/07/02 12:36:39
     [auth2-none.c auth2.c]
     Make protocol 2 MaxAuthTries behaviour a little more sensible:
     Check whether client has exceeded MaxAuthTries before running
     an authentication method and skip it if they have, previously it
     would always allow one try (for "none" auth).
     Preincrement failure count before post-auth test - previously this
     checked and postincremented, also to allow one "none" try.
     Together, these two changes always count the "none" auth method
     which could be skipped by a malicious client (e.g. an SSH worm)
     to get an extra attempt at a real auth method. They also make
     MaxAuthTries=0 a useful way to block users entirely (esp. in a
     sshd_config Match block).
     Also, move sending of any preauth banner from "none" auth method
     to the first call to input_userauth_request(), so worms that skip
     the "none" method get to see it too.

 - (djm) OpenBSD CVS Sync
   - 2008/06/10 23:13:43
     [regress/Makefile regress/]
     Add regress test for key options.  ok djm@
   - 2008/06/11 23:11:40
     Don't run cipher-speed test by default; mistakenly enabled by me
   - 2008/06/28 13:57:25
     [regress/Makefile regress/ regress/]
     very basic regress test against Twisted Conch in "make interop"
     target (conch is available in ports/devel/py-twisted/conch);
     ok markus@
 - (djm) [regress/Makefile] search for conch by path, like we do putty

 - (djm) OpenBSD CVS Sync
   - 2008/06/21 07:46:46
     use optopt to get invalid flag, instead of return value of getopt,
     which is always '?';  ok djm@
   - 2008/06/25 11:13:43
     add key length to visual fingerprint; zap magical constants;
     ok grunk@ djm@
   - 2008/06/26 06:10:09
     [sftp-client.c sftp-server.c]
     allow the sftp chmod(2)-equivalent operation to set set[ug]id/sticky
     bits. Note that this only affects explicit setting of modes (e.g. via
     sftp(1)'s chmod command) and not file transfers. (bz#1310)
     ok deraadt@ at c2k8
   - 2008/06/26 09:19:40
     [dh.c dh.h moduli.c]
     when loading moduli from /etc/moduli in sshd(8), check that they
     are of the expected "safe prime" structure and have had
     appropriate primality tests performed;
     feedback and ok dtucker@
   - 2008/06/26 11:46:31
     [readconf.c readconf.h ssh.1 ssh_config.5 sshconnect.c]
     Move SSH Fingerprint Visualization away from sharing the config option
     CheckHostIP to an own config option named VisualHostKey.
     While there, fix the behaviour that ssh would draw a random art picture
     on every newly seen host even when the option was not enabled.
     prodded by deraadt@, discussions,
     help and ok markus@ djm@ dtucker@
   - 2008/06/26 21:11:46
     add VisualHostKey to the list of options listed in -o;
   - 2008/06/28 07:25:07
     spelling fixes
   - 2008/06/28 13:58:23
     refuse to add a key that has unknown constraints specified;
     ok markus
   - 2008/06/28 14:05:15
     reset global compat flag after processing a protocol 2 signature
     request with the legacy DSA encoding flag set; ok markus
   - 2008/06/28 14:08:30
     document the protocol used by ssh-agent; "looks ok" markus@

 - (djm) [RFC.nroff contrib/cygwin/Makefile contrib/suse/openssh.spec]
   RFC.nroff lacks a license, remove it (it is long gone in OpenBSD).

 - (djm) [ moduli.5] Include moduli(5) manpage from OpenBSD.
 - (djm) [ contrib/caldera/openssh.spec contrib/redhat/openssh.spec]
   [contrib/suse/openssh.spec] Include moduli.5 in RPM spec files.

 - (dtucker) OpenBSD CVS Sync
   - 2008/06/16 13:22:53
     [session.c channels.c]
     Rename the isatty argument to is_tty so we don't shadow
     isatty(3).  ok markus@
 - (dtucker) [channels.c] isatty -> is_tty here too.

 - (dtucker) [] Enable -fno-builtin-memset when using gcc.
 - OpenBSD CVS Sync
   - 2008/06/14 15:49:48
     wrap long line at 80 chars
   - 2008/06/14 17:07:11
     ensure default umask disallows at least group and world write; ok djm@
   - 2008/06/14 18:33:43
     suppress the warning message from chdir(homedir) failures
     when chrooted (bz#1461); ok dtucker
   - 2008/06/14 19:42:10
     Mention that scp follows symlinks during -r.  bz #1466,
     from nectar at apple
   - 2008/06/15 16:55:38
     MaxSessions is allowed in a Match block too
   - 2008/06/15 16:58:40
     [servconf.c sshd_config.5]
     Allow MaxAuthTries within a Match block.  ok djm@
   - 2008/06/15 20:06:26
     [channels.c channels.h session.c]
     don't call isatty() on a pty master, instead pass a flag down to
     channel_set_fds() indicating that te fds refer to a tty. Fixes a
     hang on exit on Solaris (bz#1463) in portable but is actually
     a generic bug; ok dtucker deraadt markus

 - (djm) [openbsd-compat/sigact.c] Avoid NULL derefs in ancient sigaction
   replacement code; patch from ighighi AT in bz#1240;
   ok dtucker

 - (dtucker) OpenBSD CVS Sync
   - 2008/06/13 09:44:36
     compile on older gcc; no decl after code
   - 2008/06/13 13:56:59
     Clear key options in the monitor on failed authentication, prevents
     applying additional restrictions to non-pubkey authentications in
     the case where pubkey fails but another method subsequently succeeds.
     bz #1472, found by Colin Watson, ok markus@ djm@
   - 2008/06/13 14:18:51
     [auth2-pubkey.c auth-rhosts.c]
     Include unistd.h for close(), prevents warnings in -portable
   - 2008/06/13 17:21:20
     Friendlier error messages for mux fallback.  ok djm@
   - 2008/06/13 18:55:22
     Prevent -Wsign-compare warnings on LP64 systems.  bz #1192, ok deraadt@
   - 2008/06/13 20:13:26
     Explain the use of SSH fpr visualization using random art, and cite the
     original scientific paper inspiring that technique.
     Much help with English and nroff by jmc@, thanks.
 - (dtucker) [] Bug #1276: avoid linking against libgssapi, which
   despite its name doesn't seem to implement all of GSSAPI.  Patch from
   Jan Engelhardt, sanity checked by Simon Wilkinson.

 - (dtucker) OpenBSD CVS Sync
   - 2008/06/11 07:30:37
     kill trailing whitespace;
   - 2008/06/11 21:01:35
     [ssh_config.5 key.h readconf.c readconf.h ssh-keygen.1 ssh-keygen.c key.c
     Introduce SSH Fingerprint ASCII Visualization, a technique inspired by the
     graphical hash visualization schemes known as "random art", and by
     Dan Kaminsky's musings on the subject during a BlackOp talk at the
     23C3 in Berlin.
     Scientific publication (original paper):
     "Hash Visualization: a New Technique to improve Real-World Security",
     Perrig A. and Song D., 1999, International Workshop on Cryptographic
     Techniques and E-Commerce (CrypTEC '99)
     The algorithm used here is a worm crawling over a discrete plane,
     leaving a trace (augmenting the field) everywhere it goes.
     Movement is taken from dgst_raw 2bit-wise.  Bumping into walls
     makes the respective movement vector be ignored for this turn,
     thus switching to the other color of the chessboard.
     Graphs are not unambiguous for now, because circles in graphs can be
     walked in either direction.
     discussions with several people,
     help, corrections and ok markus@ djm@
   - 2008/06/11 21:38:25
     ssh-keygen -lv -f /etc/ssh/
     would not display you the random art as intended, spotted by canacar@
   - 2008/06/11 22:20:46
     [ssh-keygen.c ssh-keygen.1]
     ssh-keygen would write fingerprints to STDOUT, and random art to STDERR,
     that is not how it was envisioned.
     Also correct manpage saying that -v is needed along with -l for it to work.
     spotted by naddy@
   - 2008/06/11 23:02:22
     simpler way of computing the augmentations; ok grunk@
   - 2008/06/11 23:03:56
     CheckHostIP set to ``fingerprint'' will display both hex and random art
     spotted by naddy@
   - 2008/06/11 23:51:57
     #define statements that are not atoms need braces around them, else they
     will cause trouble in some cases.
     Also do a computation of -1 once, and not in a loop several times.
     spotted by otto@
   - 2008/06/12 00:03:49
     [dns.c canohost.c sshconnect.c]
     Do not pass "0" strings as ports to getaddrinfo because the lookups
     can slow things down and we never use the service info anyway. bz
     #859, patch from YOSHIFUJI Hideaki and John Devitofranceschi.  ok
     deraadt@ djm@
     djm belives that the reason for the "0" strings is to ensure that
     it's not possible to call getaddrinfo with both host and port being
     NULL.  In the case of canohost.c host is a local array.  In the
     case of sshconnect.c, it's checked for null immediately before use.
     In dns.c it ultimately comes from ssh.c:main() and is guaranteed to
     be non-null but it's not obvious, so I added a warning message in
     case it is ever passed a null.
   - 2008/06/12 00:13:55
     Make ssh print the random art also when ssh'ing to a host using IP only.
     spotted by naddy@, ok and help djm@ dtucker@
   - 2008/06/12 00:13:13
     use an odd number of rows and columns and a separate start marker, looks
     better; ok grunk@
   - 2008/06/12 03:40:52
     [clientloop.h mux.c channels.c clientloop.c channels.h]
     Enable ~ escapes for multiplex slave sessions; give each channel
     its own escape state and hook the escape filters up to muxed
     channels. bz #1331
     Mux slaves do not currently support the ~^Z and ~& escapes.
     NB. this change cranks the mux protocol version, so a new ssh
     mux client will not be able to connect to a running old ssh
     mux master.
     ok dtucker@
   - 2008/06/12 04:06:00
     [clientloop.h ssh.c clientloop.c]
     maintain an ordered queue of outstanding global requests that we
     expect replies to, similar to the per-channel confirmation queue.
     Use this queue to verify success or failure for remote forward
     establishment in a race free way.
     ok dtucker@
   - 2008/06/12 04:17:47
     thall shalt not code past the eightieth column
   - 2008/06/12 04:24:06
     thal shalt not code past the eightieth column
   - 2008/06/12 05:15:41
     document forwarding method
   - 2008/06/12 05:32:30
     some more TODO for me
   - 2008/06/12 05:42:46
     supply the key type (rsa1, rsa, dsa) as a caption in the frame of the
     random art.  while there, stress the fact that the field base should at
     least be 8 characters for the pictures to make sense.
     comment and ok djm@
   - 2008/06/12 06:32:59
     We already mark the start of the worm, now also mark the end of the worm
     in our random art drawings.
     ok djm@
   - 2008/06/12 15:19:17
     [clientloop.h channels.h clientloop.c channels.c mux.c]
     The multiplexing escape char handler commit last night introduced a
     small memory leak per session; plug it.
   - 2008/06/12 16:35:31
     [ssh_config.5 ssh.c]
     keyword expansion for localcommand.  ok djm@
   - 2008/06/12 19:10:09
     [ssh_config.5 ssh-keygen.1]
     tweak the ascii art text; ok grunk
   - 2008/06/12 20:38:28
     [sshd.c sshconnect.c packet.h misc.c misc.h packet.c]
     Make keepalive timeouts apply while waiting for a packet, particularly
     during key renegotiation (bz #1363).  With djm and Matt Day, ok djm@
   - 2008/06/12 20:47:04
     print extension revisions for extensions that we understand
   - 2008/06/12 21:06:25
     I was coalescing expected global request confirmation replies at
     the wrong end of the queue - fix; prompted by markus@
   - 2008/06/12 21:14:46
     make ssh-keygen -lf show the key type just as ssh-add -l would do it
     ok djm@ markus@
   - 2008/06/12 22:03:36
     add my copyright, ok djm@
   - 2008/06/12 23:24:58
     tweak wording in message, ok deraadt@ jmc@
   - 2008/06/13 00:12:02
     [sftp.h log.h]
     replace __dead with __attribute__((noreturn)), makes things
     a little easier to port.  Also, add it to sigdie().  ok djm@
   - 2008/06/13 00:16:49
     fall back to creating a new TCP connection on most multiplexing errors
     (socket connect fail, invalid version, refused permittion, corrupted
     messages, etc.); bz #1329 ok dtucker@
   - 2008/06/13 00:47:53
     upcast size_t to u_long to match format arg; ok djm@
   - 2008/06/13 00:51:47
     upcast another size_t to u_long to match format
   - 2008/06/13 01:38:23
     upcast uid to long with matching %ld, prevents warnings in portable
   - 2008/06/13 04:40:22
     [auth2-pubkey.c auth-rhosts.c]
     refuse to read ~/.shosts or ~/.ssh/authorized_keys that are not
     regular files; report from Solar Designer via Colin Watson in bz#1471
     ok dtucker@ deraadt
  - (dtucker) [clientloop.c serverloop.c]  channel_register_filter now
    takes 2 more args.  with djm@
  - (dtucker) [defines.h] Bug #1112: __dead is, well dead. Based on a patch
    from Todd Vierling.
  - (dtucker) [auth-sia.c] Bug #1241: support password expiry on Tru64 SIA
    systems.  Patch from R. Scott Bailey.
  - (dtucker) [umac.c] STORE_UINT32_REVERSED and endian_convert are never used
    on big endian machines, so ifdef them for little-endian only to prevent
    unused function warnings on big-endians.
  - (dtucker) [openbsd-compat/setenv.c] Make offsets size_t to prevent
    compiler warnings on some platforms.  Based on a discussion with otto@

 - (djm) [channels.c]
   Do not set SO_REUSEADDR on wildcard X11 listeners (X11UseLocalhost=no)
   bz#1464; ok dtucker 

 - (dtucker) OpenBSD CVS Sync
   - 2008/06/10 03:57:27
     [servconf.c match.h sshd_config.5]
     support CIDR address matching in sshd_config "Match address" blocks, with
     full support for negation and fall-back to classic wildcard matching.
     For example:
     Match address,3ffe:ffff::/32,!10.*
         PasswordAuthentication yes
     addrmatch.c code mostly lifted from flowd's addr.c
     feedback and ok dtucker@
   - 2008/06/10 04:17:46
     better reference for pattern-list
   - 2008/06/10 04:50:25
     [sshd.c channels.h channels.c log.c servconf.c log.h servconf.h sshd.8]
     Add extended test mode (-T) and connection parameters for test mode (-C).
     -T causes sshd to write its effective configuration to stdout and exit.
     -C causes any relevant Match rules to be applied before output.  The
     combination allows tesing of the parser and config files.  ok deraadt djm
   - 2008/06/10 07:12:00
     tweak previous;
   - 2008/06/10 08:17:40
     [sshd.8 sshd.c]
     - update usage()
     - fix SYNOPSIS, and sort options
     - some minor additional fixes
   - 2008/06/09 18:06:32
     Don't generate putty keys if we're not going to use them.  ok djm
   - 2008/06/10 05:23:32
     [regress/ regress/Makefile]
     Regress test for Match CIDR rules.  ok djm@
   - 2008/06/10 15:21:41
     Use a more portable construct for checking if we're running a putty test
   - 2008/06/10 15:28:49
     Add quotes
   - 2008/06/10 18:21:24
     clarify that Host patterns are space-separated.  ok deraadt
   - 2008/06/10 22:15:23
     [PROTOCOL ssh.c serverloop.c]
     Add a global request extension that the
     client sends when it knows that it will never request another session
     (i.e. when session multiplexing is disabled). This allows a server to
     disallow further session requests and terminate the session.
     Why would a non-multiplexing client ever issue additional session
     requests? It could have been attacked with something like SSH'jack:
     feedback & ok markus
   - 2008/06/10 23:06:19
     [auth-options.c match.c servconf.c addrmatch.c sshd.8]
     support CIDR address matching in .ssh/authorized_keys from="..." stanzas
     ok and extensive testing dtucker@
   - 2008/06/10 23:21:34
     Use '\0' for a nul byte rather than unadorned 0.  ok djm@
   - 2008/06/10 23:13:43
     [Makefile regress/]
     Add regress test for key options.  ok djm@
 - (dtucker) [openbsd-compat/fake-rfc2553.h] Add sin6_scope_id to sockaddr_in6
   since the new CIDR code in addmatch.c references it.
 - (dtucker) [ regress/] Skip IPv6
   specific tests on platforms that don't do IPv6.
 - (dtucker) [] Define TEST_SSH_IPV6 in make's arguments as well
   as environment.
 - (dtucker) [] Move addrmatch.o to libssh.a where it's needed now.

 - (dtucker) OpenBSD CVS Sync
   - 2008/06/08 17:04:41
     Add case for ENOSYS in errno_to_portable; ok deraadt
   - 2008/06/08 20:15:29
     [sftp.c sftp-client.c sftp-client.h]
     Have the sftp client store the statvfs replies in wire format,
     which prevents problems when the server's native sizes exceed the
     Also extends the sizes of the remaining 32bit wire format to 64bit,
     they're specified as unsigned long in the standard.
   - 2008/06/09 13:02:39
     Extend 32bit -> 64bit values for statvfs extension missed in previous
   - 2008/06/09 13:38:46
     Use a $OpenBSD tag so our scripts will sync changes.

 - (dtucker) [ defines.h sftp-client.c sftp-server.c sftp.c
   openbsd-compat/ openbsd-compat/openbsd-compat.h
   openbsd-compat/bsd-statvfs.{c,h}] Add a null implementation of statvfs and
   fstatvfs and remove #defines around statvfs code.  ok djm@
 - (dtucker) [ defines.h sftp-client.c M sftp-server.c] Add a
   macro to convert fsid to unsigned long for platforms where fsid is a
   2-member array.

 - (dtucker) [mux.c] Include paths.h inside ifdef HAVE_PATHS_H.
 - (dtucker) [ defines.h sftp-client.c sftp-server.c sftp.c]
   Do not enable statvfs extensions on platforms that do not have statvfs.
 - (dtucker) OpenBSD CVS Sync
   - 2008/05/19 06:14:02
     [packet.c] unbreak protocol keepalive timeouts bz#1465; ok dtucker@
   - 2008/05/19 15:45:07
     [sshtty.c ttymodes.c sshpty.h]
     Fix sending tty modes when stdin is not a tty (bz#1199). Previously
     we would send the modes corresponding to a zeroed struct termios,
     whereas we should have been sending an empty list of modes.
     Based on patch from daniel.ritz AT; ok dtucker@ markus@
   - 2008/05/19 15:46:31
     support -l (print fingerprint) in combination with -F (find host) to
     search for a host in ~/.ssh/known_hosts and display its fingerprint;
     ok markus@
   - 2008/05/19 20:53:52
     unbreak tree by committing this bit that I missed from:
     Fix sending tty modes when stdin is not a tty (bz#1199). Previously
     we would send the modes corresponding to a zeroed struct termios,
     whereas we should have been sending an empty list of modes.
     Based on patch from daniel.ritz AT; ok dtucker@ markus@ 

 - (djm) [openbsd-compat/bsd-arc4random.c] Fix math bug that caused bias
   in arc4random_uniform with upper_bound in (2^30,2*31). Note that 
   OpenSSH did not make requests with upper bounds in this range.

 - (djm) [ mux.c sftp.c openbsd-compat/]
   [openbsd-compat/fmt_scaled.c openbsd-compat/openbsd-compat.h]
   Fix compilation on Linux, including pulling in fmt_scaled(3)
   implementation from OpenBSD's libutil.

 - (djm) OpenBSD CVS Sync
   - 2008/04/04 05:14:38
     ChrootDirectory is supported in Match blocks (in fact, it is most useful
     there). Spotted by Minstrel AT
   - 2008/04/04 06:44:26
     oops, some unrelated stuff crept into that commit - backout.
     spotted by jmc@
   - 2008/04/05 02:46:02
     HostbasedAuthentication is supported under Match too
 - (djm) [openbsd-compat/bsd-arc4random.c openbsd-compat/openbsd-compat.c]
     [] Implement arc4random_buf(), import implementation of
     arc4random_uniform() from OpenBSD
 - (djm) [openbsd-compat/bsd-arc4random.c] Warning fixes
 - (djm) [openbsd-compat/port-tun.c] needs sys/queue.h
 - (djm) OpenBSD CVS Sync
   - 2008/04/13 00:22:17
     [dh.c sshd.c]
     Use arc4random_buf() when requesting more than a single word of output
     Use arc4random_uniform() when the desired random number upper bound
     is not a power of two
     ok deraadt@ millert@
   - 2008/04/18 12:32:11
     [sftp-client.c sftp-client.h sftp-server.c sftp.1 sftp.c sftp.h]
     introduce sftp extension methods and that implement statvfs(2)-like operations,
     based on a patch from miklos AT (bz#1399)
     also add a "df" command to the sftp client that uses the to produce a df(1)-like display of filesystem
     space and inode utilisation
     ok markus@
   - 2008/04/18 17:15:47
     macro fixage;
   - 2008/04/18 22:01:33
     remove unneccessary parentheses
   - 2008/04/29 11:20:31
     garbage collect two unused fields in struct mm_master; ok markus@
   - 2008/04/30 10:14:03
     [ssh-keyscan.1 ssh-keyscan.c]
     default to rsa (protocol 2) keys, instead of rsa1 keys; spotted by
     larsnooden AT
   - 2008/05/07 05:49:37
     [servconf.c servconf.h session.c sshd_config.5]
     Enable the AllowAgentForwarding option in sshd_config (global and match
     context), to specify if agents should be permitted on the server.
     As the man page states:
     ``Note that disabling Agent forwarding does not improve security
     unless users are also denied shell access, as they can always install
     their own forwarders.''
     ok djm@, ok and a mild frown markus@
   - 2008/05/07 06:43:35
     push the sshd_config bits in, spotted by ajacoutot@
   - 2008/05/07 08:00:14
   - 2008/05/08 06:59:01
     [bufaux.c buffer.h channels.c packet.c packet.h]
     avoid extra malloc/copy/free when receiving data over the net;
     ~10% speedup for localhost-scp; ok djm@
   - 2008/05/08 12:02:23
     [auth-options.c auth1.c channels.c channels.h clientloop.c gss-serv.c]
     [monitor.c monitor_wrap.c nchan.c servconf.c serverloop.c session.c]
     [ssh.c sshd.c]
     Implement a channel success/failure status confirmation callback
     mechanism. Each channel maintains a queue of callbacks, which will
     be drained in order (RFC4253 guarantees confirm messages are not
     reordered within an channel).
     Also includes a abandonment callback to clean up if a channel is
     closed without sending confirmation messages. This probably
     shouldn't happen in compliant implementations, but it could be
     abused to leak memory.
     ok markus@ (as part of a larger diff)
   - 2008/05/08 12:21:16
     [monitor.c monitor_wrap.c session.h servconf.c servconf.h session.c]
     [sshd_config sshd_config.5]
     Make the maximum number of sessions run-time controllable via
     a sshd_config MaxSessions knob. This is useful for disabling
     login/shell/subsystem access while leaving port-forwarding working
     (MaxSessions 0), disabling connection multiplexing (MaxSessions 1) or
     simply increasing the number of allows multiplexed sessions.
     Because some bozos are sure to configure MaxSessions in excess of the
     number of available file descriptors in sshd (which, at peak, might be
     as many as 9*MaxSessions), audit sshd to ensure that it doesn't leak fds
     on error paths, and make it fail gracefully on out-of-fd conditions -
     sending channel errors instead of than exiting with fatal().
     bz#1090; MaxSessions config bits and manpage from junyer AT
     ok markus@
   - 2008/05/08 13:06:11
     [clientloop.c clientloop.h ssh.c]
     Use new channel status confirmation callback system to properly deal
     with "important" channel requests that fail, in particular command exec,
     shell and subsystem requests. Previously we would optimistically assume
     that the requests would always succeed, which could cause hangs if they
     did not (e.g. when the server runs out of fds) or were unimplemented by
     the server (bz #1384)
     Also, properly report failing multiplex channel requests via the mux
     client stderr (subject to LogLevel in the mux master) - better than
     silently failing.
     most bits ok markus@ (as part of a larger diff)
   - 2008/05/09 04:55:56
     [channels.c channels.h clientloop.c serverloop.c]
     Try additional addresses when connecting to a port forward destination
     whose DNS name resolves to more than one address. The previous behaviour
     was to try the first address and give up.
     Reported by stig AT in bz#343
     great feedback and ok markus@
   - 2008/05/09 14:18:44
     [clientloop.c clientloop.h ssh.c mux.c]
     tidy up session multiplexing code, moving it into its own file and
     making the function names more consistent - making ssh.c and
     clientloop.c a fair bit more readable.
     ok markus@
   - 2008/05/09 14:26:08
     dingo stole my diff hunk
   - 2008/05/09 16:16:06
     re-add the USE_PIPES code and enable it.
     without pipes shutdown-read from the sshd does not trigger
     a SIGPIPE when the forked program does a write.
     ok djm@
     (Id sync only, USE_PIPES never left portable OpenSSH)
   - 2008/05/09 16:17:51
     error-fd race: don't enable the error fd in the select bitmask
     for channels with both in- and output closed, since the channel
     will go away before we call select();
     report, lots of debugging help and ok djm@
   - 2008/05/09 16:21:13
     [channels.h clientloop.c nchan.c serverloop.c]
        ssh -2 localhost od /bin/ls | true
     ignoring SIGPIPE by adding a new channel message (EOW) that signals
     the peer that we're not interested in any data it might send.
     fixes bz #85; discussion, debugging and ok djm@
   - 2008/05/12 20:52:20
     Ensure nh_result lies on a 64-bit boundary (fixes warnings observed
     on Itanium on Linux); from Dale Talcott (bug #1462); ok djm@
   - 2008/05/15 23:52:24
     document eow message in ssh protocol 2 channel state machine;
     feedback and ok markus@
   - 2008/05/18 21:29:05
     comment extension announcement
   - 2008/05/16 08:30:42
     document our protocol extensions and deviations; ok markus@
   - 2008/05/17 01:31:56
     grammar and correctness fixes from stevesk@

 - (djm) [openbsd-compat/bsd-poll.c] Include stdlib.h to avoid compile-
   time warnings on LynxOS. Patch from ops AT
 - (djm) Force string arguments to replacement setproctitle() though
   strnvis first. Ok dtucker@

 - (djm) OpenBSD CVS sync:
   - 2008/04/02 15:36:51
     avoid possible hijacking of x11-forwarded connections (back out 1.183)
     CVE-2008-1483; ok djm@
   - 2008/03/27 22:37:57
     remove trailing whitespace;
   - 2008/04/03 09:50:14
 - (djm) [contrib/caldera/openssh.spec contrib/redhat/openssh.spec]
   [contrib/suse/openssh.spec] Crank version numbers in RPM spec files
 - (djm) [README] Update link to release notes
 - (djm) Release 5.0p1