From a9da84af5738e8eb5b8751cb4d6c00d1beb2810d Mon Sep 17 00:00:00 2001 From: Linus Nordberg Date: Sat, 8 Oct 2011 15:54:33 +0200 Subject: [PATCH] A DynamicLookupCommand exiting with 10 is treated like an empty server stanza. This way a script can signal "not found". The naptr-eduroam.sh and radsec-dynsrv.sh scripts are changed to behave like this. Closes RADSECPROXY-22. --- radsecproxy.c | 10 ++++++++-- tools/naptr-eduroam.sh | 2 +- tools/radsec-dynsrv.sh | 2 +- 3 files changed, 10 insertions(+), 4 deletions(-) diff --git a/radsecproxy.c b/radsecproxy.c index 6554e8d..303aba4 100644 --- a/radsecproxy.c +++ b/radsecproxy.c @@ -2273,8 +2273,14 @@ int dynamicconfig(struct server *server) { } if (status) { - debug(DBG_INFO, "dynamicconfig: command exited with status %d", WEXITSTATUS(status)); - goto errexit; + if (WEXITSTATUS(status) == 10) { + debug(DBG_INFO, "dynamicconfig: command signals empty config"); + } + else { + debug(DBG_INFO, "dynamicconfig: command exited with status %d", + WEXITSTATUS(status)); + goto errexit; + } } if (ok) diff --git a/tools/naptr-eduroam.sh b/tools/naptr-eduroam.sh index be722c9..4aa3c4b 100755 --- a/tools/naptr-eduroam.sh +++ b/tools/naptr-eduroam.sh @@ -70,4 +70,4 @@ if [ -n "${SERVERS}" ]; then exit 0 fi -exit 0 +exit 10 # No server found. diff --git a/tools/radsec-dynsrv.sh b/tools/radsec-dynsrv.sh index 7a74b6d..4b9cb3e 100755 --- a/tools/radsec-dynsrv.sh +++ b/tools/radsec-dynsrv.sh @@ -48,4 +48,4 @@ if test -n "${SERVERS}" ; then exit 0 fi -exit 0 +exit 10 # No server found. -- 2.1.4