]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
remove unnecessary pointer indirection, and make config 'const'
authorAlan T. DeKok <aland@freeradius.org>
Tue, 9 Nov 2021 17:52:49 +0000 (12:52 -0500)
committerAlan T. DeKok <aland@freeradius.org>
Tue, 9 Nov 2021 18:21:05 +0000 (13:21 -0500)
14 files changed:
src/modules/rlm_sql/drivers/rlm_sql_cassandra/rlm_sql_cassandra.c
src/modules/rlm_sql/drivers/rlm_sql_db2/rlm_sql_db2.c
src/modules/rlm_sql/drivers/rlm_sql_firebird/rlm_sql_firebird.c
src/modules/rlm_sql/drivers/rlm_sql_freetds/rlm_sql_freetds.c
src/modules/rlm_sql/drivers/rlm_sql_mysql/rlm_sql_mysql.c
src/modules/rlm_sql/drivers/rlm_sql_null/rlm_sql_null.c
src/modules/rlm_sql/drivers/rlm_sql_oracle/rlm_sql_oracle.c
src/modules/rlm_sql/drivers/rlm_sql_postgresql/rlm_sql_postgresql.c
src/modules/rlm_sql/drivers/rlm_sql_sqlite/rlm_sql_sqlite.c
src/modules/rlm_sql/drivers/rlm_sql_unixodbc/rlm_sql_unixodbc.c
src/modules/rlm_sql/rlm_sql.c
src/modules/rlm_sql/rlm_sql.h
src/modules/rlm_sql/sql.c
src/modules/rlm_sqlippool/rlm_sqlippool.c

index 15a31856579925e0f01414abb8922120bf97eb92..97b4ead1d54f3697c04142d491327b07ed2c73ce 100644 (file)
@@ -383,7 +383,7 @@ static int _sql_socket_destructor(rlm_sql_cassandra_conn_t *conn)
        return 0;
 }
 
