diff options
Diffstat (limited to 'accel-pppd/radius')
| -rw-r--r-- | accel-pppd/radius/acct.c | 3 | ||||
| -rw-r--r-- | accel-pppd/radius/dm_coa.c | 12 |
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"); |
