]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
use unlang_compule_subsection
authorAlan T. DeKok <aland@freeradius.org>
Mon, 26 Jun 2017 14:42:45 +0000 (10:42 -0400)
committerAlan T. DeKok <aland@freeradius.org>
Mon, 26 Jun 2017 14:45:11 +0000 (10:45 -0400)
src/modules/proto_radius/proto_radius_acct.c
src/modules/proto_radius/proto_radius_auth.c
src/modules/proto_radius/proto_radius_coa.c
src/modules/proto_radius/proto_radius_status.c

index 9fa769ecd3a2b469cd02d854e0813afba1f7d4dc..54486260596f6b2dcdfc920d0b2dec37a5957619 100644 (file)
@@ -195,22 +195,6 @@ static fr_io_final_t mod_process(REQUEST *request, UNUSED fr_io_action_t action)
        return FR_IO_REPLY;
 }
 
-static int acct_compile_section(CONF_SECTION *server_cs, char const *name1, char const *name2, rlm_components_t component)
-{
-       CONF_SECTION *cs;
-
-       cs = cf_section_find(server_cs, name1, name2);
-       if (!cs) return 0;
-
-       cf_log_debug(cs, "Loading %s %s {...}", name1, name2);
-
-       if (unlang_compile(cs, component) < 0) {
-               cf_log_err(cs, "Failed compiling '%s %s { ... }' section", name1, name2);
-               return -1;
-       }
-
-       return 1;
-}
 
 static int mod_instantiate(UNUSED void *instance, CONF_SECTION *listen_cs)
 {
@@ -222,11 +206,11 @@ static int mod_instantiate(UNUSED void *instance, CONF_SECTION *listen_cs)
        server_cs = cf_item_to_section(cf_parent(listen_cs));
        rad_assert(strcmp(cf_section_name1(server_cs), "server") == 0);
 
-       rcode = acct_compile_section(server_cs, "recv", "Accounting-Request", MOD_PREACCT);
+       rcode = unlang_compile_subsection(server_cs, "recv", "Accounting-Request", MOD_PREACCT);
        if (rcode < 0) return rcode;
 
        if (rcode == 0) {
-               rcode = acct_compile_section(server_cs, "recv", "*", MOD_PREACCT);
+               rcode = unlang_compile_subsection(server_cs, "recv", "*", MOD_PREACCT);
                if (rcode < 0) return rcode;
        }
 
@@ -236,11 +220,11 @@ static int mod_instantiate(UNUSED void *instance, CONF_SECTION *listen_cs)
                return -1;
        }
 
-       rcode = acct_compile_section(server_cs, "send", "Accounting-Response", MOD_ACCOUNTING);
+       rcode = unlang_compile_subsection(server_cs, "send", "Accounting-Response", MOD_ACCOUNTING);
        if (rcode < 0) return rcode;
 
        if (rcode == 0) {
-               rcode = acct_compile_section(server_cs, "send", "*", MOD_ACCOUNTING);
+               rcode = unlang_compile_subsection(server_cs, "send", "*", MOD_ACCOUNTING);
                if (rcode < 0) return rcode;
        }
 
index 3ad6ba5487801a2dd6c11ed1cea2e3b7b0f6c429..df7c5ce7c45c17e3eae80804b583ec60a5d71deb 100644 (file)
@@ -512,23 +512,6 @@ static fr_io_final_t mod_process(REQUEST *request, UNUSED fr_io_action_t action)
 }
 
 
-static int auth_compile_section(CONF_SECTION *server_cs, char const *name1, char const *name2, rlm_components_t component)
-{
-       CONF_SECTION *cs;
-
-       cs = cf_section_find(server_cs, name1, name2);
-       if (!cs) return 0;
-
-       cf_log_debug(cs, "Loading %s %s {...}", name1, name2);
-
-       if (unlang_compile(cs, component) < 0) {
-               cf_log_err(cs, "Failed compiling '%s %s { ... }' section", name1, name2);
-               return -1;
-       }
-
-       return 1;
-}
-
 /*
  *     Ensure that the "radius" section is compiled.
  */
