48 lines
1.3 KiB
C
48 lines
1.3 KiB
C
|
|
/*
|
|
* Copyright (C) Igor Sysoev
|
|
* Copyright (C) NGINX, Inc.
|
|
*/
|
|
|
|
#ifndef _NXT_MAIN_PROCESS_H_INCLUDED_
|
|
#define _NXT_MAIN_PROCESS_H_INCLUDED_
|
|
|
|
|
|
typedef enum {
|
|
NXT_SOCKET_ERROR_SYSTEM = 0,
|
|
NXT_SOCKET_ERROR_NOINET6,
|
|
NXT_SOCKET_ERROR_PORT,
|
|
NXT_SOCKET_ERROR_INUSE,
|
|
NXT_SOCKET_ERROR_NOADDR,
|
|
NXT_SOCKET_ERROR_ACCESS,
|
|
NXT_SOCKET_ERROR_PATH,
|
|
} nxt_socket_error_t;
|
|
|
|
|
|
typedef struct {
|
|
nxt_str_t conf;
|
|
#if (NXT_TLS)
|
|
nxt_array_t *certs;
|
|
#endif
|
|
} nxt_controller_init_t;
|
|
|
|
|
|
nxt_int_t nxt_main_process_start(nxt_thread_t *thr, nxt_task_t *task,
|
|
nxt_runtime_t *runtime);
|
|
void nxt_main_stop_all_processes(nxt_task_t *task, nxt_runtime_t *runtime);
|
|
|
|
nxt_int_t nxt_controller_start(nxt_task_t *task, void *data);
|
|
nxt_int_t nxt_router_start(nxt_task_t *task, void *data);
|
|
nxt_int_t nxt_discovery_start(nxt_task_t *task, void *data);
|
|
nxt_int_t nxt_app_start(nxt_task_t *task, void *data);
|
|
|
|
extern nxt_port_handlers_t nxt_controller_process_port_handlers;
|
|
extern nxt_port_handlers_t nxt_discovery_process_port_handlers;
|
|
extern nxt_port_handlers_t nxt_app_process_port_handlers;
|
|
extern nxt_port_handlers_t nxt_router_process_port_handlers;
|
|
extern const nxt_sig_event_t nxt_main_process_signals[];
|
|
extern const nxt_sig_event_t nxt_worker_process_signals[];
|
|
|
|
|
|
#endif /* _NXT_MAIN_PROCESS_H_INCLUDED_ */
|