summaryrefslogtreecommitdiff
path: root/radsecproxy.c
diff options
context:
space:
mode:
authorLinus Nordberg <linus@nordu.net>2016-11-01 10:25:02 +0100
committerLinus Nordberg <linus@nordu.net>2016-11-01 10:31:22 +0100
commit47ccc9ff18405caa7554d1880a26b52c9576175b (patch)
tree8878b1bb3488e7bf3a9a1f4ee1adf0d0fa1486a5 /radsecproxy.c
parent9d53e6e8f406415ef0b7ead8dd58ba2b6487004b (diff)
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.
Diffstat (limited to 'radsecproxy.c')
-rw-r--r--radsecproxy.c6
1 files changed, 5 insertions, 1 deletions
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;