summaryrefslogtreecommitdiff
path: root/accel-pppd
diff options
context:
space:
mode:
authorDenys Fedoryshchenko <denys.f@collabora.com>2026-03-01 13:33:27 +0200
committerGitHub <noreply@github.com>2026-03-01 13:33:27 +0200
commitb8f6eafe61ffcf6645a51cc2bc13c93cab4955fe (patch)
tree81b5e37e01c3c1a33959c87e0d5decb15aef8609 /accel-pppd
parent8ea3847c1fefd8f093d69561a19684f428cba1f6 (diff)
parentbd936f6074b6b6c515cfd40a1c0215b3dfa7889d (diff)
downloadaccel-ppp-b8f6eafe61ffcf6645a51cc2bc13c93cab4955fe.tar.gz
accel-ppp-b8f6eafe61ffcf6645a51cc2bc13c93cab4955fe.zip
Merge pull request #301 from nuclearcat/bugfix-radius-stop
radius: fix stop accounting timeout flow and request cleanup
Diffstat (limited to 'accel-pppd')
-rw-r--r--accel-pppd/radius/acct.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/accel-pppd/radius/acct.c b/accel-pppd/radius/acct.c
index 9d375d22..e7145a10 100644
--- a/accel-pppd/radius/acct.c
+++ b/accel-pppd/radius/acct.c
@@ -424,12 +424,16 @@ static void rad_acct_stop_timeout(struct triton_timer_t *t)
}
if (req->try == conf_max_try) {
+ if (req->rpd)
+ req->rpd->acct_req = NULL;
rad_req_free(req);
return;
}
if (rad_req_send(req)) {
if (ap_shutdown) {
+ if (req->rpd)
+ req->rpd->acct_req = NULL;
rad_req_free(req);
return;
}
@@ -532,7 +536,7 @@ int rad_acct_stop(struct radius_pd_t *rpd)
req_set_RA(req, req->serv->secret);
req->recv = rad_acct_stop_recv;
- req->timeout.expire = rad_acct_start_timeout;
+ req->timeout.expire = rad_acct_stop_timeout;
req->timeout.expire_tv.tv_sec = conf_timeout;
req->sent = rad_acct_stop_sent;
req->log = conf_verbose ? log_ppp_info1 : NULL;