From: Nathan Ward Date: Wed, 27 Feb 2019 13:07:37 +0000 (+1300) Subject: Pass handle to radius_axlat in sqlippool, rather than the sql instance X-Git-Tag: release_3_0_19~62^2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=bef3e22bb5cf0668e149eb45b56a1eba6a45e01f;p=thirdparty%2Ffreeradius-server.git Pass handle to radius_axlat in sqlippool, rather than the sql instance Fix #2532 --- diff --git a/src/modules/rlm_sqlippool/rlm_sqlippool.c b/src/modules/rlm_sqlippool/rlm_sqlippool.c index 83bdfe8e9cf..3c575d8d374 100644 --- a/src/modules/rlm_sqlippool/rlm_sqlippool.c +++ b/src/modules/rlm_sqlippool/rlm_sqlippool.c @@ -317,7 +317,7 @@ static int sqlippool_command(char const *fmt, rlm_sql_handle_t **handle, */ sqlippool_expand(query, sizeof(query), fmt, data, param, param_len); - if (radius_axlat(&expanded, request, query, data->sql_inst->sql_escape_func, data->sql_inst) < 0) return -1; + if (radius_axlat(&expanded, request, query, data->sql_inst->sql_escape_func, *handle) < 0) return -1; ret = data->sql_inst->sql_query(data->sql_inst, request, handle, expanded); if (ret < 0){ @@ -365,7 +365,7 @@ static int CC_HINT(nonnull (1, 3, 4, 5)) sqlippool_query1(char *out, int outlen, /* * Do an xlat on the provided string */ - if (radius_axlat(&expanded, request, query, data->sql_inst->sql_escape_func, data->sql_inst) < 0) { + if (radius_axlat(&expanded, request, query, data->sql_inst->sql_escape_func, handle) < 0) { return 0; } retval = data->sql_inst->sql_select_query(data->sql_inst, request, &handle, expanded); @@ -492,7 +492,7 @@ static int mod_instantiate(CONF_SECTION *conf, void *instance) FR_INTEGER_BOUND_CHECK("allocate_clear_timeout", inst->allocate_clear_timeout, >, 1); FR_INTEGER_BOUND_CHECK("allocate_clear_timeout", inst->allocate_clear_timeout, <=, 2*86400); } - + inst->sql_inst = (rlm_sql_t *) sql_inst->insthandle; return 0; }