From 1037c536358c16a1195983042aea36a9cd81a4ac Mon Sep 17 00:00:00 2001 From: Yuri Schaeffer Date: Fri, 18 Oct 2013 08:33:42 +0000 Subject: [PATCH] limit size of tree git-svn-id: file:///svn/unbound/branches/edns-subnet@2988 be551aaa-1e26-0410-a405-d3ace91eadb9 --- edns-subnet/subnetmod.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/edns-subnet/subnetmod.c b/edns-subnet/subnetmod.c index 4ff30757d..840e02849 100644 --- a/edns-subnet/subnetmod.c +++ b/edns-subnet/subnetmod.c @@ -27,6 +27,8 @@ #include "util/config_file.h" #include "util/data/msgreply.h" +#define ECS_MAX_TREESIZE 100 + /** externally called */ void subnet_data_delete(void *d, void *ATTR_UNUSED(arg)) @@ -131,12 +133,12 @@ get_tree(struct subnet_msg_cache_data *data, struct edns_data *edns, if (edns->subnet_addr_fam == EDNSSUBNET_ADDRFAM_IP4) { if (!data->tree4) data->tree4 = addrtree_create(EDNSSUBNET_MAX_SUBNET_IP4, - &delfunc, &sizefunc, env, 0); + &delfunc, &sizefunc, env, ECS_MAX_TREESIZE); tree = data->tree4; } else { if (!data->tree6) data->tree6 = addrtree_create(EDNSSUBNET_MAX_SUBNET_IP6, - &delfunc, &sizefunc, env, 0); + &delfunc, &sizefunc, env, ECS_MAX_TREESIZE); tree = data->tree6; } return tree; -- 2.47.2