summaryrefslogtreecommitdiff
path: root/sshkey.c
diff options
context:
space:
mode:
authorSimon Wilkinson <simon@sxw.org.uk>2014-02-09 16:09:48 +0000
committerColin Watson <cjwatson@debian.org>2017-01-16 15:02:41 +0000
commit48fbb156bdc676fb6ba6817770e4e971fbf85b1f (patch)
treef35c67c09472bddc3337b1c74b0cb6a1d9b58670 /sshkey.c
parent971a7653746a6972b907dfe0ce139c06e4a6f482 (diff)
GSSAPI key exchange support
This patch has been rejected upstream: "None of the OpenSSH developers are in favour of adding this, and this situation has not changed for several years. This is not a slight on Simon's patch, which is of fine quality, but just that a) we don't trust GSSAPI implementations that much and b) we don't like adding new KEX since they are pre-auth attack surface. This one is particularly scary, since it requires hooks out to typically root-owned system resources." However, quite a lot of people rely on this in Debian, and it's better to have it merged into the main openssh package rather than having separate -krb5 packages (as we used to have). It seems to have a generally good security history. Bug: https://bugzilla.mindrot.org/show_bug.cgi?id=1242 Last-Updated: 2017-01-16 Patch-Name: gssapi.patch
Diffstat (limited to 'sshkey.c')
-rw-r--r--sshkey.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sshkey.c b/sshkey.c
index c01da6c39..377d72fa9 100644
--- a/sshkey.c
+++ b/sshkey.c
@@ -114,6 +114,7 @@ static const struct keytype keytypes[] = {
114# endif /* OPENSSL_HAS_NISTP521 */ 114# endif /* OPENSSL_HAS_NISTP521 */
115# endif /* OPENSSL_HAS_ECC */ 115# endif /* OPENSSL_HAS_ECC */
116#endif /* WITH_OPENSSL */ 116#endif /* WITH_OPENSSL */
117 { "null", "null", KEY_NULL, 0, 0, 0 },
117 { NULL, NULL, -1, -1, 0, 0 } 118 { NULL, NULL, -1, -1, 0, 0 }
118}; 119};
119 120
@@ -202,7 +203,7 @@ sshkey_alg_list(int certs_only, int plain_only, char sep)
202 const struct keytype *kt; 203 const struct keytype *kt;
203 204
204 for (kt = keytypes; kt->type != -1; kt++) { 205 for (kt = keytypes; kt->type != -1; kt++) {
205 if (kt->name == NULL || kt->sigonly) 206 if (kt->name == NULL || kt->sigonly || kt->type == KEY_NULL)
206 continue; 207 continue;
207 if ((certs_only && !kt->cert) || (plain_only && kt->cert)) 208 if ((certs_only && !kt->cert) || (plain_only && kt->cert))
208 continue; 209 continue;