diff options
author | Linus Nordberg <linus@nordu.net> | 2011-10-08 15:54:33 +0200 |
---|---|---|
committer | Linus Nordberg <linus@nordu.net> | 2011-10-08 15:54:33 +0200 |
commit | a9da84af5738e8eb5b8751cb4d6c00d1beb2810d (patch) | |
tree | 78742c153ce1e592318b22dc99d86618c02b2bb8 | |
parent | aae44f48c768f74de245efe4ba277d355e2ebbb9 (diff) |
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.
-rw-r--r-- | radsecproxy.c | 10 | ||||
-rwxr-xr-x | tools/naptr-eduroam.sh | 2 | ||||
-rwxr-xr-x | 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. |