summaryrefslogtreecommitdiff
path: root/sys/netinet
diff options
context:
space:
mode:
authorAngelos D. Keromytis <angelos@cvs.openbsd.org>2001-05-30 10:59:04 +0000
committerAngelos D. Keromytis <angelos@cvs.openbsd.org>2001-05-30 10:59:04 +0000
commitf827dad675466c89cb140712d655751ef8ccb651 (patch)
treeed543164670a822d149b32372e82f8c5dbf91d04 /sys/netinet
parent4d71cfd8986a092cb471b70591cd9a661115c68a (diff)
Correctly free information attached to the policy.
Diffstat (limited to 'sys/netinet')
-rw-r--r--sys/netinet/ip_spd.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/sys/netinet/ip_spd.c b/sys/netinet/ip_spd.c
index 04e8f546d75..16965f0c0a1 100644
--- a/sys/netinet/ip_spd.c
+++ b/sys/netinet/ip_spd.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: ip_spd.c,v 1.19 2001/05/05 00:31:20 angelos Exp $ */
+/* $OpenBSD: ip_spd.c,v 1.20 2001/05/30 10:59:03 angelos Exp $ */
/*
* The author of this code is Angelos D. Keromytis (angelos@cis.upenn.edu)
@@ -783,11 +783,13 @@ ipsec_delete_policy(struct ipsec_policy *ipo)
TAILQ_REMOVE(&ipsec_policy_head, ipo, ipo_list);
if (ipo->ipo_srcid)
- FREE(ipo->ipo_srcid, M_CREDENTIALS);
+ ipsp_reffree(ipo->ipo_srcid);
if (ipo->ipo_dstid)
- FREE(ipo->ipo_dstid, M_CREDENTIALS);
+ ipsp_reffree(ipo->ipo_dstid);
if (ipo->ipo_local_cred)
- FREE(ipo->ipo_local_cred, M_CREDENTIALS);
+ ipsp_reffree(ipo->ipo_local_cred);
+ if (ipo->ipo_local_auth)
+ ipsp_reffree(ipo->ipo_local_cred);
FREE(ipo, M_IPSEC_POLICY);