From d0e64a942b5f26770a130a5818a6445bcba0ae49 Mon Sep 17 00:00:00 2001 From: lemoer Date: Fri, 12 Aug 2016 04:45:33 +0200 Subject: [PATCH] respondd: fix overflow in queue --- net/respondd/src/respondd.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/net/respondd/src/respondd.c b/net/respondd/src/respondd.c index bf0e7ec..79a6bba 100644 --- a/net/respondd/src/respondd.c +++ b/net/respondd/src/respondd.c @@ -196,7 +196,7 @@ bool queue_push_request(struct request_queue *q, char* req, q->push_task->client_addrlen = addrlen; q->push_task->unprocessed = true; - if (q->push_task++ > &q->task_ring[QUEUE_RING_LEN-1]) + if (++q->push_task > &q->task_ring[QUEUE_RING_LEN-1]) q->push_task = &q->task_ring[0]; return true; @@ -212,7 +212,7 @@ struct request_task* queue_pop_request(struct request_queue *q) { current_task->unprocessed = false; // go on to next task - if (q->pop_task++ > &q->task_ring[QUEUE_RING_LEN-1]) + if (++q->pop_task > &q->task_ring[QUEUE_RING_LEN-1]) q->pop_task = &q->task_ring[0]; return current_task;