summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--moduli.c3
-rw-r--r--ssh-keygen.c4
2 files changed, 5 insertions, 2 deletions
diff --git a/moduli.c b/moduli.c
index bb4dd7be..474caca6 100644
--- a/moduli.c
+++ b/moduli.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: moduli.c,v 1.28 2013/10/24 00:49:49 dtucker Exp $ */
+/* $OpenBSD: moduli.c,v 1.29 2014/08/21 01:08:52 doug Exp $ */
/*
* Copyright 1994 Phil Karn <karn@qualcomm.com>
* Copyright 1996-1998, 2003 William Allen Simpson <wsimpson@greendragon.com>
@@ -461,6 +461,7 @@ write_checkpoint(char *cpfile, u_int32_t lineno)
}
if ((fp = fdopen(r, "w")) == NULL) {
logit("write_checkpoint: fdopen: %s", strerror(errno));
+ unlink(tmp);
close(r);
return;
}
diff --git a/ssh-keygen.c b/ssh-keygen.c
index 23058ee9..e149eda3 100644
--- a/ssh-keygen.c
+++ b/ssh-keygen.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: ssh-keygen.c,v 1.249 2014/07/03 03:47:27 djm Exp $ */
+/* $OpenBSD: ssh-keygen.c,v 1.250 2014/08/21 01:08:52 doug Exp $ */
/*
* Author: Tatu Ylonen <ylo@cs.hut.fi>
* Copyright (c) 1994 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
@@ -967,12 +967,14 @@ do_gen_all_hostkeys(struct passwd *pw)
f = fdopen(fd, "w");
if (f == NULL) {
printf("fdopen %s failed\n", identity_file);
+ close(fd);
key_free(public);
first = 0;
continue;
}
if (!key_write(public, f)) {
fprintf(stderr, "write key failed\n");
+ fclose(f);
key_free(public);
first = 0;
continue;