From 73bdee5620ee4c9f70296523b936b2923bbb5a53 Mon Sep 17 00:00:00 2001 From: aland Date: Wed, 30 Oct 2002 20:02:39 +0000 Subject: [PATCH] Made read_radius_conf_file() return the actual CONF_SECTION* which was read. This makes it easier to do HUP later, and removes the need for radrelay, radwho, and radzap, to have access to the radius daemons 'mainconfig' stuff. --- src/include/radiusd.h | 2 +- src/main/radrelay.c | 6 +++--- src/main/radwho.c | 6 +++--- src/main/radzap.c | 6 +++--- 4 files changed, 10 insertions(+), 10 deletions(-) diff --git a/src/include/radiusd.h b/src/include/radiusd.h index 0d6fae4..ea88647 100644 --- a/src/include/radiusd.h +++ b/src/include/radiusd.h @@ -358,5 +358,5 @@ extern struct main_config_t mainconfig; int read_mainconfig(int reload); int free_mainconfig(void); -int read_radius_conf_file(void); /* for radwho and friends. */ +CONF_SECTION *read_radius_conf_file(void); /* for radwho and friends. */ #endif /*RADIUSD_H*/ diff --git a/src/main/radrelay.c b/src/main/radrelay.c index 331503b..2dfa600 100644 --- a/src/main/radrelay.c +++ b/src/main/radrelay.c @@ -617,9 +617,9 @@ void loop(struct relay_misc *r_args) */ int find_shortname(char *shortname, char **host, char **secret) { - CONF_SECTION *cs; + CONF_SECTION *maincs, *cs; - if (read_radius_conf_file() < 0) { + if ((maincs = read_radius_conf_file()) == NULL) { fprintf(stderr, "Error reading radiusd.conf\n"); exit(1); } @@ -627,7 +627,7 @@ int find_shortname(char *shortname, char **host, char **secret) /* * Find the first 'client' section. */ - cs = cf_section_find("client"); + cs = cf_section_sub_find(maincs, "client"); if (cs) { c_shortname = cf_section_value_find(cs, "shortname"); c_secret = cf_section_value_find(cs, "secret"); diff --git a/src/main/radwho.c b/src/main/radwho.c index e3b6457..c7d4981 100644 --- a/src/main/radwho.c +++ b/src/main/radwho.c @@ -339,7 +339,7 @@ static void usage(void) */ int main(int argc, char **argv) { - CONF_SECTION *cs; + CONF_SECTION *maincs, *cs; FILE *fp; struct radutmp rt; struct utmp ut; @@ -400,13 +400,13 @@ int main(int argc, char **argv) } /* Read radiusd.conf */ - if (read_radius_conf_file() < 0) { + if ((maincs = read_radius_conf_file()) == NULL) { fprintf(stderr, "%s: Errors reading radiusd.conf\n", argv[0]); exit(1); } /* Read the radutmp section of radiusd.conf */ - cs = cf_section_sub_find(cf_section_find("modules"), "radutmp"); + cs = cf_section_sub_find(cf_section_sub_find(maincs, "modules"), "radutmp"); if(!cs) { fprintf(stderr, "%s: No configuration information in radutmp section of radiusd.conf!\n", argv[0]); diff --git a/src/main/radzap.c b/src/main/radzap.c index 23dbe00..6001cce 100644 --- a/src/main/radzap.c +++ b/src/main/radzap.c @@ -132,7 +132,7 @@ static void usage(void) */ int main(int argc, char **argv) { - CONF_SECTION *cs; + CONF_SECTION *maincs, *cs; NAS *nas; uint32_t ip = 0; uint32_t nas_port = ~0; @@ -202,13 +202,13 @@ int main(int argc, char **argv) ip = nas->ipaddr; /* Read radiusd.conf */ - if(read_radius_conf_file() < 0) { + if ((maincs = read_radius_conf_file()) == NULL) { fprintf(stderr, "%s: Error reading radiusd.conf.\n", argv[0]); exit(1); } /* Read the radutmp section of radiusd.conf */ - cs = cf_section_sub_find(cf_section_find("modules"), "radutmp"); + cs = cf_section_sub_find(cf_section_sub_find(maincs, "modules"), "radutmp"); if(!cs) { fprintf(stderr, "%s: No configuration information in radutmp section of radiusd.conf!\n", argv[0]); -- 2.1.4