summaryrefslogtreecommitdiff
path: root/accel-pppd/radius
diff options
context:
space:
mode:
Diffstat (limited to 'accel-pppd/radius')
-rw-r--r--accel-pppd/radius/acct.c3
-rw-r--r--accel-pppd/radius/dm_coa.c12
2 files changed, 8 insertions, 7 deletions
diff --git a/accel-pppd/radius/acct.c b/accel-pppd/radius/acct.c
index e4daedbf..b17016d5 100644
--- a/accel-pppd/radius/acct.c
+++ b/accel-pppd/radius/acct.c
@@ -88,7 +88,8 @@ static void rad_acct_recv(struct rad_req_t *req)
stat_accm_add(req->serv->stat_interim_query_1m, dt);
stat_accm_add(req->serv->stat_interim_query_5m, dt);
- triton_timer_del(&req->timeout);
+ if (req->timeout.tpd)
+ triton_timer_del(&req->timeout);
triton_md_unregister_handler(&req->hnd, 1);
diff --git a/accel-pppd/radius/dm_coa.c b/accel-pppd/radius/dm_coa.c
index ea9743d9..f967ec64 100644
--- a/accel-pppd/radius/dm_coa.c
+++ b/accel-pppd/radius/dm_coa.c
@@ -173,13 +173,13 @@ static void coa_request(struct radius_pd_t *rpd)
memcpy(rpd->attr_class, class->val.octets, class->len);
rpd->attr_class_len = class->len;
- }
- if (rpd->acct_req && rpd->acct_req->pack) {
- if (prev_class)
- rad_packet_change_octets(rpd->acct_req->pack, NULL, "Class", rpd->attr_class, rpd->attr_class_len);
- else
- rad_packet_add_octets(rpd->acct_req->pack, NULL, "Class", rpd->attr_class, rpd->attr_class_len);
+ if (rpd->acct_req && rpd->acct_req->pack) {
+ if (prev_class)
+ rad_packet_change_octets(rpd->acct_req->pack, NULL, "Class", rpd->attr_class, rpd->attr_class_len);
+ else
+ rad_packet_add_octets(rpd->acct_req->pack, NULL, "Class", rpd->attr_class, rpd->attr_class_len);
+ }
}
attr = rad_packet_find_attr(rpd->dm_coa_req, NULL, "Session-Timeout");