From: Nick Porter Date: Fri, 11 Oct 2024 13:52:19 +0000 (+0100) Subject: Only set rcode if it's currently OK X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d23a063566fbd1e2961e8101d7991196ecabe7e7;p=thirdparty%2Ffreeradius-server.git Only set rcode if it's currently OK --- 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 347e5148ee6..b6b2e4b1d82 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 @@ -652,7 +652,7 @@ static void sql_request_fail(UNUSED request_t *request, void *preq, UNUSED void fr_sql_query_t *query_ctx = talloc_get_type_abort(preq, fr_sql_query_t); query_ctx->treq = NULL; - query_ctx->rcode = RLM_SQL_ERROR; + if (query_ctx->rcode == RLM_SQL_OK) query_ctx->rcode = RLM_SQL_ERROR; } static void sql_request_complete(UNUSED request_t *request, void *preq, UNUSED void *rctx, UNUSED void *uctx) diff --git a/src/modules/rlm_sql/rlm_sql_trunk.h b/src/modules/rlm_sql/rlm_sql_trunk.h index 92200096d06..bcd9c641a4a 100644 --- a/src/modules/rlm_sql/rlm_sql_trunk.h +++ b/src/modules/rlm_sql/rlm_sql_trunk.h @@ -67,6 +67,6 @@ static void sql_request_fail(request_t *request, void *preq, UNUSED void *rctx, { \ fr_sql_query_t *query_ctx = talloc_get_type_abort(preq, fr_sql_query_t); \ query_ctx->treq = NULL; \ - query_ctx->rcode = RLM_SQL_ERROR; \ + if (query_ctx->rcode == RLM_SQL_OK) query_ctx->rcode = RLM_SQL_ERROR; \ if (request) unlang_interpret_mark_runnable(request); \ }