Fixed timer and event race condition.

When idle timeout occurs at the same time as a request comes in,
the timer handler closes connection while the read event triggers
request processing, and this eventually leads to segmentation fault.
This commit is contained in:
Igor Sysoev
2019-02-28 18:04:11 +03:00
parent afda14d1f2
commit 834e8ca576
5 changed files with 17 additions and 8 deletions

View File

@@ -157,7 +157,8 @@ struct nxt_conn_s {
nxt_sockaddr_t *local;
const char *action;
uint8_t blocked; /* 1 bit */
uint8_t block_read; /* 1 bit */
uint8_t block_write; /* 1 bit */
uint8_t delayed; /* 1 bit */
#define NXT_CONN_SENDFILE_OFF 0