summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--sbin/iked/config.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/sbin/iked/config.c b/sbin/iked/config.c
index 99263f8698d..8c7698642a4 100644
--- a/sbin/iked/config.c
+++ b/sbin/iked/config.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: config.c,v 1.21 2013/10/24 02:55:50 deraadt Exp $ */
+/* $OpenBSD: config.c,v 1.22 2013/11/28 20:28:34 markus Exp $ */
/*
* Copyright (c) 2010-2013 Reyk Floeter <reyk@openbsd.org>
@@ -687,7 +687,8 @@ config_getpolicy(struct iked *env, struct imsg *imsg)
memcpy(flow, buf + offset, sizeof(*flow));
offset += sizeof(*flow);
- RB_INSERT(iked_flows, &pol->pol_flows, flow);
+ if (RB_INSERT(iked_flows, &pol->pol_flows, flow))
+ free(flow);
}
TAILQ_INSERT_TAIL(&env->sc_policies, pol, pol_entry);