From: Nick Porter Date: Fri, 10 May 2024 14:26:23 +0000 (+0100) Subject: Pass fr_sql_query_t to SQL free result functions X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f0f2022fe55cb656f6f12f817c7bd3806ffc5d0e;p=thirdparty%2Ffreeradius-server.git Pass fr_sql_query_t to SQL free result functions --- 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 d6d63ec193f..a623f1bacec 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 @@ -654,11 +654,11 @@ do {\ RETURN_MODULE_OK; } -static sql_rcode_t sql_free_result(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config) +static sql_rcode_t sql_free_result(fr_sql_query_t *query_ctx, UNUSED rlm_sql_config_t const *config) { - rlm_sql_cassandra_conn_t *conn = handle->conn; + rlm_sql_cassandra_conn_t *conn = query_ctx->handle->conn; - if (handle->row) TALLOC_FREE(handle->row); + if (query_ctx->handle->row) TALLOC_FREE(query_ctx->handle->row); if (conn->iterator) { cass_iterator_free(conn->iterator); @@ -700,7 +700,7 @@ static sql_rcode_t sql_finish_query(fr_sql_query_t *query_ctx, rlm_sql_config_t talloc_free_children(conn->log_ctx); memset(&conn->last_error, 0, sizeof(conn->last_error)); - return sql_free_result(query_ctx->handle, config); + return sql_free_result(query_ctx, config); } /* 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 e91c3b2d8eb..dec4e40fcef 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 @@ -221,12 +221,12 @@ static unlang_action_t sql_fetch_row(rlm_rcode_t *p_result, UNUSED int *priority RETURN_MODULE_OK; } -static sql_rcode_t sql_free_result(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config) +static sql_rcode_t sql_free_result(fr_sql_query_t *query_, UNUSED rlm_sql_config_t const *config) { rlm_sql_db2_conn_t *conn; - conn = handle->conn; - TALLOC_FREE(handle->row); + conn = query_ctx->handle->conn; + TALLOC_FREE(query_ctx->handle->row); SQLFreeHandle(SQL_HANDLE_STMT, conn->stmt); return RLM_SQL_OK; 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 04752b83846..a6daa81b522 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,7 +27,6 @@ RCSID("$Id$") /* Forward declarations */ -static sql_rcode_t sql_free_result(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_firebird_conn_t *conn) @@ -246,7 +245,7 @@ static sql_rcode_t sql_finish_query(UNUSED fr_sql_query_t *query_ctx, 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 const *config) +static sql_rcode_t sql_free_result(UNUSED fr_sql_query_t *query_ctx, UNUSED rlm_sql_config_t const *config) { return 0; } 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 c5d0ebb1d92..f006b66d07d 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 @@ -634,7 +634,7 @@ static unlang_action_t sql_fetch_row(rlm_rcode_t *p_result, UNUSED int *priority } } -static sql_rcode_t sql_free_result(UNUSED rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config) +static sql_rcode_t sql_free_result(UNUSED fr_sql_query_t *query_ctx, UNUSED rlm_sql_config_t const *config) { /* 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 336f5495c2c..bf42fc6f5df 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 @@ -127,7 +127,7 @@ static const conf_parser_t driver_config[] = { }; /* Prototypes */ -static sql_rcode_t sql_free_result(rlm_sql_handle_t*, rlm_sql_config_t const *); +static sql_rcode_t sql_free_result(fr_sql_query_t *, rlm_sql_config_t const *); static int _sql_socket_destructor(rlm_sql_mysql_conn_t *conn) { @@ -513,7 +513,7 @@ retry_fetch_row: query_ctx->rcode = sql_check_error(conn->sock, 0); if (query_ctx->rcode != RLM_SQL_OK) RETURN_MODULE_FAIL; - sql_free_result(handle, &query_ctx->inst->config); + sql_free_result(query_ctx, &query_ctx->inst->config); ret = mysql_next_result(conn->sock); if (ret == 0) { @@ -549,15 +549,15 @@ retry_fetch_row: RETURN_MODULE_OK; } -static sql_rcode_t sql_free_result(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config) +static sql_rcode_t sql_free_result(fr_sql_query_t *query_ctx, UNUSED rlm_sql_config_t const *config) { - rlm_sql_mysql_conn_t *conn = talloc_get_type_abort(handle->conn, rlm_sql_mysql_conn_t); + rlm_sql_mysql_conn_t *conn = talloc_get_type_abort(query_ctx->handle->conn, rlm_sql_mysql_conn_t); if (conn->result) { mysql_free_result(conn->result); conn->result = NULL; } - TALLOC_FREE(handle->row); + TALLOC_FREE(query_ctx->handle->row); return RLM_SQL_OK; } @@ -736,7 +736,7 @@ static sql_rcode_t sql_finish_query(fr_sql_query_t *query_ctx, rlm_sql_config_t * already stored result. */ } else { - sql_free_result(query_ctx->handle, config); /* sql_free_result sets conn->result to NULL */ + sql_free_result(query_ctx, config); /* sql_free_result sets conn->result to NULL */ } /* 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 ee920242138..a2bac5fc735 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 @@ -61,7 +61,7 @@ static unlang_action_t sql_fetch_row(rlm_rcode_t *p_result, UNUSED int *priority RETURN_MODULE_OK; } -static sql_rcode_t sql_free_result(UNUSED rlm_sql_handle_t * handle, UNUSED rlm_sql_config_t const *config) +static sql_rcode_t sql_free_result(UNUSED fr_sql_query_t *query_ctx, UNUSED rlm_sql_config_t const *config) { return 0; } 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 0d2a1841845..1be2241dfe2 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 @@ -585,9 +585,9 @@ static unlang_action_t sql_fetch_row(rlm_rcode_t *p_result, UNUSED int *priority RETURN_MODULE_FAIL; } -static sql_rcode_t sql_free_result(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config) +static sql_rcode_t sql_free_result(fr_sql_query_t *query_ctx, UNUSED rlm_sql_config_t const *config) { - rlm_sql_oracle_conn_t *conn = handle->conn; + rlm_sql_oracle_conn_t *conn = query_ctx->handle->conn; /* Cancel the cursor first */ (void) OCIStmtFetch(conn->query, conn->error, 0, OCI_FETCH_NEXT, OCI_DEFAULT); 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 c0b718dc2f3..75e4b468ce4 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 @@ -610,12 +610,12 @@ static unlang_action_t sql_fetch_row(rlm_rcode_t *p_result, UNUSED int *priority RETURN_MODULE_OK; } -static sql_rcode_t sql_free_result(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config) +static sql_rcode_t sql_free_result(fr_sql_query_t *query_ctx, UNUSED rlm_sql_config_t const *config) { - rlm_sql_sqlite_conn_t *conn = handle->conn; + rlm_sql_sqlite_conn_t *conn = query_ctx->handle->conn; if (conn->statement) { - TALLOC_FREE(handle->row); + TALLOC_FREE(query_ctx->handle->row); (void) sqlite3_finalize(conn->statement); conn->statement = NULL; @@ -662,7 +662,7 @@ static size_t sql_error(UNUSED TALLOC_CTX *ctx, sql_log_entry_t out[], NDEBUG_UN static sql_rcode_t sql_finish_query(fr_sql_query_t *query_ctx, rlm_sql_config_t const *config) { - return sql_free_result(query_ctx->handle, config); + return sql_free_result(query_ctx, config); } static int sql_affected_rows(fr_sql_query_t *query_ctx, 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 12d5c876194..a5662056e07 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 @@ -43,7 +43,7 @@ USES_APPLE_DEPRECATED_API /* Forward declarations */ 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 sql_rcode_t sql_free_result(fr_sql_query_t *query_ctx, 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) @@ -242,7 +242,7 @@ static sql_rcode_t sql_finish_select_query(fr_sql_query_t *query_ctx, rlm_sql_co { rlm_sql_unixodbc_conn_t *conn = query_ctx->handle->conn; - sql_free_result(query_ctx->handle, config); + sql_free_result(query_ctx, config); /* * SQL_CLOSE - The cursor (if any) associated with the statement @@ -270,9 +270,9 @@ static sql_rcode_t sql_finish_query(fr_sql_query_t *query_ctx, UNUSED rlm_sql_co return 0; } -static sql_rcode_t sql_free_result(rlm_sql_handle_t *handle, UNUSED rlm_sql_config_t const *config) +static sql_rcode_t sql_free_result(fr_sql_query_t *query_ctx, UNUSED rlm_sql_config_t const *config) { - rlm_sql_unixodbc_conn_t *conn = handle->conn; + rlm_sql_unixodbc_conn_t *conn = query_ctx->handle->conn; TALLOC_FREE(conn->row); diff --git a/src/modules/rlm_sql/rlm_sql.h b/src/modules/rlm_sql/rlm_sql.h index e4be6f09383..9b4d6050c92 100644 --- a/src/modules/rlm_sql/rlm_sql.h +++ b/src/modules/rlm_sql/rlm_sql.h @@ -201,7 +201,7 @@ typedef struct { unlang_function_t sql_fetch_row; 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_rcode_t (*sql_free_result)(fr_sql_query_t *query_ctx, rlm_sql_config_t const *config); sql_error_t sql_error; //!< Get any errors from the previous query.