summaryrefslogtreecommitdiff
path: root/accel-pppd/radius
diff options
context:
space:
mode:
authorKozlov Dmitry <xeb@mail.ru>2012-07-30 10:42:15 +0400
committerKozlov Dmitry <xeb@mail.ru>2012-07-30 10:42:15 +0400
commitca6455606c14fec4fd825325a1ae0cc8a9c8fe90 (patch)
tree232c405192ae040a19d619a375bd6cbf44a6b75f /accel-pppd/radius
parent918036a3c42cb6dd5b796c52b6aaf278c466c928 (diff)
downloadaccel-ppp-ca6455606c14fec4fd825325a1ae0cc8a9c8fe90.tar.gz
accel-ppp-ca6455606c14fec4fd825325a1ae0cc8a9c8fe90.zip
add per-CTRL ip-pool option to specify default ip pool name
Diffstat (limited to 'accel-pppd/radius')
-rw-r--r--accel-pppd/radius/serv.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/accel-pppd/radius/serv.c b/accel-pppd/radius/serv.c
index 30219f75..b7ee0bee 100644
--- a/accel-pppd/radius/serv.c
+++ b/accel-pppd/radius/serv.c
@@ -76,6 +76,7 @@ void rad_server_put(struct rad_server_t *s, int type)
int rad_server_req_enter(struct rad_req_t *req)
{
struct timespec ts;
+ //struct rad_req_t *r = NULL;
if (req->serv->need_free)
return -1;
@@ -103,16 +104,26 @@ int rad_server_req_enter(struct rad_req_t *req)
triton_context_schedule();
pthread_mutex_lock(&req->serv->lock);
+ clock_gettime(CLOCK_MONOTONIC, &ts);
+
req->serv->queue_cnt--;
if (ts.tv_sec < req->serv->fail_time || req->serv->need_free) {
+ /*if (!list_empty(&req->serv->req_queue)) {
+ r = list_entry(req->serv->req_queue.next, typeof(*r), entry);
+ list_del(&r->entry);
+ }*/
pthread_mutex_unlock(&req->serv->lock);
+
+ /*if (r)
+ triton_context_wakeup(r->rpd->ppp->ctrl->ctx);*/
+
return -1;
}
}
req->serv->req_cnt++;
pthread_mutex_unlock(&req->serv->lock);
-
+
return 0;
}