summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorColin Watson <cjwatson@debian.org>2016-04-28 01:46:08 +0100
committerColin Watson <cjwatson@debian.org>2016-04-28 01:51:47 +0100
commit6d7593fbdec7235d9d21506860513ba43ef3df2f (patch)
treee18507525889b022031e5daa0996e87d108e38d7
parent8590fd4848ae41b97726d7147daae271a3ab5063 (diff)
parent43a633de1cabe77e652125dac394a99ad9cac3b4 (diff)
Backport upstream patch to unbreak authentication using lone certificate keys in ssh-agent: when attempting pubkey auth with a certificate, if no separate private key is found among the keys then try with the certificate key itself (thanks, Paul Querna; LP: #1575961).
-rw-r--r--debian/.git-dpm4
-rw-r--r--debian/changelog9
-rw-r--r--debian/patches/series1
-rw-r--r--debian/patches/unbreak-certificate-auth.patch46
-rw-r--r--sshconnect2.c8
5 files changed, 60 insertions, 8 deletions
diff --git a/debian/.git-dpm b/debian/.git-dpm
index 589d66c5c..4d6e084d7 100644
--- a/debian/.git-dpm
+++ b/debian/.git-dpm
@@ -1,6 +1,6 @@
1# see git-dpm(1) from git-dpm package 1# see git-dpm(1) from git-dpm package
27f3fb4e5fdddc6600e70ae663c21511fbcf2c64c 243a633de1cabe77e652125dac394a99ad9cac3b4
37f3fb4e5fdddc6600e70ae663c21511fbcf2c64c 343a633de1cabe77e652125dac394a99ad9cac3b4
4f0329aac23c61e1a5197d6d57349a63f459bccb0 4f0329aac23c61e1a5197d6d57349a63f459bccb0
5f0329aac23c61e1a5197d6d57349a63f459bccb0 5f0329aac23c61e1a5197d6d57349a63f459bccb0
6openssh_7.2p2.orig.tar.gz 6openssh_7.2p2.orig.tar.gz
diff --git a/debian/changelog b/debian/changelog
index 748efee5b..efaa766ae 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,12 @@
1openssh (1:7.2p2-5) UNRELEASED; urgency=medium
2
3 * Backport upstream patch to unbreak authentication using lone certificate
4 keys in ssh-agent: when attempting pubkey auth with a certificate, if no
5 separate private key is found among the keys then try with the
6 certificate key itself (thanks, Paul Querna; LP: #1575961).
7
8 -- Colin Watson <cjwatson@debian.org> Thu, 28 Apr 2016 01:46:20 +0100
9
1openssh (1:7.2p2-4) unstable; urgency=medium 10openssh (1:7.2p2-4) unstable; urgency=medium
2 11
3 * Drop dependency on libnss-files-udeb (closes: #819686). 12 * Drop dependency on libnss-files-udeb (closes: #819686).
diff --git a/debian/patches/series b/debian/patches/series
index b5c9fb392..d2d89669f 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -26,3 +26,4 @@ sigstop.patch
26systemd-readiness.patch 26systemd-readiness.patch
27debian-config.patch 27debian-config.patch
28CVE-2015-8325.patch 28CVE-2015-8325.patch
29unbreak-certificate-auth.patch
diff --git a/debian/patches/unbreak-certificate-auth.patch b/debian/patches/unbreak-certificate-auth.patch
new file mode 100644
index 000000000..cbf7c1800
--- /dev/null
+++ b/debian/patches/unbreak-certificate-auth.patch
@@ -0,0 +1,46 @@
1From 43a633de1cabe77e652125dac394a99ad9cac3b4 Mon Sep 17 00:00:00 2001
2From: "djm@openbsd.org" <djm@openbsd.org>
3Date: Mon, 14 Mar 2016 16:20:54 +0000
4Subject: upstream commit
5
6unbreak authentication using lone certificate keys in
7 ssh-agent: when attempting pubkey auth with a certificate, if no separate
8 private key is found among the keys then try with the certificate key itself.
9
10bz#2550 reported by Peter Moody
11
12Upstream-ID: f939cd76d68e6a9a3d1711b5a943d6ed1e623966
13
14Origin: upstream, https://anongit.mindrot.org/openssh.git/commit/?id=c38905ba391434834da86abfc988a2b8b9b62477
15Bug-Ubuntu: https://bugs.launchpad.net/bugs/1575961
16Last-Update: 2016-04-28
17
18Patch-Name: unbreak-certificate-auth.patch
19---
20 sshconnect2.c | 8 ++------
21 1 file changed, 2 insertions(+), 6 deletions(-)
22
23diff --git a/sshconnect2.c b/sshconnect2.c
24index b452eae..40facda 100644
25--- a/sshconnect2.c
26+++ b/sshconnect2.c
27@@ -1,4 +1,4 @@
28-/* $OpenBSD: sshconnect2.c,v 1.239 2016/02/23 01:34:14 djm Exp $ */
29+/* $OpenBSD: sshconnect2.c,v 1.240 2016/03/14 16:20:54 djm Exp $ */
30 /*
31 * Copyright (c) 2000 Markus Friedl. All rights reserved.
32 * Copyright (c) 2008 Damien Miller. All rights reserved.
33@@ -1224,12 +1224,8 @@ sign_and_send_pubkey(Authctxt *authctxt, Identity *id)
34 "certificate", __func__, id->filename,
35 id->agent_fd != -1 ? " from agent" : "");
36 } else {
37- /* XXX maybe verbose/error? */
38- debug("%s: no private key for certificate "
39+ debug("%s: no separate private key for certificate "
40 "\"%s\"", __func__, id->filename);
41- free(blob);
42- buffer_free(&b);
43- return 0;
44 }
45 }
46
diff --git a/sshconnect2.c b/sshconnect2.c
index b452eae24..40facdab5 100644
--- a/sshconnect2.c
+++ b/sshconnect2.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: sshconnect2.c,v 1.239 2016/02/23 01:34:14 djm Exp $ */ 1/* $OpenBSD: sshconnect2.c,v 1.240 2016/03/14 16:20:54 djm Exp $ */
2/* 2/*
3 * Copyright (c) 2000 Markus Friedl. All rights reserved. 3 * Copyright (c) 2000 Markus Friedl. All rights reserved.
4 * Copyright (c) 2008 Damien Miller. All rights reserved. 4 * Copyright (c) 2008 Damien Miller. All rights reserved.
@@ -1224,12 +1224,8 @@ sign_and_send_pubkey(Authctxt *authctxt, Identity *id)
1224 "certificate", __func__, id->filename, 1224 "certificate", __func__, id->filename,
1225 id->agent_fd != -1 ? " from agent" : ""); 1225 id->agent_fd != -1 ? " from agent" : "");
1226 } else { 1226 } else {
1227 /* XXX maybe verbose/error? */ 1227 debug("%s: no separate private key for certificate "
1228 debug("%s: no private key for certificate "
1229 "\"%s\"", __func__, id->filename); 1228 "\"%s\"", __func__, id->filename);
1230 free(blob);
1231 buffer_free(&b);
1232 return 0;
1233 } 1229 }
1234 } 1230 }
1235 1231