summaryrefslogtreecommitdiffstats
path: root/lib/libutil/imsg.c
diff options
context:
space:
mode:
authorgilles <gilles@openbsd.org>2013-02-01 15:22:18 +0000
committergilles <gilles@openbsd.org>2013-02-01 15:22:18 +0000
commitd099a1a3c84e222de9b679a038a6b36d42fa0fb2 (patch)
tree7d48949c44c6372a4c9b60a7079fce76e30188ac /lib/libutil/imsg.c
parentrev 1.318 made this MI parallel-make clean, however it inadvertantly (diff)
downloadwireguard-openbsd-d099a1a3c84e222de9b679a038a6b36d42fa0fb2.tar.xz
wireguard-openbsd-d099a1a3c84e222de9b679a038a6b36d42fa0fb2.zip
fix memleak in imsg_read() when hitting the fd reserve check
ok millert@, mikeb@, lteo@
Diffstat (limited to 'lib/libutil/imsg.c')
-rw-r--r--lib/libutil/imsg.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/libutil/imsg.c b/lib/libutil/imsg.c
index b506297b73f..e2d0ee5c3be 100644
--- a/lib/libutil/imsg.c
+++ b/lib/libutil/imsg.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: imsg.c,v 1.3 2012/12/19 13:37:12 reyk Exp $ */
+/* $OpenBSD: imsg.c,v 1.4 2013/02/01 15:22:18 gilles Exp $ */
/*
* Copyright (c) 2003, 2004 Henning Brauer <henning@openbsd.org>
@@ -74,6 +74,7 @@ again:
(CMSG_SPACE(sizeof(int))-CMSG_SPACE(0))/sizeof(int)
>= getdtablesize()) {
errno = EAGAIN;
+ free(ifd);
return (-1);
}