From d0a91c2f9bdc6cc98827584e60526098fd28d28b Mon Sep 17 00:00:00 2001 From: Michael Adam Date: Mon, 7 Dec 2009 00:06:50 +0100 Subject: Add the anonymous_map hasmap to the config struct. Michael --- src/anonymous.c | 18 ++++++++---------- src/main.h | 6 ++++++ 2 files changed, 14 insertions(+), 10 deletions(-) (limited to 'src') diff --git a/src/anonymous.c b/src/anonymous.c index fe57550..2834852 100644 --- a/src/anonymous.c +++ b/src/anonymous.c @@ -27,11 +27,9 @@ #include "heap.h" #include "log.h" -static hashmap_t anonymous_map = NULL; - short int is_anonymous_enabled (void) { - return (anonymous_map != NULL) ? 1 : 0; + return (config.anonymous_map != NULL) ? 1 : 0; } /* @@ -41,9 +39,9 @@ short int is_anonymous_enabled (void) int anonymous_search (const char *s) { assert (s != NULL); - assert (anonymous_map != NULL); + assert (config.anonymous_map != NULL); - return hashmap_search (anonymous_map, s); + return hashmap_search (config.anonymous_map, s); } /* @@ -58,17 +56,17 @@ int anonymous_insert (const char *s) assert (s != NULL); - if (!anonymous_map) { - anonymous_map = hashmap_create (32); - if (!anonymous_map) + if (!config.anonymous_map) { + config.anonymous_map = hashmap_create (32); + if (!config.anonymous_map) return -1; } - if (hashmap_search (anonymous_map, s) > 0) { + if (hashmap_search (config.anonymous_map, s) > 0) { /* The key was already found, so return a positive number. */ return 0; } /* Insert the new key */ - return hashmap_insert (anonymous_map, s, &data, sizeof (data)); + return hashmap_insert (config.anonymous_map, s, &data, sizeof (data)); } diff --git a/src/main.h b/src/main.h index 55270bd..6fc41b2 100644 --- a/src/main.h +++ b/src/main.h @@ -96,6 +96,12 @@ struct config_s { * Store the list of port allowed by CONNECT. */ vector_t connect_ports; + + /* + * Map of headers which should be let through when the + * anonymous feature is turned on. + */ + hashmap_t anonymous_map; }; /* Global Structures used in the program */ -- cgit v1.2.3