1 #ifndef NETDATA_WEB_SERVER_H
2 #define NETDATA_WEB_SERVER_H 1
4 #define WEB_PATH_FILE "file"
5 #define WEB_PATH_DATA "data"
6 #define WEB_PATH_DATASOURCE "datasource"
7 #define WEB_PATH_GRAPH "graph"
9 #define LISTEN_PORT 19999
10 #define LISTEN_BACKLOG 100
12 #ifndef MAX_LISTEN_FDS
13 #define MAX_LISTEN_FDS 100
16 typedef enum web_server_mode {
17 WEB_SERVER_MODE_SINGLE_THREADED,
18 WEB_SERVER_MODE_MULTI_THREADED,
22 extern WEB_SERVER_MODE web_server_mode;
24 extern WEB_SERVER_MODE web_server_mode_id(const char *mode);
25 extern const char *web_server_mode_name(WEB_SERVER_MODE id);
28 extern void *socket_listen_main_multi_threaded(void *ptr);
29 extern void *socket_listen_main_single_threaded(void *ptr);
30 extern int create_listen_sockets(void);
31 extern int is_listen_socket(int fd);
34 extern int accept4(int sock, struct sockaddr *addr, socklen_t *addrlen, int flags);
37 #define SOCK_NONBLOCK 00004000
38 #endif /* #ifndef SOCK_NONBLOCK */
41 #define SOCK_CLOEXEC 02000000
42 #endif /* #ifndef SOCK_CLOEXEC */
44 #endif /* #ifndef HAVE_ACCEPT4 */
46 #endif /* NETDATA_WEB_SERVER_H */