diff options
author | Max Romanov <max.romanov@nginx.com> | 2017-06-23 19:20:08 +0300 |
---|---|---|
committer | Max Romanov <max.romanov@nginx.com> | 2017-06-23 19:20:08 +0300 |
commit | b8f126dcdfdf04bb01b70f9590fc64b3e155e119 (patch) | |
tree | 49fc84fb72e1483103c639e5c394820d8127223f /src/nxt_conn.h | |
parent | 4a1b59c27a8e85fc3b03c420fbc1642ce52e96cf (diff) | |
download | unit-b8f126dcdfdf04bb01b70f9590fc64b3e155e119.tar.gz unit-b8f126dcdfdf04bb01b70f9590fc64b3e155e119.tar.bz2 |
Added basic HTTP request processing in router.
- request to connection mapping in engine;
- requests queue in connection;
- engine port creation;
- connected ports hash for each process;
- engine port data messages processing (app responses);
Diffstat (limited to '')
-rw-r--r-- | src/nxt_conn.h | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/src/nxt_conn.h b/src/nxt_conn.h index 479450bb..6c4de090 100644 --- a/src/nxt_conn.h +++ b/src/nxt_conn.h @@ -141,6 +141,8 @@ struct nxt_conn_s { nxt_conn_io_t *io; + nxt_queue_t requests; /* of nxt_req_conn_link_t */ + #if (NXT_SSLTLS || NXT_THREADS) /* SunC does not support "zero-sized struct/union". */ @@ -180,6 +182,16 @@ struct nxt_conn_s { }; +typedef uint32_t nxt_req_id_t; + +typedef struct { + nxt_req_id_t req_id; + nxt_conn_t *conn; + + nxt_queue_link_t link; +} nxt_req_conn_link_t; + + #define nxt_conn_timer_init(ev, c, wq) \ do { \ (ev)->work_queue = (wq); \ @@ -347,4 +359,10 @@ NXT_EXPORT void nxt_conn_proxy(nxt_task_t *task, nxt_conn_proxy_t *p); #define nxt_event_conn_close nxt_conn_close +NXT_EXPORT nxt_req_conn_link_t *nxt_conn_request_add(nxt_conn_t *c, + nxt_req_id_t req_id); +NXT_EXPORT void nxt_conn_request_remove(nxt_conn_t *c, + nxt_req_conn_link_t *rc); + + #endif /* _NXT_CONN_H_INCLUDED_ */ |