summaryrefslogtreecommitdiff
path: root/readconf.c
diff options
context:
space:
mode:
authorColin Watson <cjwatson@debian.org>2010-03-31 10:46:28 +0100
committerColin Watson <cjwatson@debian.org>2010-03-31 10:46:28 +0100
commitefd3d4522636ae029488c2e9730b60c88e257d2e (patch)
tree31e02ac3f16090ce8c53448677356b2b7f423683 /readconf.c
parentbbec4db36d464ea1d464a707625125f9fd5c7b5e (diff)
parentd1a87e462e1db89f19cd960588d0c6b287cb5ccc (diff)
* New upstream release (LP: #535029).
- After a transition period of about 10 years, this release disables SSH protocol 1 by default. Clients and servers that need to use the legacy protocol must explicitly enable it in ssh_config / sshd_config or on the command-line. - Remove the libsectok/OpenSC-based smartcard code and add support for PKCS#11 tokens. This support is enabled by default in the Debian packaging, since it now doesn't involve additional library dependencies (closes: #231472, LP: #16918). - Add support for certificate authentication of users and hosts using a new, minimal OpenSSH certificate format (closes: #482806). - Added a 'netcat mode' to ssh(1): "ssh -W host:port ...". - Add the ability to revoke keys in sshd(8) and ssh(1). (For the Debian package, this overlaps with the key blacklisting facility added in openssh 1:4.7p1-9, but with different file formats and slightly different scopes; for the moment, I've roughly merged the two.) - Various multiplexing improvements, including support for requesting port-forwardings via the multiplex protocol (closes: #360151). - Allow setting an explicit umask on the sftp-server(8) commandline to override whatever default the user has (closes: #496843). - Many sftp client improvements, including tab-completion, more options, and recursive transfer support for get/put (LP: #33378). The old mget/mput commands never worked properly and have been removed (closes: #270399, #428082). - Do not prompt for a passphrase if we fail to open a keyfile, and log the reason why the open failed to debug (closes: #431538). - Prevent sftp from crashing when given a "-" without a command. Also, allow whitespace to follow a "-" (closes: #531561).
Diffstat (limited to 'readconf.c')
-rw-r--r--readconf.c18
1 files changed, 10 insertions, 8 deletions
diff --git a/readconf.c b/readconf.c
index 163244ed9..487c3399b 100644
--- a/readconf.c
+++ b/readconf.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: readconf.c,v 1.177 2009/06/27 09:35:06 andreas Exp $ */ 1/* $OpenBSD: readconf.c,v 1.183 2010/02/08 10:50:20 markus Exp $ */
2/* 2/*
3 * Author: Tatu Ylonen <ylo@cs.hut.fi> 3 * Author: Tatu Ylonen <ylo@cs.hut.fi>
4 * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland 4 * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
@@ -126,7 +126,7 @@ typedef enum {
126 oKbdInteractiveAuthentication, oKbdInteractiveDevices, oHostKeyAlias, 126 oKbdInteractiveAuthentication, oKbdInteractiveDevices, oHostKeyAlias,
127 oDynamicForward, oPreferredAuthentications, oHostbasedAuthentication, 127 oDynamicForward, oPreferredAuthentications, oHostbasedAuthentication,
128 oUseBlacklistedKeys, 128 oUseBlacklistedKeys,
129 oHostKeyAlgorithms, oBindAddress, oSmartcardDevice, 129 oHostKeyAlgorithms, oBindAddress, oPKCS11Provider,
130 oClearAllForwardings, oNoHostAuthenticationForLocalhost, 130 oClearAllForwardings, oNoHostAuthenticationForLocalhost,
131 oEnableSSHKeysign, oRekeyLimit, oVerifyHostKeyDNS, oConnectTimeout, 131 oEnableSSHKeysign, oRekeyLimit, oVerifyHostKeyDNS, oConnectTimeout,
132 oAddressFamily, oGssAuthentication, oGssDelegateCreds, 132 oAddressFamily, oGssAuthentication, oGssDelegateCreds,
@@ -219,10 +219,12 @@ static struct {
219 { "preferredauthentications", oPreferredAuthentications }, 219 { "preferredauthentications", oPreferredAuthentications },
220 { "hostkeyalgorithms", oHostKeyAlgorithms }, 220 { "hostkeyalgorithms", oHostKeyAlgorithms },
221 { "bindaddress", oBindAddress }, 221 { "bindaddress", oBindAddress },
222#ifdef SMARTCARD 222#ifdef ENABLE_PKCS11
223 { "smartcarddevice", oSmartcardDevice }, 223 { "smartcarddevice", oPKCS11Provider },
224 { "pkcs11provider", oPKCS11Provider },
224#else 225#else
225 { "smartcarddevice", oUnsupported }, 226 { "smartcarddevice", oUnsupported },
227 { "pkcs11provider", oUnsupported },
226#endif 228#endif
227 { "clearallforwardings", oClearAllForwardings }, 229 { "clearallforwardings", oClearAllForwardings },
228 { "enablesshkeysign", oEnableSSHKeysign }, 230 { "enablesshkeysign", oEnableSSHKeysign },
@@ -645,8 +647,8 @@ parse_string:
645 charptr = &options->bind_address; 647 charptr = &options->bind_address;
646 goto parse_string; 648 goto parse_string;
647 649
648 case oSmartcardDevice: 650 case oPKCS11Provider:
649 charptr = &options->smartcard_device; 651 charptr = &options->pkcs11_provider;
650 goto parse_string; 652 goto parse_string;
651 653
652 case oProxyCommand: 654 case oProxyCommand:
@@ -1113,7 +1115,7 @@ initialize_options(Options * options)
1113 options->log_level = SYSLOG_LEVEL_NOT_SET; 1115 options->log_level = SYSLOG_LEVEL_NOT_SET;
1114 options->preferred_authentications = NULL; 1116 options->preferred_authentications = NULL;
1115 options->bind_address = NULL; 1117 options->bind_address = NULL;
1116 options->smartcard_device = NULL; 1118 options->pkcs11_provider = NULL;
1117 options->enable_ssh_keysign = - 1; 1119 options->enable_ssh_keysign = - 1;
1118 options->no_host_authentication_for_localhost = - 1; 1120 options->no_host_authentication_for_localhost = - 1;
1119 options->identities_only = - 1; 1121 options->identities_only = - 1;
@@ -1212,7 +1214,7 @@ fill_default_options(Options * options)
1212 /* options->macs, default set in myproposals.h */ 1214 /* options->macs, default set in myproposals.h */
1213 /* options->hostkeyalgorithms, default set in myproposals.h */ 1215 /* options->hostkeyalgorithms, default set in myproposals.h */
1214 if (options->protocol == SSH_PROTO_UNKNOWN) 1216 if (options->protocol == SSH_PROTO_UNKNOWN)
1215 options->protocol = SSH_PROTO_1|SSH_PROTO_2; 1217 options->protocol = SSH_PROTO_2;
1216 if (options->num_identity_files == 0) { 1218 if (options->num_identity_files == 0) {
1217 if (options->protocol & SSH_PROTO_1) { 1219 if (options->protocol & SSH_PROTO_1) {
1218 len = 2 + strlen(_PATH_SSH_CLIENT_IDENTITY) + 1; 1220 len = 2 + strlen(_PATH_SSH_CLIENT_IDENTITY) + 1;