-static sql_rcode_t sql_socket_init(rlm_sql_handle_t *handle, rlm_sql_config_t *config, fr_time_delta_t timeout)
+static sql_rcode_t sql_socket_init(rlm_sql_handle_t *handle, rlm_sql_config_t const *config, fr_time_delta_t timeout)
 {
        rlm_sql_cassandra_conn_t        *conn;
        rlm_sql_cassandra_t             *inst = config->driver;
@@ -432,7 +432,7 @@ static sql_rcode_t sql_socket_init(rlm_sql_handle_t *handle, rlm_sql_config_t *c
        return RLM_SQL_OK;
 }
 
-static sql_rcode_t sql_query(rlm_sql_handle_t *handle, rlm_sql_config_t *config, char const *query)
+static sql_rcode_t sql_query(rlm_sql_handle_t *handle, rlm_sql_config_t const *config, char const *query)
 {
        rlm_sql_cassandra_conn_t        *conn = handle->conn;
        rlm_sql_cassandra_t     *conf = config->driver;
@@ -471,21 +471,21 @@ static sql_rcode_t sql_query(rlm_sql_handle_t *handle, rlm_sql_config_t *config,
        return RLM_SQL_OK;
 }
 
-static int sql_num_fields(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+static int sql_num_fields(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        rlm_sql_cassandra_conn_t *conn = handle->conn;
 
        return conn->result ? cass_result_column_count(conn->result) : 0;
 }
 
-static int sql_num_rows(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+static int sql_num_rows(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        rlm_sql_cassandra_conn_t *conn = handle->conn;
 
        return conn->result ? cass_result_row_count(conn->result) : 0;
 }
 
-static sql_rcode_t sql_fields(char const **out[], rlm_sql_handle_t *handle, rlm_sql_config_t *config)
+static sql_rcode_t sql_fields(char const **out[], rlm_sql_handle_t *handle, rlm_sql_config_t const *config)
 {
        rlm_sql_cassandra_conn_t *conn = handle->conn;
 
@@ -513,7 +513,7 @@ static sql_rcode_t sql_fields(char const **out[], rlm_sql_handle_t *handle, rlm_
        return RLM_SQL_OK;
 }
 
-static sql_rcode_t sql_fetch_row(rlm_sql_row_t *out, rlm_sql_handle_t *handle, rlm_sql_config_t *config)
+static sql_rcode_t sql_fetch_row(rlm_sql_row_t *out, rlm_sql_handle_t *handle, rlm_sql_config_t const *config)
 {
 
        rlm_sql_cassandra_conn_t        *conn = handle->conn;
@@ -645,7 +645,7 @@ do {\
        return RLM_SQL_OK;
 }
 
-static sql_rcode_t sql_free_result(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+static sql_rcode_t sql_free_result(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        rlm_sql_cassandra_conn_t *conn = handle->conn;
 
@@ -665,7 +665,7 @@ static sql_rcode_t sql_free_result(rlm_sql_handle_t *handle, UNUSED rlm_sql_conf
 }
 
 static size_t sql_error(UNUSED TALLOC_CTX *ctx, sql_log_entry_t out[], size_t outlen,
-                       rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+                       rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        rlm_sql_cassandra_conn_t *conn = handle->conn;
 
@@ -680,7 +680,7 @@ static size_t sql_error(UNUSED TALLOC_CTX *ctx, sql_log_entry_t out[], size_t ou
        return 0;
 }
 
-static sql_rcode_t sql_finish_query(rlm_sql_handle_t *handle, rlm_sql_config_t *config)
+static sql_rcode_t sql_finish_query(rlm_sql_handle_t *handle, rlm_sql_config_t const *config)
 {
        rlm_sql_cassandra_conn_t *conn = handle->conn;
 
@@ -701,7 +701,7 @@ static sql_rcode_t sql_finish_query(rlm_sql_handle_t *handle, rlm_sql_config_t *
  *     There's a good article on it here:
  *             http://planetcassandra.org/blog/how-to-do-an-upsert-in-cassandra/
  */
-static int sql_affected_rows(UNUSED rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+static int sql_affected_rows(UNUSED rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        return 1;
 }
index 7da52fb0507fbf26749cb052b632fd860edf4ffd..8243307c5d4730d0c3891741d7ab090fe99656e7 100644 (file)
@@ -59,7 +59,7 @@ static int _sql_socket_destructor(rlm_sql_db2_conn_t *conn)
        return RLM_SQL_OK;
 }
 
-static sql_rcode_t sql_socket_init(rlm_sql_handle_t *handle, rlm_sql_config_t *config,
+static sql_rcode_t sql_socket_init(rlm_sql_handle_t *handle, rlm_sql_config_t const *config,
                                   UNUSED fr_time_delta_t timeout)
 {
        SQLRETURN row;
@@ -106,7 +106,7 @@ static sql_rcode_t sql_socket_init(rlm_sql_handle_t *handle, rlm_sql_config_t *c
        return RLM_SQL_OK;
 }
 
-static sql_rcode_t sql_query(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config, char const *query)
+static sql_rcode_t sql_query(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config, char const *query)
 {
        SQLRETURN row;
        rlm_sql_db2_conn_t *conn;
@@ -132,12 +132,12 @@ static sql_rcode_t sql_query(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *
        return RLM_SQL_OK;
 }
 
-static sql_rcode_t sql_select_query(rlm_sql_handle_t *handle, rlm_sql_config_t *config, char const *query)
+static sql_rcode_t sql_select_query(rlm_sql_handle_t *handle, rlm_sql_config_t const *config, char const *query)
 {
        return sql_query(handle, config, query);
 }
 
-static int sql_num_fields(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+static int sql_num_fields(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        SQLSMALLINT c;
        rlm_sql_db2_conn_t *conn;
@@ -147,7 +147,7 @@ static int sql_num_fields(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *con
        return c;
 }
 
-static sql_rcode_t sql_fields(char const **out[], rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+static sql_rcode_t sql_fields(char const **out[], rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        rlm_sql_db2_conn_t *conn = handle->conn;
 
@@ -185,7 +185,7 @@ static sql_rcode_t sql_fields(char const **out[], rlm_sql_handle_t *handle, UNUS
        return RLM_SQL_OK;
 }
 
-static sql_rcode_t sql_fetch_row(rlm_sql_row_t *out, rlm_sql_handle_t *handle, rlm_sql_config_t *config)
+static sql_rcode_t sql_fetch_row(rlm_sql_row_t *out, rlm_sql_handle_t *handle, rlm_sql_config_t const *config)
 {
        int                     c, i;
        SQLINTEGER              len, slen;
@@ -219,7 +219,7 @@ static sql_rcode_t sql_fetch_row(rlm_sql_row_t *out, rlm_sql_handle_t *handle, r
        return RLM_SQL_OK;
 }
 
-static sql_rcode_t sql_free_result(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+static sql_rcode_t sql_free_result(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        rlm_sql_db2_conn_t *conn;
 
@@ -242,7 +242,7 @@ static sql_rcode_t sql_free_result(rlm_sql_handle_t *handle, UNUSED rlm_sql_conf
  * @return number of errors written to the #sql_log_entry_t array.
  */
 static size_t sql_error(TALLOC_CTX *ctx, sql_log_entry_t out[], NDEBUG_UNUSED size_t outlen,
-                       rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+                       rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        char                    state[6];
        char                    errbuff[1024];
@@ -264,17 +264,17 @@ static size_t sql_error(TALLOC_CTX *ctx, sql_log_entry_t out[], NDEBUG_UNUSED si
        return 1;
 }
 
-static sql_rcode_t sql_finish_query(UNUSED rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+static sql_rcode_t sql_finish_query(UNUSED rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        return RLM_SQL_OK;
 }
 
-static sql_rcode_t sql_finish_select_query(rlm_sql_handle_t *handle, rlm_sql_config_t *config)
+static sql_rcode_t sql_finish_select_query(rlm_sql_handle_t *handle, rlm_sql_config_t const *config)
 {
        return sql_finish_query(handle, config);
 }
 
-static int sql_affected_rows(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+static int sql_affected_rows(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        SQLINTEGER c;
        rlm_sql_db2_conn_t *conn = handle->conn;
index 531ddbd2b2a4f09ee114cbfa6cc125128fd6e5d9..669abe22ab7f1b912e481d1ba8b53e5e33b7180e 100644 (file)
@@ -27,10 +27,10 @@ RCSID("$Id$")
 
 
 /* Forward declarations */
-static sql_rcode_t sql_free_result(rlm_sql_handle_t *handle, rlm_sql_config_t *config);
-static int sql_affected_rows(rlm_sql_handle_t *handle, rlm_sql_config_t *config);
-static int sql_num_fields(rlm_sql_handle_t *handle, rlm_sql_config_t *config);
-static sql_rcode_t sql_finish_query(rlm_sql_handle_t *handle, rlm_sql_config_t *config);
+static sql_rcode_t sql_free_result(rlm_sql_handle_t *handle, rlm_sql_config_t const *config);
+static int sql_affected_rows(rlm_sql_handle_t *handle, rlm_sql_config_t const *config);
+static int sql_num_fields(rlm_sql_handle_t *handle, rlm_sql_config_t const *config);
+static sql_rcode_t sql_finish_query(rlm_sql_handle_t *handle, rlm_sql_config_t const *config);
 
 static int _sql_socket_destructor(rlm_sql_firebird_conn_t *conn)
 {
@@ -67,7 +67,7 @@ static int _sql_socket_destructor(rlm_sql_firebird_conn_t *conn)
 /** Establish connection to the db
  *
  */
-static sql_rcode_t sql_socket_init(rlm_sql_handle_t *handle, rlm_sql_config_t *config,
+static sql_rcode_t sql_socket_init(rlm_sql_handle_t *handle, rlm_sql_config_t const *config,
                                   UNUSED fr_time_delta_t timeout)
 {
        rlm_sql_firebird_conn_t *conn;
@@ -92,7 +92,7 @@ static sql_rcode_t sql_socket_init(rlm_sql_handle_t *handle, rlm_sql_config_t *c
 /** Issue a non-SELECT query (ie: update/delete/insert) to the database.
  *
  */
-static sql_rcode_t sql_query(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config, char const *query)
+static sql_rcode_t sql_query(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config, char const *query)
 {
        rlm_sql_firebird_conn_t *conn = handle->conn;
 
@@ -153,7 +153,7 @@ static sql_rcode_t sql_query(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *
 /** Issue a select query to the database.
  *
  */
-static sql_rcode_t sql_select_query(rlm_sql_handle_t *handle, rlm_sql_config_t *config, char const *query)
+static sql_rcode_t sql_select_query(rlm_sql_handle_t *handle, rlm_sql_config_t const *config, char const *query)
 {
        return sql_query(handle, config, query);
 }
@@ -161,7 +161,7 @@ static sql_rcode_t sql_select_query(rlm_sql_handle_t *handle, rlm_sql_config_t *
 /** Returns number of columns from query.
  *
  */
-static int sql_num_fields(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+static int sql_num_fields(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        return ((rlm_sql_firebird_conn_t *) handle->conn)->sqlda_out->sqld;
 }
@@ -169,7 +169,7 @@ static int sql_num_fields(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *con
 /** Returns number of rows in query.
  *
  */
-static int sql_num_rows(rlm_sql_handle_t *handle, rlm_sql_config_t *config)
+static int sql_num_rows(rlm_sql_handle_t *handle, rlm_sql_config_t const *config)
 {
        return sql_affected_rows(handle, config);
 }
@@ -177,7 +177,7 @@ static int sql_num_rows(rlm_sql_handle_t *handle, rlm_sql_config_t *config)
 /** Returns name of fields.
  *
  */
-static sql_rcode_t sql_fields(char const **out[], rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+static sql_rcode_t sql_fields(char const **out[], rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        rlm_sql_firebird_conn_t *conn = handle->conn;
 
@@ -198,7 +198,7 @@ static sql_rcode_t sql_fields(char const **out[], rlm_sql_handle_t *handle, UNUS
 /** Returns an individual row.
  *
  */
-static sql_rcode_t sql_fetch_row(rlm_sql_row_t *out, rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+static sql_rcode_t sql_fetch_row(rlm_sql_row_t *out, rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        rlm_sql_firebird_conn_t *conn = handle->conn;
        int res;
@@ -229,7 +229,7 @@ static sql_rcode_t sql_fetch_row(rlm_sql_row_t *out, rlm_sql_handle_t *handle, U
 /** End the select query, such as freeing memory or result.
  *
  */
-static sql_rcode_t sql_finish_select_query(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+static sql_rcode_t sql_finish_select_query(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        rlm_sql_firebird_conn_t *conn = (rlm_sql_firebird_conn_t *) handle->conn;
 
@@ -242,7 +242,7 @@ static sql_rcode_t sql_finish_select_query(rlm_sql_handle_t *handle, UNUSED rlm_
 /** End the query
  *
  */
-static sql_rcode_t sql_finish_query(UNUSED rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+static sql_rcode_t sql_finish_query(UNUSED rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        return 0;
 }
@@ -250,7 +250,7 @@ static sql_rcode_t sql_finish_query(UNUSED rlm_sql_handle_t *handle, UNUSED rlm_
 /** Frees memory allocated for a result set.
  *
  */
-static sql_rcode_t sql_free_result(UNUSED rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+static sql_rcode_t sql_free_result(UNUSED rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        return 0;
 }
@@ -267,7 +267,7 @@ static sql_rcode_t sql_free_result(UNUSED rlm_sql_handle_t *handle, UNUSED rlm_s
  * @return number of errors written to the #sql_log_entry_t array.
  */
 static size_t sql_error(UNUSED TALLOC_CTX *ctx, sql_log_entry_t out[], NDEBUG_UNUSED size_t outlen,
-                       rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+                       rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        rlm_sql_firebird_conn_t *conn = handle->conn;
 
@@ -285,7 +285,7 @@ static size_t sql_error(UNUSED TALLOC_CTX *ctx, sql_log_entry_t out[], NDEBUG_UN
 /** Return the number of rows affected by the query (update, or insert)
  *
  */
-static int sql_affected_rows(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+static int sql_affected_rows(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        return fb_affected_rows(handle->conn);
 }
index 33cf105bd483a447c58fbdf889e2fd24f964614e..905745ac5393126c409971756649987f2b61a940 100644 (file)
@@ -191,7 +191,7 @@ static CS_RETCODE CS_PUBLIC servermsg_callback(CS_CONTEXT *context, UNUSED CS_CO
  *            the database.
  *
  *************************************************************************/
-static sql_rcode_t sql_query(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config, char const *query)
+static sql_rcode_t sql_query(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config, char const *query)
 {
        rlm_sql_freetds_conn_t *conn = handle->conn;
 
@@ -312,7 +312,7 @@ static sql_rcode_t sql_query(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *
  *            of columns from query
  *
  *************************************************************************/
-static int sql_num_fields(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+static int sql_num_fields(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        rlm_sql_freetds_conn_t *conn = handle->conn;
        CS_INT num = 0;
@@ -333,7 +333,7 @@ static int sql_num_fields(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *con
  *     Purpose:  Return name of regular result columns.
  *
  *************************************************************************/
-static sql_rcode_t sql_fields(char const **out[], rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+static sql_rcode_t sql_fields(char const **out[], rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        rlm_sql_freetds_conn_t *conn = handle->conn;
        CS_DATAFMT datafmt;
@@ -389,7 +389,7 @@ static sql_rcode_t sql_fields(char const **out[], rlm_sql_handle_t *handle, UNUS
  * @return number of errors written to the #sql_log_entry_t array.
  */
 static size_t sql_error(UNUSED TALLOC_CTX *ctx, sql_log_entry_t out[], NDEBUG_UNUSED size_t outlen,
-                       rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+                       rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        rlm_sql_freetds_conn_t *conn = handle->conn;
 
@@ -404,7 +404,7 @@ static size_t sql_error(UNUSED TALLOC_CTX *ctx, sql_log_entry_t out[], NDEBUG_UN
        return 1;
 }
 
-static sql_rcode_t sql_finish_select_query(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+static sql_rcode_t sql_finish_select_query(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        rlm_sql_freetds_conn_t *conn = handle->conn;
 
@@ -428,7 +428,7 @@ static sql_rcode_t sql_finish_select_query(rlm_sql_handle_t *handle, UNUSED rlm_
  * consecutive rows will be discarded.
  *
  */
-static sql_rcode_t sql_select_query(rlm_sql_handle_t *handle, rlm_sql_config_t *config, char const *query)
+static sql_rcode_t sql_select_query(rlm_sql_handle_t *handle, rlm_sql_config_t const *config, char const *query)
 {
        rlm_sql_freetds_conn_t *conn = handle->conn;
 
@@ -550,7 +550,7 @@ static sql_rcode_t sql_select_query(rlm_sql_handle_t *handle, rlm_sql_config_t *
        return RLM_SQL_OK;
 }
 
-static int sql_num_rows(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+static int sql_num_rows(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        rlm_sql_freetds_conn_t *conn = handle->conn;
        int     num;
@@ -564,7 +564,7 @@ static int sql_num_rows(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *confi
        return num;
 }
 
-static sql_rcode_t sql_fetch_row(rlm_sql_row_t *out, rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+static sql_rcode_t sql_fetch_row(rlm_sql_row_t *out, rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        rlm_sql_freetds_conn_t *conn = handle->conn;
        CS_INT ret, count;
@@ -607,7 +607,7 @@ static sql_rcode_t sql_fetch_row(rlm_sql_row_t *out, rlm_sql_handle_t *handle, U
        }
 }
 
-static sql_rcode_t sql_free_result(UNUSED rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+static sql_rcode_t sql_free_result(UNUSED rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
 
        /*
@@ -618,7 +618,7 @@ static sql_rcode_t sql_free_result(UNUSED rlm_sql_handle_t *handle, UNUSED rlm_s
 
 }
 
-static sql_rcode_t sql_finish_query(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+static sql_rcode_t sql_finish_query(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        rlm_sql_freetds_conn_t *conn = handle->conn;
 
@@ -633,7 +633,7 @@ static sql_rcode_t sql_finish_query(rlm_sql_handle_t *handle, UNUSED rlm_sql_con
        return RLM_SQL_OK;
 }
 
-static int sql_affected_rows(rlm_sql_handle_t *handle, rlm_sql_config_t *config)
+static int sql_affected_rows(rlm_sql_handle_t *handle, rlm_sql_config_t const *config)
 {
        return sql_num_rows(handle, config);
 }
@@ -676,7 +676,7 @@ static int _sql_socket_destructor(rlm_sql_freetds_conn_t *conn)
        return RLM_SQL_OK;
 }
 
-static sql_rcode_t sql_socket_init(rlm_sql_handle_t *handle, rlm_sql_config_t *config, fr_time_delta_t timeout)
+static sql_rcode_t sql_socket_init(rlm_sql_handle_t *handle, rlm_sql_config_t const *config, fr_time_delta_t timeout)
 {
        rlm_sql_freetds_conn_t *conn;
        unsigned int timeout_ms = fr_time_delta_to_msec(timeout);
index 85ab15b45ece2d45549255c0ab4e03c62e3c675e..2a794554fb2a45fe5629e067e18c25cb55f26699 100644 (file)
@@ -217,7 +217,7 @@ static int mod_load(void)
        return 0;
 }
 
-static sql_rcode_t sql_socket_init(rlm_sql_handle_t *handle, rlm_sql_config_t *config, fr_time_delta_t timeout)
+static sql_rcode_t sql_socket_init(rlm_sql_handle_t *handle, rlm_sql_config_t const *config, fr_time_delta_t timeout)
 {
        rlm_sql_mysql_conn_t *conn;
        rlm_sql_mysql_t *inst = config->driver;
@@ -417,7 +417,7 @@ static sql_rcode_t sql_check_error(MYSQL *server, int client_errno)
        return RLM_SQL_OK;
 }
 
-static sql_rcode_t sql_query(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config, char const *query)
+static sql_rcode_t sql_query(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config, char const *query)
 {
        rlm_sql_mysql_conn_t *conn = handle->conn;
        sql_rcode_t rcode;
@@ -441,7 +441,7 @@ static sql_rcode_t sql_query(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *
        return RLM_SQL_OK;
 }
 
-static sql_rcode_t sql_store_result(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+static sql_rcode_t sql_store_result(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        rlm_sql_mysql_conn_t *conn = handle->conn;
        sql_rcode_t rcode;
@@ -469,7 +469,7 @@ retry_store_result:
        return RLM_SQL_OK;
 }
 
-static int sql_num_fields(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+static int sql_num_fields(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        int num = 0;
        rlm_sql_mysql_conn_t *conn = handle->conn;
@@ -489,7 +489,7 @@ static int sql_num_fields(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *con
        return num;
 }
 
-static sql_rcode_t sql_select_query(rlm_sql_handle_t *handle, rlm_sql_config_t *config, char const *query)
+static sql_rcode_t sql_select_query(rlm_sql_handle_t *handle, rlm_sql_config_t const *config, char const *query)
 {
        sql_rcode_t rcode;
 
@@ -512,7 +512,7 @@ static sql_rcode_t sql_select_query(rlm_sql_handle_t *handle, rlm_sql_config_t *
        return rcode;
 }
 
-static int sql_num_rows(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+static int sql_num_rows(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        rlm_sql_mysql_conn_t *conn = handle->conn;
 
@@ -523,7 +523,7 @@ static int sql_num_rows(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *confi
        return 0;
 }
 
-static sql_rcode_t sql_fields(char const **out[], rlm_sql_handle_t *handle, rlm_sql_config_t *config)
+static sql_rcode_t sql_fields(char const **out[], rlm_sql_handle_t *handle, rlm_sql_config_t const *config)
 {
        rlm_sql_mysql_conn_t *conn = handle->conn;
 
@@ -554,7 +554,7 @@ static sql_rcode_t sql_fields(char const **out[], rlm_sql_handle_t *handle, rlm_
        return RLM_SQL_OK;
 }
 
-static sql_rcode_t sql_fetch_row(rlm_sql_row_t *out, rlm_sql_handle_t *handle, rlm_sql_config_t *config)
+static sql_rcode_t sql_fetch_row(rlm_sql_row_t *out, rlm_sql_handle_t *handle, rlm_sql_config_t const *config)
 {
        rlm_sql_mysql_conn_t    *conn = handle->conn;
        sql_rcode_t             rcode;
@@ -606,7 +606,7 @@ retry_fetch_row:
        return RLM_SQL_OK;
 }
 
-static sql_rcode_t sql_free_result(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+static sql_rcode_t sql_free_result(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        rlm_sql_mysql_conn_t *conn = handle->conn;
 
@@ -637,7 +637,7 @@ static sql_rcode_t sql_free_result(rlm_sql_handle_t *handle, UNUSED rlm_sql_conf
  *     - -1 on failure.
  */
 static size_t sql_warnings(TALLOC_CTX *ctx, sql_log_entry_t out[], size_t outlen,
-                          rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+                          rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        rlm_sql_mysql_conn_t    *conn = handle->conn;
 
@@ -702,7 +702,7 @@ static size_t sql_warnings(TALLOC_CTX *ctx, sql_log_entry_t out[], size_t outlen
  * @return number of errors written to the #sql_log_entry_t array.
  */
 static size_t sql_error(TALLOC_CTX *ctx, sql_log_entry_t out[], size_t outlen,
-                       rlm_sql_handle_t *handle, rlm_sql_config_t *config)
+                       rlm_sql_handle_t *handle, rlm_sql_config_t const *config)
 {
        rlm_sql_mysql_conn_t    *conn = handle->conn;
        rlm_sql_mysql_t *inst = config->driver;
@@ -771,7 +771,7 @@ static size_t sql_error(TALLOC_CTX *ctx, sql_log_entry_t out[], size_t outlen,
  * whether more results exist and process them in turn if so.
  *
  */
-static sql_rcode_t sql_finish_query(rlm_sql_handle_t *handle, rlm_sql_config_t *config)
+static sql_rcode_t sql_finish_query(rlm_sql_handle_t *handle, rlm_sql_config_t const *config)
 {
 #if (MYSQL_VERSION_ID >= 40100)
        rlm_sql_mysql_conn_t    *conn = handle->conn;
@@ -817,7 +817,7 @@ static sql_rcode_t sql_finish_query(rlm_sql_handle_t *handle, rlm_sql_config_t *
        return RLM_SQL_OK;
 }
 
-static int sql_affected_rows(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+static int sql_affected_rows(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        rlm_sql_mysql_conn_t *conn = handle->conn;
 
index 58df05cb5941fc7c1f5c5e96fa6decc2010eaf1d..1afa8a69af6059b84667de4ba32e512678a035ea 100644 (file)
@@ -27,12 +27,9 @@ RCSID("$Id$")
 #include       "rlm_sql.h"
 
 
-/* Prototypes */
-static sql_rcode_t sql_free_result(rlm_sql_handle_t*, rlm_sql_config_t*);
-
 static const void *fake = "fake";
 
-static sql_rcode_t sql_socket_init(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config,
+static sql_rcode_t sql_socket_init(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config,
                                   UNUSED fr_time_delta_t timeout)
 {
        memcpy(&handle->conn, &fake, sizeof(handle->conn));
@@ -40,36 +37,36 @@ static sql_rcode_t sql_socket_init(rlm_sql_handle_t *handle, UNUSED rlm_sql_conf
 }
 
 static sql_rcode_t sql_query(UNUSED rlm_sql_handle_t * handle,
-                            UNUSED rlm_sql_config_t *config, UNUSED char const *query)
+                            UNUSED rlm_sql_config_t const *config, UNUSED char const *query)
 {
        return 0;
 }
 
-static int sql_num_fields(UNUSED rlm_sql_handle_t * handle, UNUSED rlm_sql_config_t *config)
+static int sql_num_fields(UNUSED rlm_sql_handle_t * handle, UNUSED rlm_sql_config_t const *config)
 {
        return 0;
 }
 
 static sql_rcode_t sql_select_query(UNUSED rlm_sql_handle_t *handle,
-                                   UNUSED rlm_sql_config_t *config, UNUSED char const *query)
+                                   UNUSED rlm_sql_config_t const *config, UNUSED char const *query)
 {
        return 0;
 }
 
-static int sql_num_rows(UNUSED rlm_sql_handle_t * handle, UNUSED rlm_sql_config_t *config)
+static int sql_num_rows(UNUSED rlm_sql_handle_t * handle, UNUSED rlm_sql_config_t const *config)
 {
        return 0;
 }
 
 static sql_rcode_t sql_fetch_row(rlm_sql_row_t *out, UNUSED rlm_sql_handle_t *handle,
-                                UNUSED rlm_sql_config_t *config)
+                                UNUSED rlm_sql_config_t const *config)
 {
        *out = NULL;
 
        return RLM_SQL_NO_MORE_ROWS;
 }
 
-static sql_rcode_t sql_free_result(UNUSED rlm_sql_handle_t * handle, UNUSED rlm_sql_config_t *config)
+static sql_rcode_t sql_free_result(UNUSED rlm_sql_handle_t * handle, UNUSED rlm_sql_config_t const *config)
 {
        return 0;
 }
@@ -78,22 +75,22 @@ static sql_rcode_t sql_free_result(UNUSED rlm_sql_handle_t * handle, UNUSED rlm_
  *
  */
 static size_t sql_error(UNUSED TALLOC_CTX *ctx, UNUSED sql_log_entry_t out[], UNUSED size_t outlen,
-                       UNUSED rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+                       UNUSED rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        return 0;
 }
 
-static sql_rcode_t sql_finish_query(UNUSED rlm_sql_handle_t * handle, UNUSED rlm_sql_config_t *config)
+static sql_rcode_t sql_finish_query(UNUSED rlm_sql_handle_t * handle, UNUSED rlm_sql_config_t const *config)
 {
        return 0;
 }
 
-static sql_rcode_t sql_finish_select_query(UNUSED rlm_sql_handle_t * handle, UNUSED rlm_sql_config_t *config)
+static sql_rcode_t sql_finish_select_query(UNUSED rlm_sql_handle_t * handle, UNUSED rlm_sql_config_t const *config)
 {
        return 0;
 }
 
-static int sql_affected_rows(UNUSED rlm_sql_handle_t * handle, UNUSED rlm_sql_config_t *config)
+static int sql_affected_rows(UNUSED rlm_sql_handle_t * handle, UNUSED rlm_sql_config_t const *config)
 {
        return 1;
 }
index 3256241167fc054e0a64654a528d6639827d6a97..0db84b58a4f9708a7b2da0378df04a49fa855282 100644 (file)
@@ -98,7 +98,7 @@ static const CONF_PARSER driver_config[] = {
  *     - 0 on success.
  *     - -1 if there was no error.
  */
-static int sql_snprint_error(char *out, size_t outlen, rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+static int sql_snprint_error(char *out, size_t outlen, rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        sb4                     errcode = 0;
        rlm_sql_oracle_conn_t   *conn = handle->conn;
@@ -126,7 +126,7 @@ static int sql_snprint_error(char *out, size_t outlen, rlm_sql_handle_t *handle,
  * @return number of errors written to the #sql_log_entry_t array.
  */
 static size_t sql_error(TALLOC_CTX *ctx, sql_log_entry_t out[], NDEBUG_UNUSED size_t outlen,
-                       rlm_sql_handle_t *handle, rlm_sql_config_t *config)
+                       rlm_sql_handle_t *handle, rlm_sql_config_t const *config)
 {
        char errbuff[512];
        int ret;
@@ -235,7 +235,7 @@ static int mod_instantiate(rlm_sql_config_t const *config, void *instance, CONF_
        return 0;
 }
 
-static int sql_check_reconnect(rlm_sql_handle_t *handle, rlm_sql_config_t *config)
+static int sql_check_reconnect(rlm_sql_handle_t *handle, rlm_sql_config_t const *config)
 {
        char errbuff[512];
 
@@ -256,7 +256,7 @@ static int _sql_socket_destructor(rlm_sql_oracle_conn_t *conn)
        return 0;
 }
 
-static sql_rcode_t sql_socket_init(rlm_sql_handle_t *handle, rlm_sql_config_t *config,
+static sql_rcode_t sql_socket_init(rlm_sql_handle_t *handle, rlm_sql_config_t const *config,
                                   UNUSED fr_time_delta_t timeout)
 {
        char errbuff[512];
@@ -293,7 +293,7 @@ static sql_rcode_t sql_socket_init(rlm_sql_handle_t *handle, rlm_sql_config_t *c
        return RLM_SQL_OK;
 }
 
-static int sql_num_fields(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+static int sql_num_fields(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        int count;
        rlm_sql_oracle_conn_t *conn = handle->conn;
@@ -305,7 +305,7 @@ static int sql_num_fields(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *con
        return count;
 }
 
-static sql_rcode_t sql_fields(char const **out[], rlm_sql_handle_t *handle, rlm_sql_config_t *config)
+static sql_rcode_t sql_fields(char const **out[], rlm_sql_handle_t *handle, rlm_sql_config_t const *config)
 {
        rlm_sql_oracle_conn_t *conn = handle->conn;
        int             fields, i, status;
@@ -346,7 +346,7 @@ static sql_rcode_t sql_fields(char const **out[], rlm_sql_handle_t *handle, rlm_
        return RLM_SQL_OK;
 }
 
-static sql_rcode_t sql_query(rlm_sql_handle_t *handle, rlm_sql_config_t *config, char const *query)
+static sql_rcode_t sql_query(rlm_sql_handle_t *handle, rlm_sql_config_t const *config, char const *query)
 {
        int                     status;
        rlm_sql_oracle_conn_t   *conn = handle->conn;
@@ -377,7 +377,7 @@ static sql_rcode_t sql_query(rlm_sql_handle_t *handle, rlm_sql_config_t *config,
        return RLM_SQL_ERROR;
 }
 
-static sql_rcode_t sql_select_query(rlm_sql_handle_t *handle, rlm_sql_config_t *config, char const *query)
+static sql_rcode_t sql_select_query(rlm_sql_handle_t *handle, rlm_sql_config_t const *config, char const *query)
 {
        int             status;
        char            **row;
@@ -508,7 +508,7 @@ static sql_rcode_t sql_select_query(rlm_sql_handle_t *handle, rlm_sql_config_t *
        return RLM_SQL_ERROR;
 }
 
-static int sql_num_rows(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+static int sql_num_rows(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        rlm_sql_oracle_conn_t *conn = handle->conn;
        ub4 rows = 0;
@@ -519,7 +519,7 @@ static int sql_num_rows(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *confi
        return rows;
 }
 
-static sql_rcode_t sql_fetch_row(rlm_sql_row_t *out, rlm_sql_handle_t *handle, rlm_sql_config_t *config)
+static sql_rcode_t sql_fetch_row(rlm_sql_row_t *out, rlm_sql_handle_t *handle, rlm_sql_config_t const *config)
 {
        int status;
        rlm_sql_oracle_conn_t *conn = handle->conn;
@@ -555,7 +555,7 @@ static sql_rcode_t sql_fetch_row(rlm_sql_row_t *out, rlm_sql_handle_t *handle, r
        return RLM_SQL_ERROR;
 }
 
-static sql_rcode_t sql_free_result(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+static sql_rcode_t sql_free_result(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        rlm_sql_oracle_conn_t *conn = handle->conn;
 
@@ -574,7 +574,7 @@ static sql_rcode_t sql_free_result(rlm_sql_handle_t *handle, UNUSED rlm_sql_conf
        return RLM_SQL_OK;
 }
 
-static sql_rcode_t sql_finish_query(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+static sql_rcode_t sql_finish_query(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        rlm_sql_oracle_conn_t *conn = handle->conn;
 
@@ -586,7 +586,7 @@ static sql_rcode_t sql_finish_query(rlm_sql_handle_t *handle, UNUSED rlm_sql_con
        return 0;
 }
 
-static sql_rcode_t sql_finish_select_query(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+static sql_rcode_t sql_finish_select_query(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        rlm_sql_oracle_conn_t *conn = handle->conn;
 
@@ -602,7 +602,7 @@ static sql_rcode_t sql_finish_select_query(rlm_sql_handle_t *handle, UNUSED rlm_
        return 0;
 }
 
-static int sql_affected_rows(rlm_sql_handle_t *handle, rlm_sql_config_t *config)
+static int sql_affected_rows(rlm_sql_handle_t *handle, rlm_sql_config_t const *config)
 {
        return sql_num_rows(handle, config);
 }
index f11843de8746a27807320a914013cf29d0a2c522..f48d6161a12e1e2209834718c97b620e9b01e5da 100644 (file)
@@ -232,7 +232,7 @@ static int _sql_socket_destructor(rlm_sql_postgres_conn_t *conn)
        return 0;
 }
 
-static int CC_HINT(nonnull) sql_socket_init(rlm_sql_handle_t *handle, rlm_sql_config_t *config,
+static int CC_HINT(nonnull) sql_socket_init(rlm_sql_handle_t *handle, rlm_sql_config_t const *config,
                                            UNUSED fr_time_delta_t timeout)
 {
        rlm_sql_postgres_t *inst = config->driver;
@@ -261,7 +261,7 @@ static int CC_HINT(nonnull) sql_socket_init(rlm_sql_handle_t *handle, rlm_sql_co
        return 0;
 }
 
-static CC_HINT(nonnull) sql_rcode_t sql_query(rlm_sql_handle_t *handle, rlm_sql_config_t *config,
+static CC_HINT(nonnull) sql_rcode_t sql_query(rlm_sql_handle_t *handle, rlm_sql_config_t const *config,
                                              char const *query)
 {
        rlm_sql_postgres_conn_t *conn = handle->conn;
@@ -400,12 +400,12 @@ static CC_HINT(nonnull) sql_rcode_t sql_query(rlm_sql_handle_t *handle, rlm_sql_
        return sql_classify_error(inst, status, conn->result);;
 }
 
-static sql_rcode_t sql_select_query(rlm_sql_handle_t * handle, rlm_sql_config_t *config, char const *query)
+static sql_rcode_t sql_select_query(rlm_sql_handle_t * handle, rlm_sql_config_t const *config, char const *query)
 {
        return sql_query(handle, config, query);
 }
 
-static sql_rcode_t sql_fields(char const **out[], rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+static sql_rcode_t sql_fields(char const **out[], rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        rlm_sql_postgres_conn_t *conn = handle->conn;
 
@@ -423,7 +423,7 @@ static sql_rcode_t sql_fields(char const **out[], rlm_sql_handle_t *handle, UNUS
        return RLM_SQL_OK;
 }
 
-static sql_rcode_t sql_fetch_row(rlm_sql_row_t *out, rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+static sql_rcode_t sql_fetch_row(rlm_sql_row_t *out, rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
 
        int records, i, len;
@@ -455,7 +455,7 @@ static sql_rcode_t sql_fetch_row(rlm_sql_row_t *out, rlm_sql_handle_t *handle, U
        return RLM_SQL_NO_MORE_ROWS;
 }
 
-static int sql_num_fields(rlm_sql_handle_t * handle, UNUSED rlm_sql_config_t *config)
+static int sql_num_fields(rlm_sql_handle_t * handle, UNUSED rlm_sql_config_t const *config)
 {
        rlm_sql_postgres_conn_t *conn = handle->conn;
 
@@ -465,7 +465,7 @@ static int sql_num_fields(rlm_sql_handle_t * handle, UNUSED rlm_sql_config_t *co
        return 0;
 }
 
-static sql_rcode_t sql_free_result(rlm_sql_handle_t * handle, UNUSED rlm_sql_config_t *config)
+static sql_rcode_t sql_free_result(rlm_sql_handle_t * handle, UNUSED rlm_sql_config_t const *config)
 {
        rlm_sql_postgres_conn_t *conn = handle->conn;
 
@@ -491,7 +491,7 @@ static sql_rcode_t sql_free_result(rlm_sql_handle_t * handle, UNUSED rlm_sql_con
  * @return number of errors written to the #sql_log_entry_t array.
  */
 static size_t sql_error(TALLOC_CTX *ctx, sql_log_entry_t out[], size_t outlen,
-                       rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+                       rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        rlm_sql_postgres_conn_t *conn = handle->conn;
        char const              *p, *q;
@@ -515,7 +515,7 @@ static size_t sql_error(TALLOC_CTX *ctx, sql_log_entry_t out[], size_t outlen,
        return i;
 }
 
-static int sql_affected_rows(rlm_sql_handle_t * handle, UNUSED rlm_sql_config_t *config)
+static int sql_affected_rows(rlm_sql_handle_t * handle, UNUSED rlm_sql_config_t const *config)
 {
        rlm_sql_postgres_conn_t *conn = handle->conn;
 
index 23f56f1612b5cc30c4511a83079315ed0b4ef933..c5872909db9227b21df957a42340ed6f275c1bea 100644 (file)
@@ -408,7 +408,7 @@ static void _sql_greatest(sqlite3_context *ctx, int num_values, sqlite3_value **
        sqlite3_result_int64(ctx, max);
 }
 
-static int CC_HINT(nonnull) sql_socket_init(rlm_sql_handle_t *handle, rlm_sql_config_t *config,
+static int CC_HINT(nonnull) sql_socket_init(rlm_sql_handle_t *handle, rlm_sql_config_t const *config,
                                            UNUSED fr_time_delta_t timeout)
 {
        rlm_sql_sqlite_conn_t *conn;
@@ -467,7 +467,7 @@ static int CC_HINT(nonnull) sql_socket_init(rlm_sql_handle_t *handle, rlm_sql_co
        return RLM_SQL_OK;
 }
 
-static sql_rcode_t sql_select_query(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config, char const *query)
+static sql_rcode_t sql_select_query(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config, char const *query)
 {
        rlm_sql_sqlite_conn_t   *conn = handle->conn;
        char const              *z_tail;
@@ -485,7 +485,7 @@ static sql_rcode_t sql_select_query(rlm_sql_handle_t *handle, UNUSED rlm_sql_con
 }
 
 
-static sql_rcode_t sql_query(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config, char const *query)
+static sql_rcode_t sql_query(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config, char const *query)
 {
 
        sql_rcode_t             rcode;
@@ -505,7 +505,7 @@ static sql_rcode_t sql_query(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *
        return sql_check_error(conn->db, status);
 }
 
-static int sql_num_fields(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+static int sql_num_fields(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        rlm_sql_sqlite_conn_t *conn = handle->conn;
 
@@ -514,7 +514,7 @@ static int sql_num_fields(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *con
        return 0;
 }
 
-static sql_rcode_t sql_fields(char const **out[], rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+static sql_rcode_t sql_fields(char const **out[], rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        rlm_sql_sqlite_conn_t *conn = handle->conn;
 
@@ -532,7 +532,7 @@ static sql_rcode_t sql_fields(char const **out[], rlm_sql_handle_t *handle, UNUS
        return RLM_SQL_OK;
 }
 
-static sql_rcode_t sql_fetch_row(rlm_sql_row_t *out, rlm_sql_handle_t *handle, rlm_sql_config_t *config)
+static sql_rcode_t sql_fetch_row(rlm_sql_row_t *out, rlm_sql_handle_t *handle, rlm_sql_config_t const *config)
 {
        int status;
        rlm_sql_sqlite_conn_t *conn = handle->conn;
@@ -618,7 +618,7 @@ static sql_rcode_t sql_fetch_row(rlm_sql_row_t *out, rlm_sql_handle_t *handle, r
        return RLM_SQL_OK;
 }
 
-static sql_rcode_t sql_free_result(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+static sql_rcode_t sql_free_result(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        rlm_sql_sqlite_conn_t *conn = handle->conn;
 
@@ -652,7 +652,7 @@ static sql_rcode_t sql_free_result(rlm_sql_handle_t *handle, UNUSED rlm_sql_conf
  * @return number of errors written to the #sql_log_entry_t array.
  */
 static size_t sql_error(UNUSED TALLOC_CTX *ctx, sql_log_entry_t out[], NDEBUG_UNUSED size_t outlen,
-                       rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+                       rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        rlm_sql_sqlite_conn_t *conn = handle->conn;
        char const *error;
@@ -668,13 +668,13 @@ static size_t sql_error(UNUSED TALLOC_CTX *ctx, sql_log_entry_t out[], NDEBUG_UN
        return 1;
 }
 
-static sql_rcode_t sql_finish_query(rlm_sql_handle_t *handle, rlm_sql_config_t *config)
+static sql_rcode_t sql_finish_query(rlm_sql_handle_t *handle, rlm_sql_config_t const *config)
 {
        return sql_free_result(handle, config);
 }
 
 static int sql_affected_rows(rlm_sql_handle_t *handle,
-                            UNUSED rlm_sql_config_t *config)
+                            UNUSED rlm_sql_config_t const *config)
 {
        rlm_sql_sqlite_conn_t *conn = handle->conn;
 
index 3482c854b6c6e2f753137d6cb34819999058baf4..ab5d2e276e3ef6bfff9635bbbab44f291f521d09 100644 (file)
@@ -42,10 +42,10 @@ USES_APPLE_DEPRECATED_API
 #include <sqlext.h>
 
 /* Forward declarations */
-static int sql_check_error(long err_handle, rlm_sql_handle_t *handle, rlm_sql_config_t *config);
-static sql_rcode_t sql_free_result(rlm_sql_handle_t *handle, rlm_sql_config_t *config);
-static int sql_affected_rows(rlm_sql_handle_t *handle, rlm_sql_config_t *config);
-static int sql_num_fields(rlm_sql_handle_t *handle, rlm_sql_config_t *config);
+static int sql_check_error(long err_handle, rlm_sql_handle_t *handle, rlm_sql_config_t const *config);
+static sql_rcode_t sql_free_result(rlm_sql_handle_t *handle, rlm_sql_config_t const *config);
+static int sql_affected_rows(rlm_sql_handle_t *handle, rlm_sql_config_t const *config);
+static int sql_num_fields(rlm_sql_handle_t *handle, rlm_sql_config_t const *config);
 
 static int _sql_socket_destructor(rlm_sql_unixodbc_conn_t *conn)
 {
@@ -63,7 +63,7 @@ static int _sql_socket_destructor(rlm_sql_unixodbc_conn_t *conn)
        return 0;
 }
 
-static sql_rcode_t sql_socket_init(rlm_sql_handle_t *handle, rlm_sql_config_t *config,
+static sql_rcode_t sql_socket_init(rlm_sql_handle_t *handle, rlm_sql_config_t const *config,
                                   fr_time_delta_t timeout)
 {
        rlm_sql_unixodbc_conn_t *conn;
@@ -117,7 +117,7 @@ static sql_rcode_t sql_socket_init(rlm_sql_handle_t *handle, rlm_sql_config_t *c
     return RLM_SQL_OK;
 }
 
-static sql_rcode_t sql_query(rlm_sql_handle_t *handle, rlm_sql_config_t *config, char const *query)
+static sql_rcode_t sql_query(rlm_sql_handle_t *handle, rlm_sql_config_t const *config, char const *query)
 {
        rlm_sql_unixodbc_conn_t *conn = handle->conn;
        long err_handle;
@@ -134,7 +134,7 @@ static sql_rcode_t sql_query(rlm_sql_handle_t *handle, rlm_sql_config_t *config,
        return 0;
 }
 
-static sql_rcode_t sql_select_query(rlm_sql_handle_t *handle, rlm_sql_config_t *config, char const *query)
+static sql_rcode_t sql_select_query(rlm_sql_handle_t *handle, rlm_sql_config_t const *config, char const *query)
 {
        rlm_sql_unixodbc_conn_t *conn = handle->conn;
        SQLINTEGER i;
@@ -165,7 +165,7 @@ static sql_rcode_t sql_select_query(rlm_sql_handle_t *handle, rlm_sql_config_t *
        return RLM_SQL_OK;
 }
 
-static int sql_num_fields(rlm_sql_handle_t *handle, rlm_sql_config_t *config)
+static int sql_num_fields(rlm_sql_handle_t *handle, rlm_sql_config_t const *config)
 {
        rlm_sql_unixodbc_conn_t *conn = handle->conn;
        long err_handle;
@@ -177,7 +177,7 @@ static int sql_num_fields(rlm_sql_handle_t *handle, rlm_sql_config_t *config)
        return num_fields;
 }
 
-static sql_rcode_t sql_fields(char const **out[], rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+static sql_rcode_t sql_fields(char const **out[], rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        rlm_sql_unixodbc_conn_t *conn = handle->conn;
 
@@ -215,7 +215,7 @@ static sql_rcode_t sql_fields(char const **out[], rlm_sql_handle_t *handle, UNUS
        return RLM_SQL_OK;
 }
 
-static sql_rcode_t sql_fetch_row(rlm_sql_row_t *out, rlm_sql_handle_t *handle, rlm_sql_config_t *config)
+static sql_rcode_t sql_fetch_row(rlm_sql_row_t *out, rlm_sql_handle_t *handle, rlm_sql_config_t const *config)
 {
        rlm_sql_unixodbc_conn_t *conn = handle->conn;
        long err_handle;
@@ -235,7 +235,7 @@ static sql_rcode_t sql_fetch_row(rlm_sql_row_t *out, rlm_sql_handle_t *handle, r
        return RLM_SQL_OK;
 }
 
-static sql_rcode_t sql_finish_select_query(rlm_sql_handle_t * handle, rlm_sql_config_t *config)
+static sql_rcode_t sql_finish_select_query(rlm_sql_handle_t * handle, rlm_sql_config_t const *config)
 {
        rlm_sql_unixodbc_conn_t *conn = handle->conn;
 
@@ -258,7 +258,7 @@ static sql_rcode_t sql_finish_select_query(rlm_sql_handle_t * handle, rlm_sql_co
        return 0;
 }
 
-static sql_rcode_t sql_finish_query(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+static sql_rcode_t sql_finish_query(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        rlm_sql_unixodbc_conn_t *conn = handle->conn;
 
@@ -267,7 +267,7 @@ static sql_rcode_t sql_finish_query(rlm_sql_handle_t *handle, UNUSED rlm_sql_con
        return 0;
 }
 
-static sql_rcode_t sql_free_result(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+static sql_rcode_t sql_free_result(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        rlm_sql_unixodbc_conn_t *conn = handle->conn;
 
@@ -288,7 +288,7 @@ static sql_rcode_t sql_free_result(rlm_sql_handle_t *handle, UNUSED rlm_sql_conf
  * @return number of errors written to the #sql_log_entry_t array.
  */
 static size_t sql_error(TALLOC_CTX *ctx, sql_log_entry_t out[], NDEBUG_UNUSED size_t outlen,
-                       rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+                       rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        rlm_sql_unixodbc_conn_t         *conn = handle->conn;
        SQLCHAR                         state[256];
@@ -319,7 +319,7 @@ static size_t sql_error(TALLOC_CTX *ctx, sql_log_entry_t out[], NDEBUG_UNUSED si
  *     - #RLM_SQL_RECONNECT if reconnect is needed.
  *     - #RLM_SQL_ERROR on error.
  */
-static sql_rcode_t sql_check_error(long error_handle, rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t *config)
+static sql_rcode_t sql_check_error(long error_handle, rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config)
 {
        SQLCHAR state[256];
        SQLCHAR error[256];
@@ -373,7 +373,7 @@ static sql_rcode_t sql_check_error(long error_handle, rlm_sql_handle_t *handle,
  *            or insert)
  *
  *************************************************************************/
-static int sql_affected_rows(rlm_sql_handle_t *handle, rlm_sql_config_t *config)
+static int sql_affected_rows(rlm_sql_handle_t *handle, rlm_sql_config_t const *config)
 {
        rlm_sql_unixodbc_conn_t *conn = handle->conn;
        long error_handle;
index 1d8e6cf8e59236a5f04d497184cbe6cc28877f88..6edc7be6ba404faf3eaa7ffd42ffa0c8797672a2 100644 (file)
@@ -257,10 +257,10 @@ static xlat_action_t sql_xlat(TALLOC_CTX *ctx, fr_dcursor_t *out, request_t *req
                        goto finish;
                }
 
-               numaffected = (inst->driver->sql_affected_rows)(handle, inst->config);
+               numaffected = (inst->driver->sql_affected_rows)(handle, &inst->config);
                if (numaffected < 1) {
                        RDEBUG2("SQL query affected no rows");
-                       (inst->driver->sql_finish_query)(handle, inst->config);
+                       (inst->driver->sql_finish_query)(handle, &inst->config);
 
                        goto finish;
                }
@@ -269,7 +269,7 @@ static xlat_action_t sql_xlat(TALLOC_CTX *ctx, fr_dcursor_t *out, request_t *req
                fr_value_box_uint32(vb, NULL, (uint32_t)numaffected, false);
                fr_dcursor_append(out, vb);
 
-               (inst->driver->sql_finish_query)(handle, inst->config);
+               (inst->driver->sql_finish_query)(handle, &inst->config);
 
                goto finish;
        } /* else it's a SELECT statement */
@@ -297,7 +297,7 @@ static xlat_action_t sql_xlat(TALLOC_CTX *ctx, fr_dcursor_t *out, request_t *req
                        goto finish_query;
 
                default:
-                       (inst->driver->sql_finish_select_query)(handle, inst->config);
+                       (inst->driver->sql_finish_select_query)(handle, &inst->config);
                        goto query_error;
                }
 
@@ -310,7 +310,7 @@ static xlat_action_t sql_xlat(TALLOC_CTX *ctx, fr_dcursor_t *out, request_t *req
        } while (1);
 
 finish_query:
-       (inst->driver->sql_finish_select_query)(handle, inst->config);
+       (inst->driver->sql_finish_select_query)(handle, &inst->config);
 
 finish:
        fr_pool_connection_release(inst->pool, request, handle);
@@ -455,11 +455,11 @@ static rlm_rcode_t mod_map_proc(void *mod_inst, UNUSED void *proc_inst, request_
         *      Not every driver provides an sql_num_rows function
         */
        if (inst->driver->sql_num_rows) {
-               ret = inst->driver->sql_num_rows(handle, inst->config);
+               ret = inst->driver->sql_num_rows(handle, &inst->config);
                if (ret == 0) {
                        RDEBUG2("Server returned an empty result");
                        rcode = RLM_MODULE_NOOP;
-                       (inst->driver->sql_finish_select_query)(handle, inst->config);
+                       (inst->driver->sql_finish_select_query)(handle, &inst->config);
                        goto finish;
                }
 
@@ -467,7 +467,7 @@ static rlm_rcode_t mod_map_proc(void *mod_inst, UNUSED void *proc_inst, request_
                        RERROR("Failed retrieving row count");
                error:
                        rcode = RLM_MODULE_FAIL;
-                       (inst->driver->sql_finish_select_query)(handle, inst->config);
+                       (inst->driver->sql_finish_select_query)(handle, &inst->config);
                        goto finish;
                }
        }
@@ -475,7 +475,7 @@ static rlm_rcode_t mod_map_proc(void *mod_inst, UNUSED void *proc_inst, request_
        /*
         *      Map proc only registered if driver provides an sql_fields function
         */
-       ret = (inst->driver->sql_fields)(&fields, handle, inst->config);
+       ret = (inst->driver->sql_fields)(&fields, handle, &inst->config);
        if (ret != RLM_SQL_OK) {
                RERROR("Failed retrieving field names: %s", fr_table_str_by_value(sql_rcode_description_table, ret, "<INVALID>"));
                goto error;
@@ -516,7 +516,7 @@ static rlm_rcode_t mod_map_proc(void *mod_inst, UNUSED void *proc_inst, request_
        if (!found_field) {
                RDEBUG2("No fields matching map found in query result");
                rcode = RLM_MODULE_NOOP;
-               (inst->driver->sql_finish_select_query)(handle, inst->config);
+               (inst->driver->sql_finish_select_query)(handle, &inst->config);
                goto finish;
        }
 
@@ -544,7 +544,7 @@ static rlm_rcode_t mod_map_proc(void *mod_inst, UNUSED void *proc_inst, request_
                rcode = RLM_MODULE_NOOP;
        }
 
-       (inst->driver->sql_finish_select_query)(handle, inst->config);
+       (inst->driver->sql_finish_select_query)(handle, &inst->config);
 
 finish:
        talloc_free(fields);
@@ -627,7 +627,7 @@ static size_t sql_escape_func(UNUSED request_t *request, char *out, size_t outle
                 *      mime-encoded equivalents.
                 */
                if ((in[0] < 32) ||
-                   strchr(inst->config->allowed_chars, *in) == NULL) {
+                   strchr(inst->config.allowed_chars, *in) == NULL) {
                        /*
                         *      Only 3 or less bytes available.
                         */
@@ -682,8 +682,8 @@ int sql_set_user(rlm_sql_t const *inst, request_t *request, char const *username
 
        if (username != NULL) {
                sqluser = username;
-       } else if (inst->config->query_user[0] != '\0') {
-               sqluser = inst->config->query_user;
+       } else if (inst->config.query_user[0] != '\0') {
+               sqluser = inst->config.query_user;
        } else {
                return 0;
        }
@@ -723,8 +723,8 @@ static int sql_get_grouplist(rlm_sql_t const *inst, rlm_sql_handle_t **handle, r
 
        entry = *phead = NULL;
 
-       if (!inst->config->groupmemb_query || !*inst->config->groupmemb_query) return 0;
-       if (xlat_aeval(request, &expanded, request, inst->config->groupmemb_query,
+       if (!inst->config.groupmemb_query || !*inst->config.groupmemb_query) return 0;
+       if (xlat_aeval(request, &expanded, request, inst->config.groupmemb_query,
                         inst->sql_escape_func, *handle) < 0) return -1;
 
        ret = rlm_sql_select_query(inst, request, handle, expanded);
@@ -734,7 +734,7 @@ static int sql_get_grouplist(rlm_sql_t const *inst, rlm_sql_handle_t **handle, r
        while (rlm_sql_fetch_row(&row, inst, request, handle) == RLM_SQL_OK) {
                if (!row[0]){
                        RDEBUG2("row[0] returned NULL");
-                       (inst->driver->sql_finish_select_query)(*handle, inst->config);
+                       (inst->driver->sql_finish_select_query)(*handle, &inst->config);
                        talloc_free(entry);
                        return -1;
                }
@@ -752,7 +752,7 @@ static int sql_get_grouplist(rlm_sql_t const *inst, rlm_sql_handle_t **handle, r
                num_groups++;
        }
 
-       (inst->driver->sql_finish_select_query)(*handle, inst->config);
+       (inst->driver->sql_finish_select_query)(*handle, &inst->config);
 
        return num_groups;
 }
@@ -777,7 +777,7 @@ static int sql_groupcmp(void *instance, request_t *request, UNUSED fr_pair_list_
        /*
         *      No group queries, don't do group comparisons.
         */
-       if (!inst->config->groupmemb_query) {
+       if (!inst->config.groupmemb_query) {
                RWARN("Cannot do group comparison when group_membership_query is not set");
                return 1;
        }
@@ -847,7 +847,7 @@ static unlang_action_t rlm_sql_process_groups(rlm_rcode_t *p_result,
        fr_pair_list_init(&check_tmp);
        fr_pair_list_init(&reply_tmp);
 
-       if (!inst->config->groupmemb_query) {
+       if (!inst->config.groupmemb_query) {
                RWARN("Cannot do check groups when group_membership_query is not set");
 
        do_nothing:
@@ -889,13 +889,13 @@ static unlang_action_t rlm_sql_process_groups(rlm_rcode_t *p_result,
                fr_assert(entry != NULL);
                fr_pair_value_strdup(sql_group, entry->name, true);
 
-               if (inst->config->authorize_group_check_query) {
+               if (inst->config.authorize_group_check_query) {
                        fr_pair_t       *vp;
 
                        /*
                         *      Expand the group query
                         */
-                       if (xlat_aeval(request, &expanded, request, inst->config->authorize_group_check_query,
+                       if (xlat_aeval(request, &expanded, request, inst->config.authorize_group_check_query,
                                         inst->sql_escape_func, *handle) < 0) {
                                REDEBUG("Error generating query");
                                rcode = RLM_MODULE_FAIL;
@@ -943,12 +943,12 @@ static unlang_action_t rlm_sql_process_groups(rlm_rcode_t *p_result,
                        fr_pair_list_free(&check_tmp);
                }
 
-               if (inst->config->authorize_group_reply_query) {
+               if (inst->config.authorize_group_reply_query) {
 
                        /*
                         *      Now get the reply pairs since the paircmp matched
                         */
-                       if (xlat_aeval(request, &expanded, request, inst->config->authorize_group_reply_query,
+                       if (xlat_aeval(request, &expanded, request, inst->config.authorize_group_reply_query,
                                         inst->sql_escape_func, *handle) < 0) {
                                REDEBUG("Error generating query");
                                rcode = RLM_MODULE_FAIL;
@@ -1033,10 +1033,6 @@ static int mod_bootstrap(void *instance, CONF_SECTION *conf)
        xlat_t          *xlat;
        xlat_arg_parser_t       *sql_xlat_arg;
 
-       /*
-        *      Hack...
-        */
-       inst->config = &inst->myconfig;
        inst->cs = conf;
 
        inst->name = cf_section_name2(conf);
@@ -1045,9 +1041,9 @@ static int mod_bootstrap(void *instance, CONF_SECTION *conf)
        /*
         *      Accomodate full and partial driver names
         */
-       name = strrchr(inst->config->sql_driver_name, '_');
+       name = strrchr(inst->config.sql_driver_name, '_');
        if (!name) {
-               name = inst->config->sql_driver_name;
+               name = inst->config.sql_driver_name;
        } else {
                name++;
        }
@@ -1074,7 +1070,7 @@ static int mod_bootstrap(void *instance, CONF_SECTION *conf)
        /*
         *      Call the driver's instantiate function (if set)
         */
-       if (inst->driver->instantiate && (inst->driver->instantiate(inst->config,
+       if (inst->driver->instantiate && (inst->driver->instantiate(&inst->config,
                                                                    inst->driver_inst->data,
                                                                    driver_cs)) < 0) {
        error:
@@ -1086,18 +1082,18 @@ static int mod_bootstrap(void *instance, CONF_SECTION *conf)
         *      @fixme Inst should be passed to all driver callbacks
         *      instead of being stored here.
         */
-       inst->config->driver = inst->driver_inst->data;
+       inst->config.driver = inst->driver_inst->data;
 
        /*
         *      Register the group comparison attribute
         */
-       if (inst->config->groupmemb_query) {
+       if (inst->config.groupmemb_query) {
                char buffer[256];
 
                char const *group_attribute;
 
-               if (inst->config->group_attribute) {
-                       group_attribute = inst->config->group_attribute;
+               if (inst->config.group_attribute) {
+                       group_attribute = inst->config.group_attribute;
                } else if (cf_section_name2(conf)) {
                        snprintf(buffer, sizeof(buffer), "%s-SQL-Group", inst->name);
                        group_attribute = buffer;
@@ -1157,8 +1153,8 @@ static int mod_instantiate(void *instance, CONF_SECTION *conf)
        /*
         *      Sanity check for crazy people.
         */
-       if (strncmp(inst->config->sql_driver_name, "rlm_sql_", 8) != 0) {
-               ERROR("\"%s\" is NOT an SQL driver!", inst->config->sql_driver_name);
+       if (strncmp(inst->config.sql_driver_name, "rlm_sql_", 8) != 0) {
+               ERROR("\"%s\" is NOT an SQL driver!", inst->config.sql_driver_name);
                return -1;
        }
 
@@ -1169,18 +1165,18 @@ static int mod_instantiate(void *instance, CONF_SECTION *conf)
         *      Or we need group_membership_query if authorize_group_check_query or
         *      authorize_group_reply_query is set.
         */
-       if (!inst->config->groupmemb_query) {
-               if (inst->config->authorize_group_check_query) {
+       if (!inst->config.groupmemb_query) {
+               if (inst->config.authorize_group_check_query) {
                        WARN("Ignoring authorize_group_reply_query as group_membership_query is not configured");
                }
 
-               if (inst->config->authorize_group_reply_query) {
+               if (inst->config.authorize_group_reply_query) {
                        WARN("Ignoring authorize_group_check_query as group_membership_query is not configured");
                }
 
-               if (!inst->config->read_groups) {
+               if (!inst->config.read_groups) {
                        WARN("Ignoring read_groups as group_membership_query is not configured");
-                       inst->config->read_groups = false;
+                       inst->config.read_groups = false;
                }
        } /* allow the group check / reply queries to be NULL */
 
@@ -1191,11 +1187,11 @@ static int mod_instantiate(void *instance, CONF_SECTION *conf)
         *      configuration.  So if that doesn't exist, we ignore
         *      the whole subsection.
         */
-       inst->config->accounting.cs = cf_section_find(conf, "accounting", NULL);
-       inst->config->accounting.reference_cp = (cf_pair_find(inst->config->accounting.cs, "reference") != NULL);
+       inst->config.accounting.cs = cf_section_find(conf, "accounting", NULL);
+       inst->config.accounting.reference_cp = (cf_pair_find(inst->config.accounting.cs, "reference") != NULL);
 
-       inst->config->postauth.cs = cf_section_find(conf, "post-auth", NULL);
-       inst->config->postauth.reference_cp = (cf_pair_find(inst->config->postauth.cs, "reference") != NULL);
+       inst->config.postauth.cs = cf_section_find(conf, "post-auth", NULL);
+       inst->config.postauth.reference_cp = (cf_pair_find(inst->config.postauth.cs, "reference") != NULL);
 
        /*
         *      Cache the SQL-User-Name fr_dict_attr_t, so we can be slightly
@@ -1228,7 +1224,7 @@ static int mod_instantiate(void *instance, CONF_SECTION *conf)
        /*
         *      Initialise the connection pool for this instance
         */
-       INFO("Attempting to connect to database \"%s\"", inst->config->sql_db);
+       INFO("Attempting to connect to database \"%s\"", inst->config.sql_db);
 
        inst->pool = module_connection_pool_init(inst->cs, inst, sql_mod_conn_create, NULL, NULL, NULL, NULL);
        if (!inst->pool) return -1;
@@ -1260,8 +1256,8 @@ static unlang_action_t CC_HINT(nonnull) mod_authorize(rlm_rcode_t *p_result, mod
        fr_assert(request->packet != NULL);
        fr_assert(request->reply != NULL);
 
-       if (!inst->config->authorize_check_query && !inst->config->authorize_reply_query &&
-           !inst->config->read_groups && !inst->config->read_profiles) {
+       if (!inst->config.authorize_check_query && !inst->config.authorize_reply_query &&
+           !inst->config.read_groups && !inst->config.read_profiles) {
                RWDEBUG("No authorization checks configured, returning noop");
 
                RETURN_MODULE_NOOP;
@@ -1287,10 +1283,10 @@ static unlang_action_t CC_HINT(nonnull) mod_authorize(rlm_rcode_t *p_result, mod
        /*
         *      Query the check table to find any conditions associated with this user/realm/whatever...
         */
-       if (inst->config->authorize_check_query) {
+       if (inst->config.authorize_check_query) {
                fr_pair_t       *vp;
 
-               if (xlat_aeval(request, &expanded, request, inst->config->authorize_check_query,
+               if (xlat_aeval(request, &expanded, request, inst->config.authorize_check_query,
                                 inst->sql_escape_func, handle) < 0) {
                        REDEBUG("Failed generating query");
                        rcode = RLM_MODULE_FAIL;
@@ -1340,12 +1336,12 @@ static unlang_action_t CC_HINT(nonnull) mod_authorize(rlm_rcode_t *p_result, mod
                fr_pair_list_free(&check_tmp);
        }
 
-       if (inst->config->authorize_reply_query) {
+       if (inst->config.authorize_reply_query) {
 
                /*
                 *      Now get the reply pairs since the paircmp matched
                 */
-               if (xlat_aeval(request, &expanded, request, inst->config->authorize_reply_query,
+               if (xlat_aeval(request, &expanded, request, inst->config.authorize_reply_query,
                                 inst->sql_escape_func, handle) < 0) {
                        REDEBUG("Error generating query");
                        rcode = RLM_MODULE_FAIL;
@@ -1379,11 +1375,11 @@ static unlang_action_t CC_HINT(nonnull) mod_authorize(rlm_rcode_t *p_result, mod
         *      Neither group checks or profiles will work without
         *      a group membership query.
         */
-       if (!inst->config->groupmemb_query) goto release;
+       if (!inst->config.groupmemb_query) goto release;
 
 skip_reply:
        if ((do_fall_through == FALL_THROUGH_YES) ||
-           (inst->config->read_groups && (do_fall_through == FALL_THROUGH_DEFAULT))) {
+           (inst->config.read_groups && (do_fall_through == FALL_THROUGH_DEFAULT))) {
                rlm_rcode_t ret;
 
                RDEBUG3("... falling-through to group processing");
@@ -1418,7 +1414,7 @@ skip_reply:
         *      Repeat the above process with the default profile or User-Profile
         */
        if ((do_fall_through == FALL_THROUGH_YES) ||
-           (inst->config->read_profiles && (do_fall_through == FALL_THROUGH_DEFAULT))) {
+           (inst->config.read_profiles && (do_fall_through == FALL_THROUGH_DEFAULT))) {
                rlm_rcode_t     ret;
                char const      *profile;
 
@@ -1430,7 +1426,7 @@ skip_reply:
 
                profile = user_profile ?
                                      user_profile->vp_strvalue :
-                                     inst->config->default_profile;
+                                     inst->config.default_profile;
 
                if (!profile || !*profile) goto release;
 
@@ -1491,7 +1487,7 @@ release:
  *     doesn't update any rows, the next matching config item is used.
  *
  */
-static unlang_action_t acct_redundant(rlm_rcode_t *p_result, rlm_sql_t const *inst, request_t *request, sql_acct_section_t *section)
+static unlang_action_t acct_redundant(rlm_rcode_t *p_result, rlm_sql_t const *inst, request_t *request, sql_acct_section_t const *section)
 {
        rlm_rcode_t             rcode = RLM_MODULE_OK;
 
@@ -1619,8 +1615,8 @@ static unlang_action_t acct_redundant(rlm_rcode_t *p_result, rlm_sql_t const *in
                 *  We need to have updated something for the query to have been
                 *  counted as successful.
                 */
-               numaffected = (inst->driver->sql_affected_rows)(handle, inst->config);
-               (inst->driver->sql_finish_query)(handle, inst->config);
+               numaffected = (inst->driver->sql_affected_rows)(handle, &inst->config);
+               (inst->driver->sql_finish_query)(handle, &inst->config);
                RDEBUG2("%i record(s) updated", numaffected);
 
                if (numaffected > 0) break;     /* A query succeeded, were done! */
@@ -1656,8 +1652,8 @@ static unlang_action_t CC_HINT(nonnull) mod_accounting(rlm_rcode_t *p_result, mo
 {
        rlm_sql_t const *inst = talloc_get_type_abort_const(mctx->instance, rlm_sql_t);
 
-       if (inst->config->accounting.reference_cp) {
-               return acct_redundant(p_result, inst, request, &inst->config->accounting);
+       if (inst->config.accounting.reference_cp) {
+               return acct_redundant(p_result, inst, request, &inst->config.accounting);
        }
 
        RETURN_MODULE_NOOP;
@@ -1670,8 +1666,8 @@ static unlang_action_t CC_HINT(nonnull) mod_post_auth(rlm_rcode_t *p_result, mod
 {
        rlm_sql_t const *inst = talloc_get_type_abort_const(mctx->instance, rlm_sql_t);
 
-       if (inst->config->postauth.reference_cp) {
-               return acct_redundant(p_result, inst, request, &inst->config->postauth);
+       if (inst->config.postauth.reference_cp) {
+               return acct_redundant(p_result, inst, request, &inst->config.postauth);
        }
 
        RETURN_MODULE_NOOP;
index af797856cb065819c02b0e205fe90bf51d56888a..da22e1cbeffcfe77f45cfc54de26747b49ac070c 100644 (file)
@@ -182,7 +182,7 @@ extern size_t sql_rcode_table_len;
  *     >0 - Number of log entries
  */
 typedef size_t (*sql_error_t)(TALLOC_CTX *ctx, sql_log_entry_t out[], size_t outlen, rlm_sql_handle_t *handle,
-                             rlm_sql_config_t *config);
+                             rlm_sql_config_t const *config);
 
 typedef struct {
        DL_MODULE_COMMON;                               //!< Common fields to all loadable modules.
@@ -190,33 +190,32 @@ typedef struct {
        int             flags;
 
        sql_rcode_t (*instantiate)(rlm_sql_config_t const *config, void *instance, CONF_SECTION *cs);
-       sql_rcode_t (*sql_socket_init)(rlm_sql_handle_t *handle, rlm_sql_config_t *config,
+       sql_rcode_t (*sql_socket_init)(rlm_sql_handle_t *handle, rlm_sql_config_t const *config,
                                       fr_time_delta_t timeout);
 
-       sql_rcode_t (*sql_query)(rlm_sql_handle_t *handle, rlm_sql_config_t *config, char const *query);
-       sql_rcode_t (*sql_select_query)(rlm_sql_handle_t *handle, rlm_sql_config_t *config, char const *query);
-       sql_rcode_t (*sql_store_result)(rlm_sql_handle_t *handle, rlm_sql_config_t *config);
+       sql_rcode_t (*sql_query)(rlm_sql_handle_t *handle, rlm_sql_config_t const *config, char const *query);
+       sql_rcode_t (*sql_select_query)(rlm_sql_handle_t *handle, rlm_sql_config_t const *config, char const *query);
+       sql_rcode_t (*sql_store_result)(rlm_sql_handle_t *handle, rlm_sql_config_t const *config);
 
-       int (*sql_num_fields)(rlm_sql_handle_t *handle, rlm_sql_config_t *config);
-       int (*sql_num_rows)(rlm_sql_handle_t *handle, rlm_sql_config_t *config);
-       int (*sql_affected_rows)(rlm_sql_handle_t *handle, rlm_sql_config_t *config);
+       int (*sql_num_fields)(rlm_sql_handle_t *handle, rlm_sql_config_t const *config);
+       int (*sql_num_rows)(rlm_sql_handle_t *handle, rlm_sql_config_t const *config);
+       int (*sql_affected_rows)(rlm_sql_handle_t *handle, rlm_sql_config_t const *config);
 
-       sql_rcode_t (*sql_fetch_row)(rlm_sql_row_t *out, rlm_sql_handle_t *handle, rlm_sql_config_t *config);
-       sql_rcode_t (*sql_fields)(char const **out[], rlm_sql_handle_t *handle, rlm_sql_config_t *config);
-       sql_rcode_t (*sql_free_result)(rlm_sql_handle_t *handle, rlm_sql_config_t *config);
+       sql_rcode_t (*sql_fetch_row)(rlm_sql_row_t *out, rlm_sql_handle_t *handle, rlm_sql_config_t const *config);
+       sql_rcode_t (*sql_fields)(char const **out[], rlm_sql_handle_t *handle, rlm_sql_config_t const *config);
+       sql_rcode_t (*sql_free_result)(rlm_sql_handle_t *handle, rlm_sql_config_t const *config);
 
        sql_error_t     sql_error;                              //!< Get any errors from the previous query.
 
-       sql_rcode_t (*sql_finish_query)(rlm_sql_handle_t *handle, rlm_sql_config_t *config);
-       sql_rcode_t (*sql_finish_select_query)(rlm_sql_handle_t *handle, rlm_sql_config_t *config);
+       sql_rcode_t (*sql_finish_query)(rlm_sql_handle_t *handle, rlm_sql_config_t const *config);
+       sql_rcode_t (*sql_finish_select_query)(rlm_sql_handle_t *handle, rlm_sql_config_t const *config);
 
        xlat_escape_legacy_t    sql_escape_func;
 } rlm_sql_driver_t;
 
 struct sql_inst {
-       rlm_sql_config_t        myconfig; /* HACK */
+       rlm_sql_config_t        config; /* HACK */
        fr_pool_t               *pool;
-       rlm_sql_config_t        *config;
        CONF_SECTION            *cs;
 
        fr_dict_attr_t const    *sql_user;              //!< Cached pointer to SQL-User-Name
@@ -244,7 +243,7 @@ struct rlm_sql_grouplist_s {
 
 void           *sql_mod_conn_create(TALLOC_CTX *ctx, void *instance, fr_time_delta_t timeout);
 int            sql_getvpdata(TALLOC_CTX *ctx, rlm_sql_t const *inst, request_t *request, rlm_sql_handle_t **handle, fr_pair_list_t *out, char const *query);
-void           rlm_sql_query_log(rlm_sql_t const *inst, request_t *request, sql_acct_section_t *section, char const *query) CC_HINT(nonnull (1, 2, 4));
+void           rlm_sql_query_log(rlm_sql_t const *inst, request_t *request, sql_acct_section_t const *section, char const *query) CC_HINT(nonnull (1, 2, 4));
 sql_rcode_t    rlm_sql_select_query(rlm_sql_t const *inst, request_t *request, rlm_sql_handle_t **handle, char const *query) CC_HINT(nonnull (1, 3, 4));
 sql_rcode_t    rlm_sql_query(rlm_sql_t const *inst, request_t *request, rlm_sql_handle_t **handle, char const *query) CC_HINT(nonnull (1, 3, 4));
 int            rlm_sql_fetch_row(rlm_sql_row_t *out, rlm_sql_t const *inst, request_t *request, rlm_sql_handle_t **handle);
index ae8bc1b9e6cbf20864d521ae79a4885d8372ea5e..24617da70209d85a8416220a6afb490f431d466c 100644 (file)
@@ -87,7 +87,7 @@ void *sql_mod_conn_create(TALLOC_CTX *ctx, void *instance, fr_time_delta_t timeo
         */
        handle->inst = inst;
 
-       rcode = (inst->driver->sql_socket_init)(handle, inst->config, timeout);
+       rcode = (inst->driver->sql_socket_init)(handle, &inst->config, timeout);
        if (rcode != 0) {
        fail:
                /*
@@ -97,9 +97,9 @@ void *sql_mod_conn_create(TALLOC_CTX *ctx, void *instance, fr_time_delta_t timeo
                return NULL;
        }
 
-       if (inst->config->connect_query) {
-               if (rlm_sql_select_query(inst, NULL, &handle, inst->config->connect_query) != RLM_SQL_OK) goto fail;
-               (inst->driver->sql_finish_select_query)(handle, inst->config);
+       if (inst->config.connect_query) {
+               if (rlm_sql_select_query(inst, NULL, &handle, inst->config.connect_query) != RLM_SQL_OK) goto fail;
+               (inst->driver->sql_finish_select_query)(handle, &inst->config);
        }
 
        return handle;
@@ -323,7 +323,7 @@ sql_rcode_t rlm_sql_fetch_row(rlm_sql_row_t *out, rlm_sql_t const *inst, request
         *      may require the original connection to free up queries or
         *      result sets associated with that connection.
         */
-       ret = (inst->driver->sql_fetch_row)(out, *handle, inst->config);
+       ret = (inst->driver->sql_fetch_row)(out, *handle, &inst->config);
        switch (ret) {
        case RLM_SQL_OK:
                fr_assert(*out != NULL);
@@ -356,13 +356,13 @@ void rlm_sql_print_error(rlm_sql_t const *inst, request_t *request, rlm_sql_hand
        sql_log_entry_t log[20];
        size_t          num, i;
 
-       num = (inst->driver->sql_error)(handle->log_ctx, log, (NUM_ELEMENTS(log)), handle, inst->config);
+       num = (inst->driver->sql_error)(handle->log_ctx, log, (NUM_ELEMENTS(log)), handle, &inst->config);
        if (num == 0) {
                ROPTIONAL(RERROR, ERROR, "Unknown error");
                return;
        }
 
-       driver = inst->config->sql_driver_name;
+       driver = inst->config.sql_driver_name;
 
        for (i = 0; i < num; i++) {
                if (force_debug) goto debug;
@@ -393,7 +393,7 @@ void rlm_sql_print_error(rlm_sql_t const *inst, request_t *request, rlm_sql_hand
 
 /** Call the driver's sql_query method, reconnecting if necessary.
  *
- * @note Caller must call ``(inst->driver->sql_finish_query)(handle, inst->config);``
+ * @note Caller must call ``(inst->driver->sql_finish_query)(handle, &inst->config);``
  *     after they're done with the result.
  *
  * @param handle to query the database with. *handle should not be NULL, as this indicates
@@ -433,7 +433,7 @@ sql_rcode_t rlm_sql_query(rlm_sql_t const *inst, request_t *request, rlm_sql_han
        for (i = 0; i < (count + 1); i++) {
                ROPTIONAL(RDEBUG2, DEBUG2, "Executing query: %s", query);
 
-               ret = (inst->driver->sql_query)(*handle, inst->config, query);
+               ret = (inst->driver->sql_query)(*handle, &inst->config, query);
                switch (ret) {
                case RLM_SQL_OK:
                        break;
@@ -454,7 +454,7 @@ sql_rcode_t rlm_sql_query(rlm_sql_t const *inst, request_t *request, rlm_sql_han
                 */
                case RLM_SQL_QUERY_INVALID:
                        rlm_sql_print_error(inst, request, *handle, false);
-                       (inst->driver->sql_finish_query)(*handle, inst->config);
+                       (inst->driver->sql_finish_query)(*handle, &inst->config);
                        break;
 
                /*
@@ -469,7 +469,7 @@ sql_rcode_t rlm_sql_query(rlm_sql_t const *inst, request_t *request, rlm_sql_han
                case RLM_SQL_ERROR:
                        if (inst->driver->flags & RLM_SQL_RCODE_FLAGS_ALT_QUERY) {
                                rlm_sql_print_error(inst, request, *handle, false);
-                               (inst->driver->sql_finish_query)(*handle, inst->config);
+                               (inst->driver->sql_finish_query)(*handle, &inst->config);
                                break;
                        }
                        ret = RLM_SQL_ALT_QUERY;
@@ -480,7 +480,7 @@ sql_rcode_t rlm_sql_query(rlm_sql_t const *inst, request_t *request, rlm_sql_han
                 */
                case RLM_SQL_ALT_QUERY:
                        rlm_sql_print_error(inst, request, *handle, true);
-                       (inst->driver->sql_finish_query)(*handle, inst->config);
+                       (inst->driver->sql_finish_query)(*handle, &inst->config);
                        break;
 
                }
@@ -495,7 +495,7 @@ sql_rcode_t rlm_sql_query(rlm_sql_t const *inst, request_t *request, rlm_sql_han
 
 /** Call the driver's sql_select_query method, reconnecting if necessary.
  *
- * @note Caller must call ``(inst->driver->sql_finish_select_query)(handle, inst->config);``
+ * @note Caller must call ``(inst->driver->sql_finish_select_query)(handle, &inst->config);``
  *     after they're done with the result.
  *
  * @param inst #rlm_sql_t instance data.
@@ -534,7 +534,7 @@ sql_rcode_t rlm_sql_select_query(rlm_sql_t const *inst, request_t *request, rlm_
        for (i = 0; i < (count + 1); i++) {
                ROPTIONAL(RDEBUG2, DEBUG2, "Executing select query: %s", query);
 
-               ret = (inst->driver->sql_select_query)(*handle, inst->config, query);
+               ret = (inst->driver->sql_select_query)(*handle, &inst->config, query);
                switch (ret) {
                case RLM_SQL_OK:
                        break;
@@ -554,7 +554,7 @@ sql_rcode_t rlm_sql_select_query(rlm_sql_t const *inst, request_t *request, rlm_
                case RLM_SQL_ERROR:
                default:
                        rlm_sql_print_error(inst, request, *handle, false);
-                       (inst->driver->sql_finish_select_query)(*handle, inst->config);
+                       (inst->driver->sql_finish_select_query)(*handle, &inst->config);
                        break;
                }
 
@@ -591,13 +591,13 @@ int sql_getvpdata(TALLOC_CTX *ctx, rlm_sql_t const *inst, request_t *request, rl
                if (sql_pair_afrom_row(ctx, request, out, row, &relative_vp) != 0) {
                        REDEBUG("Error parsing user data from database result");
 
-                       (inst->driver->sql_finish_select_query)(*handle, inst->config);
+                       (inst->driver->sql_finish_select_query)(*handle, &inst->config);
 
                        return -1;
                }
                rows++;
        }
-       (inst->driver->sql_finish_select_query)(*handle, inst->config);
+       (inst->driver->sql_finish_select_query)(*handle, &inst->config);
 
        return rows;
 }
@@ -605,7 +605,7 @@ int sql_getvpdata(TALLOC_CTX *ctx, rlm_sql_t const *inst, request_t *request, rl
 /*
  *     Log the query to a file.
  */
-void rlm_sql_query_log(rlm_sql_t const *inst, request_t *request, sql_acct_section_t *section, char const *query)
+void rlm_sql_query_log(rlm_sql_t const *inst, request_t *request, sql_acct_section_t const *section, char const *query)
 {
        int fd;
        char const *filename = NULL;
@@ -613,7 +613,7 @@ void rlm_sql_query_log(rlm_sql_t const *inst, request_t *request, sql_acct_secti
        size_t len;
        bool failed = false;    /* Write the log message outside of the critical region */
 
-       filename = inst->config->logfile;
+       filename = inst->config.logfile;
        if (section && section->logfile) filename = section->logfile;
 
        if (!filename || !*filename) {
index a92fb15b3fd71892ea044ef4bd2b81c0e93a00d7..63d9c24a974757f3bf13f581f89690ea55baa029 100644 (file)
@@ -320,9 +320,9 @@ static int sqlippool_command(char const *fmt, rlm_sql_handle_t **handle,
         */
        if (!*handle) return -1;
 
-       affected = (data->sql_inst->driver->sql_affected_rows)(*handle, data->sql_inst->config);
+       affected = (data->sql_inst->driver->sql_affected_rows)(*handle, &data->sql_inst->config);
 
-       (data->sql_inst->driver->sql_finish_query)(*handle, data->sql_inst->config);
+       (data->sql_inst->driver->sql_finish_query)(*handle, &data->sql_inst->config);
 
        return affected;
 }
@@ -392,7 +392,7 @@ static int CC_HINT(nonnull (1, 3, 4, 5)) sqlippool_query1(char *out, int outlen,
        retval = rlen;
 
 finish:
-       (data->sql_inst->driver->sql_finish_select_query)(*handle, data->sql_inst->config);
+       (data->sql_inst->driver->sql_finish_select_query)(*handle, &data->sql_inst->config);
 
        return retval;
 }