summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMoritz Jodeit <moritz@cvs.openbsd.org>2007-04-22 11:32:31 +0000
committerMoritz Jodeit <moritz@cvs.openbsd.org>2007-04-22 11:32:31 +0000
commitaf7a081d97c7609b75665c1a5c715ca04b55e07d (patch)
treeb6900d019ce9662959bcf6b188f8f278be3775d0
parent3c69e6002edebbfa6eb9f99fa7a7eb3ac9945734 (diff)
Use conf_free_list() after calling conf_get_list().
Otherwise we leak memory. ok ho@
-rw-r--r--sbin/isakmpd/ike_phase_1.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/sbin/isakmpd/ike_phase_1.c b/sbin/isakmpd/ike_phase_1.c
index cdbe9536031..96e76f33a92 100644
--- a/sbin/isakmpd/ike_phase_1.c
+++ b/sbin/isakmpd/ike_phase_1.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: ike_phase_1.c,v 1.67 2007/04/16 13:01:39 moritz Exp $ */
+/* $OpenBSD: ike_phase_1.c,v 1.68 2007/04/22 11:32:30 moritz Exp $ */
/* $EOM: ike_phase_1.c,v 1.31 2000/12/11 23:47:56 niklas Exp $ */
/*
@@ -1312,8 +1312,10 @@ attribute_unacceptable(u_int16_t type, u_int8_t *value, u_int16_t len,
case IKE_ATTR_LIFE_DURATION:
life_conf = conf_get_list(xf->field, "Life");
if (life_conf &&
- !strcmp(conf_get_str(xf->field, "Life"), "ANY"))
+ !strcmp(conf_get_str(xf->field, "Life"), "ANY")) {
+ conf_free_list(life_conf);
return 0;
+ }
rv = 1;
if (!life_conf) {