From: Arran Cudbard-Bell Date: Sun, 1 Oct 2017 12:09:04 +0000 (+0800) Subject: Add missing get_type_abort in conn_free X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c3af83cf3f09ae4589271a1aada7b1ee11daa262;p=thirdparty%2Ffreeradius-server.git Add missing get_type_abort in conn_free --- diff --git a/src/modules/rlm_radius/rlm_radius_udp.c b/src/modules/rlm_radius/rlm_radius_udp.c index fde69495989..34470636ca0 100644 --- a/src/modules/rlm_radius/rlm_radius_udp.c +++ b/src/modules/rlm_radius/rlm_radius_udp.c @@ -1764,7 +1764,7 @@ static int _conn_free(rlm_radius_udp_connection_t *c) { fr_dlist_t *entry; rlm_radius_udp_request_t *u; - rlm_radius_udp_thread_t *t = c->thread; + rlm_radius_udp_thread_t *t = talloc_get_type_abort(c->thread, rlm_radius_udp_thread_t); /* * We're no longer using this connection. @@ -1778,6 +1778,10 @@ static int _conn_free(rlm_radius_udp_connection_t *c) if (cas_decr(c->inst->parent->num_connections, num_connections)) break; } + /* + * Explicit free not technically required, + * but may prevent future ordering issues. + */ talloc_free(c->conn); c->conn = NULL;