Add auto-recognition of BUG_SSH2_RSA_PADDING for ProFTPD.

Martin Prikryl reports that it had the exact same bug as old OpenSSH
(insisting that RSA signature integers be padded with leading zero
bytes to the same length as the RSA modulus, where in fact RFC 4253
section 6.6 says it ought to have _no_ padding), but is recently
fixed. The first version string to not have the bug is reported to be
"mod_sftp/0.9.9", so here we recognise everything less than that as
requiring our existing workaround.


git-svn-id: svn://svn.tartarus.org/sgt/putty@10161 cda61777-01e9-0310-a592-d414129be87e
Check for SURROGATE defines individually.

In mingw32 cross environment on CentOS 6.4 IS_HIGH_SURROGATE is
defined, but not the START and END macros.
Add .gitignore
Add defines and enums for GSS key exchange.
Add support for GSS verify MIC.

For both UNIX and Windows.
Based on Matt Loar's code from https://github.com/mloar/putty
Add ssh_kexes for GSS key exchange.

For both UNIX and Windows.
Based on Matt Loar's code from https://github.com/mloar/putty
Move gsslib to global Ssh struct.

Prepare for GSS key exchange.
Add null host key implementation (RFC 4462, section 5).

When using GSS key exchange the server need not have an RSA or DSS
host key to authenticate itself.
Move gss_srv_name to global Ssh struct.

Prepare for GSS key exchange.
Init gsslibs before key exchange.

Also add can_gssapi to global Ssh struct, and rename locals in
do_ssh2_authconn() to *_gssapi_mic.

Prepare for GSS key exchange.
Break out ssh2_get_nbits().

Prepare for GSS key exchange.
Do GSS import_name before key exchange.

Prepare for GSS key exchange.
Make authentication gss_ctx global.

Prepare for GSS key exchange.
Add support for GSS-API key exchange.

Includes support for "null" host key algorithm and gssapi-keyex
authentication.

Based on Matt Loar's code from https://github.com/mloar/putty
Use 64-bit MIT Kerberos DLL on 64-bit builds.
Add 64-bit manifest, and use for 64-bit builds.
Make compilation work on MinGW64 < 2.0.2.

MinGW64 defines the PROPERTYKEY since at least version 1.0, but didn't
define PROPERTYKEY_DEFINED until version 2.0.2.
Allow 3:rd party builds to be properly versioned.
Add README.md with info specific to the GSS-API keyex version.
Update .gitignore