]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
No need for begin / commit for independent UPDATE queries
authorNick Porter <nick@portercomputing.co.uk>
Thu, 1 Feb 2024 14:17:42 +0000 (14:17 +0000)
committerNick Porter <nick@portercomputing.co.uk>
Thu, 1 Feb 2024 14:17:42 +0000 (14:17 +0000)
Whilst Oracle had these set to "COMMIT", queries are actually run with
OCI_COMMIT_ON_SUCCESS so no need for a separate COMMIT

raddb/mods-config/sql/ippool/mongo/queries.conf
raddb/mods-config/sql/ippool/oracle/queries.conf
src/modules/rlm_sqlippool/rlm_sqlippool.c

index 9d7d07079741236ca74f8b09b1f7948833197c47..eedf0a041da17ba48863bb2252939d33c2a09266 100644 (file)
 #  parser.
 # 
 
-#
-#  TBD
-#
-on_begin = ""
-off_begin = ""
-
 allocate_begin = ""
 
 #
@@ -92,17 +86,11 @@ allocate_clear = "db.mypool_collection.findAndModify( \
 
 allocate_commit = ""
 
-start_begin = ""
 start_update = ""
-start_commit = ""
 
-stop_begin = ""
 stop_clear = ""
-stop_commit = ""
 
-alive_begin = ""
 alive_update = ""
-alive_commit = ""
 
 on_clear = ""
 off_clear = ""
index 1a64b28bd7773dd45023aa6bfe5aff39e26fd8bb..9704f56a6097b7a7f7bc502c1bed0c2b85d09a7f 100644 (file)
 skip_locked = ""
 
 allocate_begin = "commit"
-start_begin = "commit"
-alive_begin = "commit"
-stop_begin = "commit"
-on_begin = "commit"
-off_begin = "commit"
 
 #
 # Attempt to allocate the address a client previously had.  This is based on pool_key
index 8c583596c2f66c846ae04bd69bc23858ef2aabef..4bcb4100a9cc4ac3dbf2d7b748ec1c4b95f78dc4 100644 (file)
@@ -66,30 +66,15 @@ typedef struct rlm_sqlippool_t {
 
        char const      *pool_check;            //!< Query to check for the existence of the pool.
 
-                                               /* Start sequence */
-       char const      *start_begin;           //!< SQL query to begin.
-       char const      *start_update;          //!< SQL query to update an IP entry.
-       char const      *start_commit;          //!< SQL query to commit.
-
-                                               /* Alive sequence */
-       char const      *alive_begin;           //!< SQL query to begin.
-       char const      *alive_update;          //!< SQL query to update an IP entry.
-       char const      *alive_commit;          //!< SQL query to commit.
-
-                                               /* Stop sequence */
-       char const      *stop_begin;            //!< SQL query to begin.
-       char const      *stop_clear;            //!< SQL query to clear an IP.
-       char const      *stop_commit;           //!< SQL query to commit.
-
-                                               /* On sequence */
-       char const      *on_begin;              //!< SQL query to begin.
-       char const      *on_clear;              //!< SQL query to clear an entire NAS.
-       char const      *on_commit;             //!< SQL query to commit.
-
-                                               /* Off sequence */
-       char const      *off_begin;             //!< SQL query to begin.
-       char const      *off_clear;             //!< SQL query to clear an entire NAS.
-       char const      *off_commit;            //!< SQL query to commit.
+       char const      *start_update;          //!< SQL query run on Accounting Start
+
+       char const      *alive_update;          //!< SQL query run on Accounting Interim-Update
+
+       char const      *stop_clear;            //!< SQL query run on Accounting Stop
+
+       char const      *on_clear;              //!< SQL query run on Accounting On
+
+       char const      *off_clear;             //!< SQL query run on Accounting Off
 
                                                /* Logging Section */
        char const      *log_exists;            //!< There was an ip address already assigned.
@@ -160,55 +145,21 @@ static CONF_PARSER module_config[] = {
        { "pool_check", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT, rlm_sqlippool_t, pool_check), ""  },
 
 
-       { "start-begin", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT | PW_TYPE_DEPRECATED, rlm_sqlippool_t, start_begin), NULL },
-       { "start_begin", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT, rlm_sqlippool_t, start_begin), "" },
-
        { "start-update", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT | PW_TYPE_DEPRECATED, rlm_sqlippool_t, start_update), NULL },
        { "start_update", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT , rlm_sqlippool_t, start_update), ""  },
 
