From: Grigorii Demidov Date: Fri, 7 Dec 2018 09:02:54 +0000 (+0100) Subject: daemon/worker: additional check for expired tasks X-Git-Tag: v3.2.0~15^2~3 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=df51fb488ca56561b9552ceb4865942dcfedc65f;p=thirdparty%2Fknot-resolver.git daemon/worker: additional check for expired tasks --- diff --git a/daemon/worker.c b/daemon/worker.c index caf4b1dcd..f02dd1e47 100644 --- a/daemon/worker.c +++ b/daemon/worker.c @@ -1375,6 +1375,10 @@ static int qr_task_step(struct qr_task *task, /* Close pending I/O requests */ subreq_finalize(task, packet_source, packet); + if ((kr_now() - worker_task_creation_time(task)) >= KR_RESOLVE_TIME_LIMIT) { + return qr_task_finalize(task, KR_STATE_FAIL); + } + /* Consume input and produce next query */ struct request_ctx *ctx = task->ctx; assert(ctx);