summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordjm@openbsd.org <djm@openbsd.org>2022-08-01 11:09:26 +0000
committerDamien Miller <djm@mindrot.org>2022-08-01 21:11:33 +1000
commit141535b904b6fba01724444f38193a8599201f82 (patch)
treec0cdcd1dffeb30a66ddea7892f50fb4768e968d5
parentdba7099ffcba3ca07b3946f017ba6a4c3158d9b1 (diff)
upstream: avoid double-free in error path introduced in r1.70; report
and fix based on GHPR#332 by v-rzh ok dtucker@ OpenBSD-Commit-ID: 3d21aa127b1f37cfc5bdc21461db369a663a951f
-rw-r--r--ssh-keysign.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/ssh-keysign.c b/ssh-keysign.c
index c52321e2..b989f5e9 100644
--- a/ssh-keysign.c
+++ b/ssh-keysign.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: ssh-keysign.c,v 1.70 2022/01/06 22:00:18 djm Exp $ */
+/* $OpenBSD: ssh-keysign.c,v 1.71 2022/08/01 11:09:26 djm Exp $ */
/*
* Copyright (c) 2002 Markus Friedl. All rights reserved.
*
@@ -155,9 +155,7 @@ valid_request(struct passwd *pw, char *host, struct sshkey **ret, char **pkalgp,
debug3_f("fail %d", fail);
- if (fail)
- sshkey_free(key);
- else {
+ if (!fail) {
if (ret != NULL) {
*ret = key;
key = NULL;