-       { "start-commit", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT | PW_TYPE_DEPRECATED, rlm_sqlippool_t, start_commit), NULL },
-       { "start_commit", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT, rlm_sqlippool_t, start_commit), "" },
-
-
-       { "alive-begin", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT | PW_TYPE_DEPRECATED, rlm_sqlippool_t, alive_begin), NULL },
-       { "alive_begin", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT, rlm_sqlippool_t, alive_begin), "" },
-
        { "alive-update", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT | PW_TYPE_DEPRECATED, rlm_sqlippool_t, alive_update), NULL },
        { "alive_update", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT , rlm_sqlippool_t, alive_update), ""  },
 
-       { "alive-commit", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT | PW_TYPE_DEPRECATED, rlm_sqlippool_t, alive_commit), NULL },
-       { "alive_commit", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT, rlm_sqlippool_t, alive_commit), "" },
-
-
-       { "stop-begin", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT | PW_TYPE_DEPRECATED, rlm_sqlippool_t, stop_begin), NULL },
-       { "stop_begin", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT, rlm_sqlippool_t, stop_begin), "" },
-
        { "stop-clear", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT | PW_TYPE_DEPRECATED, rlm_sqlippool_t, stop_clear), NULL },
        { "stop_clear", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT , rlm_sqlippool_t, stop_clear), ""  },
 
-       { "stop-commit", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT | PW_TYPE_DEPRECATED, rlm_sqlippool_t, stop_commit), NULL },
-       { "stop_commit", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT, rlm_sqlippool_t, stop_commit), "" },
-
-
-       { "on-begin", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT | PW_TYPE_DEPRECATED, rlm_sqlippool_t, on_begin), NULL },
-       { "on_begin", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT, rlm_sqlippool_t, on_begin), "" },
-
        { "on-clear", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT | PW_TYPE_DEPRECATED, rlm_sqlippool_t, on_clear), NULL },
        { "on_clear", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT , rlm_sqlippool_t, on_clear), ""  },
 
-       { "on-commit", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT | PW_TYPE_DEPRECATED, rlm_sqlippool_t, on_commit), NULL },
-       { "on_commit", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT, rlm_sqlippool_t, on_commit), "" },
-
-
-       { "off-begin", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT | PW_TYPE_DEPRECATED, rlm_sqlippool_t, off_begin), NULL },
-       { "off_begin", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT, rlm_sqlippool_t, off_begin), "" },
-
        { "off-clear", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT | PW_TYPE_DEPRECATED, rlm_sqlippool_t, off_clear), NULL },
        { "off_clear", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT , rlm_sqlippool_t, off_clear), ""  },
 
-       { "off-commit", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT | PW_TYPE_DEPRECATED, rlm_sqlippool_t, off_commit), NULL },
-       { "off_commit", FR_CONF_OFFSET(PW_TYPE_STRING | PW_TYPE_XLAT, rlm_sqlippool_t, off_commit), "" },
-
        { "messages", FR_CONF_POINTER(PW_TYPE_SUBSECTION, NULL), (void const *) message_config },
        CONF_PARSER_TERMINATOR
 };
@@ -749,9 +700,7 @@ static rlm_rcode_t CC_HINT(nonnull) mod_post_auth(void *instance, REQUEST *reque
 static int mod_accounting_start(rlm_sql_handle_t **handle,
                                rlm_sqlippool_t *inst, REQUEST *request)
 {
-       DO(start_begin);
        DO(start_update);
-       DO(start_commit);
 
        return RLM_MODULE_OK;
 }
@@ -761,9 +710,7 @@ static int mod_accounting_alive(rlm_sql_handle_t **handle,
 {
        int affected;
 
-       DO(alive_begin);
        DO_AFFECTED(alive_update, affected);
-       DO(alive_commit);
 
        return (affected == 0 ? RLM_MODULE_NOTFOUND : RLM_MODULE_OK);
 }
@@ -771,9 +718,7 @@ static int mod_accounting_alive(rlm_sql_handle_t **handle,
 static int mod_accounting_stop(rlm_sql_handle_t **handle,
                               rlm_sqlippool_t *inst, REQUEST *request)
 {
-       DO(stop_begin);
        DO(stop_clear);
-       DO(stop_commit);
 
        return do_logging(request, inst->log_clear, RLM_MODULE_OK);
 }
@@ -781,9 +726,7 @@ static int mod_accounting_stop(rlm_sql_handle_t **handle,
 static int mod_accounting_on(rlm_sql_handle_t **handle,
                             rlm_sqlippool_t *inst, REQUEST *request)
 {
-       DO(on_begin);
        DO(on_clear);
-       DO(on_commit);
 
        return RLM_MODULE_OK;
 }
@@ -791,9 +734,7 @@ static int mod_accounting_on(rlm_sql_handle_t **handle,
 static int mod_accounting_off(rlm_sql_handle_t **handle,
                              rlm_sqlippool_t *inst, REQUEST *request)
 {
-       DO(off_begin);
        DO(off_clear);
-       DO(off_commit);
 
        return RLM_MODULE_OK;
 }