From: Alan T. DeKok Date: Tue, 9 Nov 2021 17:52:49 +0000 (-0500) Subject: remove unnecessary pointer indirection, and make config 'const' X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=786d1e507985703efeb3f613d69c7dd60585f23a;p=thirdparty%2Ffreeradius-server.git remove unnecessary pointer indirection, and make config 'const' --- diff --git a/src/modules/rlm_sql/drivers/rlm_sql_cassandra/rlm_sql_cassandra.c b/src/modules/rlm_sql/drivers/rlm_sql_cassandra/rlm_sql_cassandra.c index 15a3185657..97b4ead1d5 100644 --- a/src/modules/rlm_sql/drivers/rlm_sql_cassandra/rlm_sql_cassandra.c +++ b/src/modules/rlm_sql/drivers/rlm_sql_cassandra/rlm_sql_cassandra.c @@ -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; } diff --git a/src/modules/rlm_sql/drivers/rlm_sql_db2/rlm_sql_db2.c b/src/modules/rlm_sql/drivers/rlm_sql_db2/rlm_sql_db2.c index 7da52fb050..8243307c5d 100644 --- a/src/modules/rlm_sql/drivers/rlm_sql_db2/rlm_sql_db2.c +++ b/src/modules/rlm_sql/drivers/rlm_sql_db2/rlm_sql_db2.c @@ -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; diff --git a/src/modules/rlm_sql/drivers/rlm_sql_firebird/rlm_sql_firebird.c b/src/modules/rlm_sql/drivers/rlm_sql_firebird/rlm_sql_firebird.c index 531ddbd2b2..669abe22ab 100644 --- a/src/modules/rlm_sql/drivers/rlm_sql_firebird/rlm_sql_firebird.c +++ b/src/modules/rlm_sql/drivers/rlm_sql_firebird/rlm_sql_firebird.c @@ -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); } diff --git a/src/modules/rlm_sql/drivers/rlm_sql_freetds/rlm_sql_freetds.c b/src/modules/rlm_sql/drivers/rlm_sql_freetds/rlm_sql_freetds.c index 33cf105bd4..905745ac53 100644 --- a/src/modules/rlm_sql/drivers/rlm_sql_freetds/rlm_sql_freetds.c +++ b/src/modules/rlm_sql/drivers/rlm_sql_freetds/rlm_sql_freetds.c @@ -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); diff --git a/src/modules/rlm_sql/drivers/rlm_sql_mysql/rlm_sql_mysql.c b/src/modules/rlm_sql/drivers/rlm_sql_mysql/rlm_sql_mysql.c index 85ab15b45e..2a794554fb 100644 --- a/src/modules/rlm_sql/drivers/rlm_sql_mysql/rlm_sql_mysql.c +++ b/src/modules/rlm_sql/drivers/rlm_sql_mysql/rlm_sql_mysql.c @@ -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; diff --git a/src/modules/rlm_sql/drivers/rlm_sql_null/rlm_sql_null.c b/src/modules/rlm_sql/drivers/rlm_sql_null/rlm_sql_null.c index 58df05cb59..1afa8a69af 100644 --- a/src/modules/rlm_sql/drivers/rlm_sql_null/rlm_sql_null.c +++ b/src/modules/rlm_sql/drivers/rlm_sql_null/rlm_sql_null.c @@ -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; } diff --git a/src/modules/rlm_sql/drivers/rlm_sql_oracle/rlm_sql_oracle.c b/src/modules/rlm_sql/drivers/rlm_sql_oracle/rlm_sql_oracle.c index 3256241167..0db84b58a4 100644 --- a/src/modules/rlm_sql/drivers/rlm_sql_oracle/rlm_sql_oracle.c +++ b/src/modules/rlm_sql/drivers/rlm_sql_oracle/rlm_sql_oracle.c @@ -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); } diff --git a/src/modules/rlm_sql/drivers/rlm_sql_postgresql/rlm_sql_postgresql.c b/src/modules/rlm_sql/drivers/rlm_sql_postgresql/rlm_sql_postgresql.c index f11843de87..f48d6161a1 100644 --- a/src/modules/rlm_sql/drivers/rlm_sql_postgresql/rlm_sql_postgresql.c +++ b/src/modules/rlm_sql/drivers/rlm_sql_postgresql/rlm_sql_postgresql.c @@ -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; diff --git a/src/modules/rlm_sql/drivers/rlm_sql_sqlite/rlm_sql_sqlite.c b/src/modules/rlm_sql/drivers/rlm_sql_sqlite/rlm_sql_sqlite.c index 23f56f1612..c5872909db 100644 --- a/src/modules/rlm_sql/drivers/rlm_sql_sqlite/rlm_sql_sqlite.c +++ b/src/modules/rlm_sql/drivers/rlm_sql_sqlite/rlm_sql_sqlite.c @@ -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; diff --git a/src/modules/rlm_sql/drivers/rlm_sql_unixodbc/rlm_sql_unixodbc.c b/src/modules/rlm_sql/drivers/rlm_sql_unixodbc/rlm_sql_unixodbc.c index 3482c854b6..ab5d2e276e 100644 --- a/src/modules/rlm_sql/drivers/rlm_sql_unixodbc/rlm_sql_unixodbc.c +++ b/src/modules/rlm_sql/drivers/rlm_sql_unixodbc/rlm_sql_unixodbc.c @@ -42,10 +42,10 @@ USES_APPLE_DEPRECATED_API #include /* 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; diff --git a/src/modules/rlm_sql/rlm_sql.c b/src/modules/rlm_sql/rlm_sql.c index 1d8e6cf8e5..6edc7be6ba 100644 --- a/src/modules/rlm_sql/rlm_sql.c +++ b/src/modules/rlm_sql/rlm_sql.c @@ -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, "")); 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; diff --git a/src/modules/rlm_sql/rlm_sql.h b/src/modules/rlm_sql/rlm_sql.h index af797856cb..da22e1cbef 100644 --- a/src/modules/rlm_sql/rlm_sql.h +++ b/src/modules/rlm_sql/rlm_sql.h @@ -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); diff --git a/src/modules/rlm_sql/sql.c b/src/modules/rlm_sql/sql.c index ae8bc1b9e6..24617da702 100644 --- a/src/modules/rlm_sql/sql.c +++ b/src/modules/rlm_sql/sql.c @@ -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) { diff --git a/src/modules/rlm_sqlippool/rlm_sqlippool.c b/src/modules/rlm_sqlippool/rlm_sqlippool.c index a92fb15b3f..63d9c24a97 100644 --- a/src/modules/rlm_sqlippool/rlm_sqlippool.c +++ b/src/modules/rlm_sqlippool/rlm_sqlippool.c @@ -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; }