From: Arran Cudbard-Bell Date: Wed, 4 Mar 2020 01:24:40 +0000 (-0600) Subject: rlm_radius_udp: check_for_zombie does not nuke u->rr X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9efa5e65cad50ea85431ed0d68191fea080b51df;p=thirdparty%2Ffreeradius-server.git rlm_radius_udp: check_for_zombie does not nuke u->rr --- diff --git a/src/modules/rlm_radius/rlm_radius_udp.c b/src/modules/rlm_radius/rlm_radius_udp.c index 0dcf242a11e..0de2a6de352 100644 --- a/src/modules/rlm_radius/rlm_radius_udp.c +++ b/src/modules/rlm_radius/rlm_radius_udp.c @@ -1286,13 +1286,11 @@ static void request_timeout(fr_event_list_t *el, fr_time_t now, void *uctx) udp_result_t *r = talloc_get_type_abort(treq->rctx, udp_result_t); REQUEST *request = treq->request; + rad_assert(u->rr); rad_assert(treq->tconn); h = talloc_get_type_abort(treq->tconn->conn->h, udp_handle_t); - /* - * This call may nuke u->rr - */ if (!u->status_check) { check_for_zombie(el, treq->tconn, now); /* @@ -1303,11 +1301,6 @@ static void request_timeout(fr_event_list_t *el, fr_time_t now, void *uctx) u->num_replies = 0; } - /* - * Rely on someone else to do the retransmissions. - */ - if (!u->rr) return; - switch (fr_retry_next(&u->retry, now)) { /* * Queue the request for retransmission.