diff options
author | venaas <venaas> | 2008-06-02 13:28:19 +0000 |
---|---|---|
committer | venaas <venaas@e88ac4ed-0b26-0410-9574-a7f39faa03bf> | 2008-06-02 13:28:19 +0000 |
commit | e38e6c92bf7be07aa571670a33d4e2ff3dd5fd2c (patch) | |
tree | 24ed3bb272760240039d57ec8879dea10ce33627 | |
parent | 42da8c69631787acd53e60e9f1a16f304fb47b7d (diff) |
cleaned up the initial dynamic server discovery code a bit
git-svn-id: https://svn.testnett.uninett.no/radsecproxy/trunk@270 e88ac4ed-0b26-0410-9574-a7f39faa03bf
-rw-r--r-- | radsecproxy.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/radsecproxy.c b/radsecproxy.c index e430054..07811ec 100644 --- a/radsecproxy.c +++ b/radsecproxy.c @@ -40,6 +40,7 @@ #endif #include <sys/time.h> #include <sys/types.h> +#include <ctype.h> #include <sys/wait.h> #include <arpa/inet.h> #include <regex.h> @@ -2827,7 +2828,8 @@ struct realm *addrealm(struct list *realmlist, char *value, char **servers, char void adddynamicrealmserver(struct realm *realm, struct clsrvconf *conf, char *id) { struct clsrvconf *srvconf; struct realm *newrealm = NULL; - char *realmname; + char *realmname, *s; + if (!conf->dynamiclookupcommand) return; @@ -2839,6 +2841,9 @@ void adddynamicrealmserver(struct realm *realm, struct clsrvconf *conf, char *id realmname++; if (!*realmname) return; + for (s = realmname; *s; s++) + if (*s != '-' && !isalnum(*s)) + return; pthread_mutex_lock(&realm->subrealms_mutex); /* exit if we now already got a matching subrealm */ |