#ifndef __GLOBALS_H__
#define __GLOBALS_H__ 1

#ifdef DEFINE_GLOBALS
# define GLOBAL0(A) A
# define GLOBAL(A, B) A = B
#else
# define GLOBAL0(A) extern A
# define GLOBAL(A, B) extern A
#endif

GLOBAL0(struct timeval timeout_header_client_read);
GLOBAL0(struct timeval timeout_header_client_write);
GLOBAL0(struct timeval timeout_header_server_read);
GLOBAL0(struct timeval timeout_header_server_write);

GLOBAL0(struct timeval timeout_forward_client_read);
GLOBAL0(struct timeval timeout_forward_client_write);
GLOBAL0(struct timeval timeout_forward_server_read);
GLOBAL0(struct timeval timeout_forward_server_write);

GLOBAL0(struct timeval timeout_cleanup);

GLOBAL0(int current_nb_clients);

GLOBAL(int backlog, DEFAULT_BACKLOG);

GLOBAL(int max_clients, DEFAULT_MAX_CLIENTS);

GLOBAL(unsigned int server_retry, DEFAULT_SERVER_RETRY);

GLOBAL(LogLevel log_level, DEFAULT_LOG_LEVEL);

GLOBAL0(Client *clients);

GLOBAL0(Server *serverpool_head);
GLOBAL0(Server *serverpool_current);

GLOBAL0(int bind_ipv6);

GLOBAL(Protocol protocol, PROTOCOL_HTTP);
GLOBAL0(const char *protocol_header_end);
GLOBAL0(size_t protocol_header_end_len);

#endif


syntax highlighted by Code2HTML, v. 0.9.1