From 47ccc9ff18405caa7554d1880a26b52c9576175b Mon Sep 17 00:00:00 2001 From: Linus Nordberg Date: Tue, 1 Nov 2016 10:25:02 +0100 Subject: Look at servers->dynamiclookuparg for deciding if a server is dynamic. The dynamiclookupcommand member of the _config_ of the server is being set to NULL when it's copied in confserver_cb(), resulting in dynamic discovery being done for realms that already have a server. Patch from Fabian Mauchle. Addresses RADSECPROXY-69. --- radsecproxy.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'radsecproxy.c') diff --git a/radsecproxy.c b/radsecproxy.c index 815e927..c478dff 100644 --- a/radsecproxy.c +++ b/radsecproxy.c @@ -777,10 +777,14 @@ int hasdynamicserver(struct list *srvconfs) { for (entry = list_first(srvconfs); entry; entry = list_next(entry)) #if defined ENABLE_EXPERIMENTAL_DYNDISC + /* NOTE: This should probably be servers->dynamiclookuparg, + * like in !ENABLE_EXPERIMENTAL_DYNDISC, but we're not + * touching this code any more. It shouldn't be used and it's + * going away. */ if (((struct clsrvconf *)entry->data)->dynamiclookupcommand || ((struct clsrvconf *)entry->data)->servers->in_use) #else - if (((struct clsrvconf *)entry->data)->dynamiclookupcommand) + if (((struct clsrvconf *)entry->data)->servers->dynamiclookuparg) #endif return 1; return 0; -- cgit v1.1