summaryrefslogtreecommitdiffhomepage
path: root/src/nxt_router.h
diff options
context:
space:
mode:
authorIgor Sysoev <igor@sysoev.ru>2017-07-07 21:09:45 +0300
committerIgor Sysoev <igor@sysoev.ru>2017-07-07 21:09:45 +0300
commitb54bcef53de43cc07c3a7ce60377d6221d49610d (patch)
tree698703fa699857230feacfb5c67bfe8ed1ca3830 /src/nxt_router.h
parentfd0a4ff064a1d359078a06904db0402f811d739c (diff)
downloadunit-b54bcef53de43cc07c3a7ce60377d6221d49610d.tar.gz
unit-b54bcef53de43cc07c3a7ce60377d6221d49610d.tar.bz2
Router: processing application configuration.
Diffstat (limited to '')
-rw-r--r--src/nxt_router.h24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/nxt_router.h b/src/nxt_router.h
index a7fb54a9..ff5a7c41 100644
--- a/src/nxt_router.h
+++ b/src/nxt_router.h
@@ -11,6 +11,7 @@
#include <nxt_main.h>
#include <nxt_runtime.h>
#include <nxt_master_process.h>
+#include <nxt_application.h>
typedef struct {
@@ -18,6 +19,7 @@ typedef struct {
nxt_queue_t engines;
nxt_queue_t sockets; /* of nxt_socket_conf_t */
+ nxt_queue_t apps; /* of nxt_app_t */
} nxt_router_t;
@@ -45,6 +47,9 @@ typedef struct {
nxt_queue_t keeping; /* of nxt_socket_conf_t */
nxt_queue_t deleting; /* of nxt_socket_conf_t */
+ nxt_queue_t apps; /* of nxt_app_t */
+ nxt_queue_t previous; /* of nxt_app_t */
+
uint32_t new_threads;
nxt_array_t *engines;
@@ -54,6 +59,23 @@ typedef struct {
typedef struct {
+ nxt_thread_mutex_t mutex;
+ nxt_queue_t ports;
+ nxt_str_t name;
+
+ uint32_t workers;
+ uint32_t max_workers;
+
+ nxt_app_type_t type:8;
+ uint8_t live; /* 1 bit */
+
+ nxt_queue_link_t link;
+
+ nxt_str_t conf;
+} nxt_app_t;
+
+
+typedef struct {
uint32_t count;
nxt_socket_t fd;
} nxt_router_socket_t;
@@ -66,6 +88,8 @@ typedef struct {
nxt_router_conf_t *router_conf;
nxt_sockaddr_t *sockaddr;
+ nxt_app_t *application;
+
nxt_listen_socket_t listen;
size_t header_buffer_size;