summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjsg <jsg@openbsd.org>2013-05-04 09:23:33 +0000
committerjsg <jsg@openbsd.org>2013-05-04 09:23:33 +0000
commit10537711b06f563cbd2f738ee8d5b0c8e6f7f5db (patch)
treeebe6e02c90711c3df606559b1fe54becdb1200e7
parentfix use after free in error paths (diff)
downloadwireguard-openbsd-10537711b06f563cbd2f738ee8d5b0c8e6f7f5db.tar.xz
wireguard-openbsd-10537711b06f563cbd2f738ee8d5b0c8e6f7f5db.zip
fix use after free in error paths
ok sthen@ jung@ fgsch@
-rw-r--r--libexec/ld.so/ldconfig/prebind.c4
-rw-r--r--libexec/ld.so/ldconfig/prebind_delete.c4
2 files changed, 4 insertions, 4 deletions
diff --git a/libexec/ld.so/ldconfig/prebind.c b/libexec/ld.so/ldconfig/prebind.c
index f908e45680c..9d84a9a6458 100644
--- a/libexec/ld.so/ldconfig/prebind.c
+++ b/libexec/ld.so/ldconfig/prebind.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: prebind.c,v 1.19 2013/03/20 21:49:59 kurt Exp $ */
+/* $OpenBSD: prebind.c,v 1.20 2013/05/04 09:23:33 jsg Exp $ */
/*
* Copyright (c) 2006 Dale Rahn <drahn@dalerahn.com>
*
@@ -2002,8 +2002,8 @@ prebind_writenewfile(int infd, char *name, struct stat *st, off_t orig_size,
return (0);
fail:
- free(newname);
unlink(newname);
+ free(newname);
close(outfd);
return (-1);
}
diff --git a/libexec/ld.so/ldconfig/prebind_delete.c b/libexec/ld.so/ldconfig/prebind_delete.c
index 400f32e37a7..bc5eb77cad4 100644
--- a/libexec/ld.so/ldconfig/prebind_delete.c
+++ b/libexec/ld.so/ldconfig/prebind_delete.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: prebind_delete.c,v 1.11 2012/03/21 04:28:45 matthew Exp $ */
+/* $OpenBSD: prebind_delete.c,v 1.12 2013/05/04 09:23:33 jsg Exp $ */
/*
* Copyright (c) 2006 Dale Rahn <drahn@dalerahn.com>
@@ -285,8 +285,8 @@ prebind_newfile(int infd, char *name, struct stat *st, off_t orig_size)
return (outfd);
fail:
- free(newname);
unlink(newname);
+ free(newname);
close(outfd);
return (-1);
}