@@ -537,7 +520,7 @@ static int auth_listen_compile(CONF_SECTION *server_cs, UNUSED CONF_SECTION *lis
        int rcode;
        CONF_SECTION *subcs = NULL;
 
-       rcode = auth_compile_section(server_cs, "recv", "Access-Request", MOD_AUTHORIZE);
+       rcode = unlang_compile_subsection(server_cs, "recv", "Access-Request", MOD_AUTHORIZE);
        if (rcode < 0) return rcode;
 
        if (rcode == 0) {
@@ -546,7 +529,7 @@ static int auth_listen_compile(CONF_SECTION *server_cs, UNUSED CONF_SECTION *lis
                return -1;
        }
 
-       rcode = auth_compile_section(server_cs, "send", "Access-Accept", MOD_POST_AUTH);
+       rcode = unlang_compile_subsection(server_cs, "send", "Access-Accept", MOD_POST_AUTH);
        if (rcode < 0) return rcode;
        if (rcode == 0) {
                cf_log_err(server_cs, "Failed finding 'send Access-Accept { ... }' section of virtual server %s",
@@ -554,7 +537,7 @@ static int auth_listen_compile(CONF_SECTION *server_cs, UNUSED CONF_SECTION *lis
                return -1;
        }
 
-       rcode = auth_compile_section(server_cs, "send", "Access-Reject", MOD_POST_AUTH);
+       rcode = unlang_compile_subsection(server_cs, "send", "Access-Reject", MOD_POST_AUTH);
        if (rcode < 0) return rcode;
        if (rcode == 0) {
                cf_log_err(server_cs, "Failed finding 'send Access-Reject { ... }' section of virtual server %s",
@@ -565,7 +548,7 @@ static int auth_listen_compile(CONF_SECTION *server_cs, UNUSED CONF_SECTION *lis
        /*
         *      It's OK to not have an Access-Challenge section.
         */
-       rcode = auth_compile_section(server_cs, "send", "Access-Challenge", MOD_POST_AUTH);
+       rcode = unlang_compile_subsection(server_cs, "send", "Access-Challenge", MOD_POST_AUTH);
        if (rcode < 0) return rcode;
 
        while ((subcs = cf_section_find_next(server_cs, subcs, "authenticate", NULL))) {
@@ -665,7 +648,7 @@ static int mod_instantiate(UNUSED void *instance, CONF_SECTION *listen_cs)
                        return -1;
                }
 
-               rcode = auth_compile_section(server_cs, "authenticate", name2, MOD_AUTHENTICATE);
+               rcode = unlang_compile_subsection(server_cs, "authenticate", name2, MOD_AUTHENTICATE);
                if (rcode < 0) {
                        cf_log_err(subcs, "Failed compiling 'authenticate %s { ... }' section", name2);
                        return -1;
index fa7176799823efec531ef0860bc31fc3302242ea..94b25a656879a0c83e6a22fee39bec5a50b51fe5 100644 (file)
@@ -233,22 +233,6 @@ static fr_io_final_t mod_process(REQUEST *request, UNUSED fr_io_action_t action)
        return FR_IO_REPLY;
 }
 
-static int coa_compile_section(CONF_SECTION *server_cs, char const *name1, char const *name2, rlm_components_t component)
-{
-       CONF_SECTION *cs;
-
-       cs = cf_section_find(server_cs, name1, name2);
-       if (!cs) return 0;
-
-       cf_log_debug(cs, "Loading %s %s {...}", name1, name2);
-
-       if (unlang_compile(cs, component) < 0) {
-               cf_log_err(cs, "Failed compiling '%s %s { ... }' section", name1, name2);
-               return -1;
-       }
-
-       return 1;
-}
 
 static int mod_instantiate(UNUSED void *instance, CONF_SECTION *listen_cs)
 {
@@ -262,16 +246,16 @@ static int mod_instantiate(UNUSED void *instance, CONF_SECTION *listen_cs)
        server_cs = cf_item_to_section(cf_parent(listen_cs));
        rad_assert(strcmp(cf_section_name1(server_cs), "server") == 0);
 
-       rcode = coa_compile_section(server_cs, "recv", "CoA-Request", MOD_RECV_COA);
+       rcode = unlang_compile_subsection(server_cs, "recv", "CoA-Request", MOD_RECV_COA);
        if (rcode < 0) return rcode;
        if (rcode == 1) coa_found = true;
 
-       rcode = coa_compile_section(server_cs, "recv", "Disconnect-Request", MOD_RECV_COA);
+       rcode = unlang_compile_subsection(server_cs, "recv", "Disconnect-Request", MOD_RECV_COA);
        if (rcode < 0) return rcode;
        if (rcode == 1) dm_found = true;
 
        if (!coa_found || !dm_found) {
-               rcode = coa_compile_section(server_cs, "recv", "*", MOD_RECV_COA);
+               rcode = unlang_compile_subsection(server_cs, "recv", "*", MOD_RECV_COA);
                if (rcode < 0) return rcode;
                if (rcode == 1) coa_found = dm_found = true;
        }
@@ -289,22 +273,22 @@ static int mod_instantiate(UNUSED void *instance, CONF_SECTION *listen_cs)
        }
 
        if (coa_found) {
-               rcode = coa_compile_section(server_cs, "send", "CoA-ACK", MOD_SEND_COA);
+               rcode = unlang_compile_subsection(server_cs, "send", "CoA-ACK", MOD_SEND_COA);
                if (rcode < 0) return rcode;
 
-               rcode = coa_compile_section(server_cs, "send", "CoA-NAK", MOD_SEND_COA);
+               rcode = unlang_compile_subsection(server_cs, "send", "CoA-NAK", MOD_SEND_COA);
                if (rcode < 0) return rcode;
        }
 
        if (dm_found) {
-               rcode = coa_compile_section(server_cs, "send", "Disconnect-ACK", MOD_SEND_COA);
+               rcode = unlang_compile_subsection(server_cs, "send", "Disconnect-ACK", MOD_SEND_COA);
                if (rcode < 0) return rcode;
 
-               rcode = coa_compile_section(server_cs, "send", "Disconnect-NAK", MOD_SEND_COA);
+               rcode = unlang_compile_subsection(server_cs, "send", "Disconnect-NAK", MOD_SEND_COA);
                if (rcode < 0) return rcode;
        }
 
-       rcode = coa_compile_section(server_cs, "send", "*", MOD_PREACCT);
+       rcode = unlang_compile_subsection(server_cs, "send", "*", MOD_PREACCT);
        if (rcode < 0) return rcode;
 
        return 0;
index 858c0f1bff9157d89cfaf950b3510269237a978b..877411cf3176609354abcd79149420b3d0a0cff6 100644 (file)
@@ -194,34 +194,9 @@ static fr_io_final_t mod_process(REQUEST *request, UNUSED fr_io_action_t action)
        return FR_IO_REPLY;
 }
 
-static int mod_compile_section(CONF_SECTION *server_cs, char const *name1, char const *name2, rlm_components_t component)
-{
-       CONF_SECTION *cs;
-
-       cs = cf_section_find(server_cs, name1, name2);
-       if (!cs) return 0;
-
-       cf_log_debug(cs, "Compiling policies - %s %s {...}", name1, name2);
-
-       /*
-        *      FIXME: check if it's already compiled?
-        *
-        *      What happens when we have Access-Accept in response to Status-Server,
-        *      versus Access-Accept in response to Access-Request?
-        *
-        *      Damn...
-        */
-
-       if (unlang_compile(cs, component) < 0) {
-               cf_log_err(cs, "Failed compiling '%s %s { ... }' section", name1, name2);
-               return -1;
-       }
-
-       return 1;
-}
 
 /*
- *     Ensure that the "radius" section is compiled.
+ *     Ensure that the "recv foo" etc. sections are compiled.
  */
 static int mod_instantiate(UNUSED void *instance, CONF_SECTION *listen_cs)
 {
@@ -233,7 +208,7 @@ static int mod_instantiate(UNUSED void *instance, CONF_SECTION *listen_cs)
        server_cs = cf_item_to_section(cf_parent(listen_cs));
        rad_assert(strcmp(cf_section_name1(server_cs), "server") == 0);
 
-       rcode = mod_compile_section(server_cs, "recv", "Status-Server", MOD_AUTHORIZE);
+       rcode = unlang_compile_subsection(server_cs, "recv", "Status-Server", MOD_AUTHORIZE);
        if (rcode < 0) return rcode;
        if (rcode == 0) {
                cf_log_err(server_cs, "Failed finding 'recv Status-Server { ... }' section of virtual server %s",
@@ -241,7 +216,7 @@ static int mod_instantiate(UNUSED void *instance, CONF_SECTION *listen_cs)
                return -1;
        }
 
-       rcode = mod_compile_section(server_cs, "send", "Access-Accept", MOD_POST_AUTH);
+       rcode = unlang_compile_subsection(server_cs, "send", "Access-Accept", MOD_POST_AUTH);
        if (rcode < 0) return rcode;
        if (rcode == 0) {
                cf_log_err(server_cs, "Failed finding 'send Access-Accept { ... }' section of virtual server %s",
@@ -249,7 +224,7 @@ static int mod_instantiate(UNUSED void *instance, CONF_SECTION *listen_cs)
                return -1;
        }
 
-       rcode = mod_compile_section(server_cs, "send", "Access-Reject", MOD_POST_AUTH);
+       rcode = unlang_compile_subsection(server_cs, "send", "Access-Reject", MOD_POST_AUTH);
        if (rcode < 0) return rcode;
        if (rcode == 0) {
                cf_log_err(server_cs, "Failed finding 'send Access-Reject { ... }' section of virtual server %s",