diff options
-rw-r--r-- | accel-pppd/auth/auth_pap.c | 2 | ||||
-rw-r--r-- | accel-pppd/radius/radius_p.h | 2 | ||||
-rw-r--r-- | accel-pppd/radius/req.c | 3 | ||||
-rw-r--r-- | accel-pppd/radius/serv.c | 8 | ||||
-rw-r--r-- | accel-pppd/shaper/leaf_qdisc.c | 3 | ||||
-rw-r--r-- | accel-pppd/triton/mempool.c | 2 |
6 files changed, 13 insertions, 7 deletions
diff --git a/accel-pppd/auth/auth_pap.c b/accel-pppd/auth/auth_pap.c index 9aab377..909b115 100644 --- a/accel-pppd/auth/auth_pap.c +++ b/accel-pppd/auth/auth_pap.c @@ -312,7 +312,7 @@ static void pap_recv(struct ppp_handler_t *h) struct pap_auth_data *d = container_of(h, typeof(*d), h); struct pap_hdr *hdr = (struct pap_hdr *)d->ppp->buf; - if (d->ppp->buf_size < sizeof(*hdr) || ntohs(hdr->len) < HDR_LEN || ntohs(hdr->len) < d->ppp->buf_size - 2) { + if (d->ppp->buf_size < sizeof(*hdr) || ntohs(hdr->len) < HDR_LEN || ntohs(hdr->len) > d->ppp->buf_size - 2) { log_ppp_warn("PAP: short packet received\n"); return; } diff --git a/accel-pppd/radius/radius_p.h b/accel-pppd/radius/radius_p.h index cfb92cd..22124a2 100644 --- a/accel-pppd/radius/radius_p.h +++ b/accel-pppd/radius/radius_p.h @@ -73,7 +73,7 @@ struct rad_req_t { in_addr_t server_addr; - int server_port:16; + int server_port; int type:8; int try:6; int active:1; diff --git a/accel-pppd/radius/req.c b/accel-pppd/radius/req.c index 172fb1c..94754a2 100644 --- a/accel-pppd/radius/req.c +++ b/accel-pppd/radius/req.c @@ -398,7 +398,8 @@ int rad_req_read(struct triton_md_handler_t *h) req->reply = pack; - rad_server_req_exit(req); + if (req->active) + rad_server_req_exit(req); if (req->log) { req->log("recv "); diff --git a/accel-pppd/radius/serv.c b/accel-pppd/radius/serv.c index 6c01a88..2f69c66 100644 --- a/accel-pppd/radius/serv.c +++ b/accel-pppd/radius/serv.c @@ -134,7 +134,8 @@ int rad_server_req_cancel(struct rad_req_t *req) } pthread_mutex_unlock(&req->serv->lock); - rad_server_req_exit(req); + if (req->active) + rad_server_req_exit(req); if (req->timeout.tpd) triton_timer_del(&req->timeout); @@ -186,7 +187,10 @@ int rad_server_req_enter(struct rad_req_t *req) pthread_mutex_unlock(&req->serv->lock); req->active = 1; - + + if (req->send) + return req->send(req, 0); + return 0; } diff --git a/accel-pppd/shaper/leaf_qdisc.c b/accel-pppd/shaper/leaf_qdisc.c index 6c90968..cdc9eed 100644 --- a/accel-pppd/shaper/leaf_qdisc.c +++ b/accel-pppd/shaper/leaf_qdisc.c @@ -56,6 +56,7 @@ static int parse_size(const char *str, int *r) return 0; } +#ifdef TCA_FQ_CODEL_MAX static int parse_time(const char *str, int *r) { double t; @@ -82,7 +83,7 @@ static int parse_time(const char *str, int *r) return 0; } - +#endif static int parse_int(const char *str, int *r) { diff --git a/accel-pppd/triton/mempool.c b/accel-pppd/triton/mempool.c index 7e5a4ce..7c8c56c 100644 --- a/accel-pppd/triton/mempool.c +++ b/accel-pppd/triton/mempool.c @@ -15,7 +15,7 @@ #define DELAY 5 #endif -#define MEMPOOL_DISABLE +//#define MEMPOOL_DISABLE #define MAGIC1 0x2233445566778899llu #define PAGE_ORDER 5 |