#include <stdarg.h>
#include <haproxy/api.h>
-#include <haproxy/tools.h>
#include <haproxy/chunk.h>
#include <haproxy/spoe.h>
#include <haproxy/time.h>
+#include <haproxy/tools.h>
#include <http_core.h>
#include <http_main.h>
#include <event2/event_struct.h>
#include <event2/thread.h>
-#include <haproxy/list.h>
#include <haproxy/chunk.h>
+#include <haproxy/list.h>
#include <haproxy/spoe.h>
#include "spoa.h"
#include <event2/event_struct.h>
#include <event2/thread.h>
-#include <haproxy/list.h>
#include <haproxy/chunk.h>
+#include <haproxy/list.h>
#include <haproxy/spoe.h>
#include "spoa.h"
*/
#include <haproxy/action-t.h>
+#include <haproxy/api.h>
#include <haproxy/applet.h>
#include <haproxy/backend.h>
-#include <haproxy/api.h>
#include <haproxy/cfgparse.h>
+#include <haproxy/compression.h>
#include <haproxy/frontend.h>
#include <haproxy/global.h>
#include <haproxy/http.h>
#include <haproxy/list.h>
#include <haproxy/listener.h>
#include <haproxy/log.h>
-#include <haproxy/pool.h>
-
-#include <haproxy/compression.h>
#include <haproxy/pipe.h>
+#include <haproxy/pool.h>
#include <haproxy/proxy.h>
#include <haproxy/sample.h>
#include <haproxy/server.h>
#define _HAPROXY_ACL_H
#include <haproxy/acl-t.h>
-#include <haproxy/arg-t.h>
#include <haproxy/api.h>
+#include <haproxy/arg-t.h>
struct stream;
#ifndef _HAPROXY_ACTION_T_H
#define _HAPROXY_ACTION_T_H
-#include <haproxy/regex-t.h>
-
#include <haproxy/applet-t.h>
+#include <haproxy/regex-t.h>
#include <haproxy/stick_table-t.h>
enum act_from {
#ifndef _HAPROXY_ACTIVITY_H
#define _HAPROXY_ACTIVITY_H
-#include <haproxy/api.h>
-#include <haproxy/time.h>
#include <haproxy/activity-t.h>
+#include <haproxy/api.h>
#include <haproxy/freq_ctr.h>
+#include <haproxy/time.h>
extern unsigned int profiling;
extern unsigned long task_profiling_mask;
#ifndef _HAPROXY_BASE_H
#define _HAPROXY_BASE_H
+#include <haproxy/api-t.h>
#include <haproxy/atomic.h>
#include <haproxy/bug.h>
#include <haproxy/initcall.h>
-#include <haproxy/api-t.h>
#endif
#ifndef _HAPROXY_APPLET_T_H
#define _HAPROXY_APPLET_T_H
+#include <haproxy/api-t.h>
#include <haproxy/buf-t.h>
#include <haproxy/dynbuf-t.h>
#include <haproxy/freq_ctr-t.h>
#include <haproxy/obj_type-t.h>
#include <haproxy/proxy-t.h>
#include <haproxy/stream-t.h>
-#include <haproxy/api-t.h>
#include <haproxy/xref-t.h>
/* flags for appctx->state */
#include <stdlib.h>
-#include <haproxy/applet-t.h>
#include <haproxy/api.h>
+#include <haproxy/applet-t.h>
#include <haproxy/list.h>
#include <haproxy/pool.h>
#include <haproxy/task.h>
#include <haproxy/buf-t.h>
#include <haproxy/list-t.h>
#include <haproxy/protobuf-t.h>
-#include <haproxy/vars-t.h>
-
#include <haproxy/stick_table-t.h>
+#include <haproxy/vars-t.h>
/* encoding of each arg type : up to 31 types are supported */
#define ARGT_BITS 5
#ifndef _HAPROXY_AUTH_T_H
#define _HAPROXY_AUTH_T_H
-#include <haproxy/auth-t.h>
#include <haproxy/api-t.h>
+#include <haproxy/auth-t.h>
#include <haproxy/list-t.h>
#define AU_O_INSECURE 0x00000001 /* insecure, unencrypted password */
#ifndef _HAPROXY_AUTH_H
#define _HAPROXY_AUTH_H
-#include <haproxy/auth-t.h>
#include <haproxy/api.h>
+#include <haproxy/auth-t.h>
#include <haproxy/pattern-t.h>
#include <haproxy/sample-t.h>
#ifndef _HAPROXY_BACKEND_T_H
#define _HAPROXY_BACKEND_T_H
+#include <haproxy/api-t.h>
#include <haproxy/lb_chash-t.h>
#include <haproxy/lb_fas-t.h>
#include <haproxy/lb_fwlc-t.h>
#include <haproxy/lb_map-t.h>
#include <haproxy/server-t.h>
#include <haproxy/thread-t.h>
-#include <haproxy/api-t.h>
/* Parameters for lbprm.algo */
#ifndef _HAPROXY_BACKEND_H
#define _HAPROXY_BACKEND_H
-#include <haproxy/backend-t.h>
#include <haproxy/api.h>
+#include <haproxy/backend-t.h>
#include <haproxy/proxy-t.h>
#include <haproxy/server-t.h>
#include <haproxy/stream-t.h>
#ifndef _HAPROXY_CHANNEL_T_H
#define _HAPROXY_CHANNEL_T_H
-#include <haproxy/buf-t.h>
#include <haproxy/api-t.h>
+#include <haproxy/buf-t.h>
/* The CF_* macros designate Channel Flags, which may be ORed in the bit field
* member 'flags' in struct channel. Here we have several types of flags :
#include <haproxy/stream.h>
#include <haproxy/stream_interface-t.h>
#include <haproxy/task.h>
-#include <haproxy/tools-t.h>
#include <haproxy/ticks.h>
#include <haproxy/time.h>
+#include <haproxy/tools-t.h>
/* perform minimal intializations, report 0 in case of error, 1 if OK. */
#include <import/ebpttree.h>
#include <import/ist.h>
+#include <haproxy/api-t.h>
#include <haproxy/buf-t.h>
#include <haproxy/connection-t.h>
#include <haproxy/list-t.h>
#include <haproxy/obj_type-t.h>
-#include <haproxy/api-t.h>
#include <haproxy/vars-t.h>
/* Please note: this file tends to commonly be part of circular dependencies,
#include <stdlib.h>
#include <string.h>
+#include <import/ist.h>
#include <haproxy/api.h>
#include <haproxy/buf-t.h>
-#include <import/ist.h>
#include <haproxy/pool.h>
#include <import/ist.h>
+#include <haproxy/api-t.h>
#include <haproxy/list-t.h>
#include <haproxy/listener-t.h>
#include <haproxy/obj_type-t.h>
#include <haproxy/port_range-t.h>
#include <haproxy/protocol-t.h>
-#include <haproxy/api-t.h>
/* referenced below */
struct connection;
#include <import/eb32tree.h>
#include <haproxy/connection-t.h>
-#include <haproxy/obj_type-t.h>
#include <haproxy/list-t.h>
-#include <haproxy/thread.h>
-
+#include <haproxy/obj_type-t.h>
#include <haproxy/proto_udp-t.h>
#include <haproxy/task-t.h>
+#include <haproxy/thread.h>
extern struct pool_head *dns_requester_pool;
#include <import/ist.h>
#include <haproxy/acl-t.h>
+#include <haproxy/api-t.h>
#include <haproxy/arg-t.h>
#include <haproxy/fcgi.h>
#include <haproxy/filters-t.h>
#include <haproxy/list-t.h>
#include <haproxy/regex-t.h>
-#include <haproxy/api-t.h>
#define FCGI_APP_FL_KEEP_CONN 0x00000001 /* Keep the connection alive */
#define FCGI_APP_FL_GET_VALUES 0x00000002 /* Retrieve FCGI variables on connection establishment */
#ifndef _HAPROXY_FILTERS_T_H
#define _HAPROXY_FILTERS_T_H
-#include <haproxy/list-t.h>
#include <haproxy/api-t.h>
+#include <haproxy/list-t.h>
/* Flags set on a filter config */
#define FLT_CFG_FL_HTX 0x00000001 /* The filter can filter HTX streams */
#ifndef _HAPROXY_GLOBAL_T_H
#define _HAPROXY_GLOBAL_T_H
+#include <haproxy/api-t.h>
#include <haproxy/buf-t.h>
#include <haproxy/freq_ctr-t.h>
#include <haproxy/list-t.h>
-#include <haproxy/api-t.h>
#include <haproxy/vars-t.h>
/* modes of operation (global.mode) */
#ifndef _HAPROXY_GLOBAL_H
#define _HAPROXY_GLOBAL_H
-#include <haproxy/global-t.h>
#include <haproxy/api-t.h>
-#include <haproxy/vars-t.h>
+#include <haproxy/global-t.h>
#include <haproxy/mworker-t.h>
+#include <haproxy/vars-t.h>
extern struct global global;
extern int pid; /* current process id */
#include <haproxy/proxy-t.h>
#include <haproxy/regex-t.h>
#include <haproxy/server-t.h>
-#include <haproxy/xref-t.h>
-
#include <haproxy/stick_table-t.h>
+#include <haproxy/xref-t.h>
#define CLASS_CORE "Core"
#define CLASS_TXN "TXN"
#ifndef _HAPROXY_PROTO_HTTP_T_H
#define _HAPROXY_PROTO_HTTP_T_H
+#include <haproxy/api-t.h>
#include <haproxy/channel-t.h>
#include <haproxy/http-t.h>
-#include <haproxy/api-t.h>
/* These are the flags that are found in txn->flags */
#ifndef _HAPROXY_HTTP_FETCH_H
#define _HAPROXY_HTTP_FETCH_H
-#include <haproxy/arg-t.h>
#include <haproxy/api.h>
+#include <haproxy/arg-t.h>
#include <haproxy/channel-t.h>
#include <haproxy/check-t.h>
#include <haproxy/sample-t.h>
#define _HAPROXY_HTTP_HTX_T_H
#include <import/ebistree.h>
+#include <import/ist.h>
#include <haproxy/buf-t.h>
-#include <import/ist.h>
#include <haproxy/http-t.h>
#include <haproxy/htx-t.h>
#include <haproxy/list-t.h>
#ifndef _HAPROXY_HTTP_RULES_H
#define _HAPROXY_HTTP_RULES_H
+#include <haproxy/action-t.h>
#include <haproxy/api.h>
#include <haproxy/list.h>
-#include <haproxy/action-t.h>
#include <haproxy/proxy-t.h>
extern struct action_kw_list http_req_keywords;
#include <haproxy/api.h>
#include <haproxy/buf.h>
#include <haproxy/chunk.h>
-#include <haproxy/http-t.h>
#include <haproxy/http-hdr-t.h>
+#include <haproxy/http-t.h>
#include <haproxy/htx-t.h>
extern struct htx htx_empty;
#ifndef _HAPROXY_LB_CHASH_T_H
#define _HAPROXY_LB_CHASH_T_H
-#include <import/ebtree.h>
#include <import/eb32tree.h>
+#include <import/ebtree.h>
struct lb_chash {
struct eb_root act; /* weighted chash entries of active servers */
#ifndef _HAPROXY_LB_MAP_T_H
#define _HAPROXY_LB_MAP_T_H
-#include <haproxy/server-t.h>
#include <haproxy/api-t.h>
+#include <haproxy/server-t.h>
struct lb_map {
struct server **srv; /* the server map used to apply weights */
#include <import/eb32tree.h>
+#include <haproxy/api-t.h>
#include <haproxy/list-t.h>
#include <haproxy/obj_type-t.h>
#include <haproxy/thread.h>
-#include <haproxy/api-t.h>
#ifdef USE_OPENSSL
#include <haproxy/openssl-compat.h>
#include <sys/un.h>
#include <netinet/in.h>
+#include <haproxy/api-t.h>
#include <haproxy/list-t.h>
#include <haproxy/ring-t.h>
#include <haproxy/thread-t.h>
-#include <haproxy/api-t.h>
#define NB_LOG_FACILITIES 24
#include <sys/types.h>
#include <sys/socket.h>
-#include <haproxy/namespace-t.h>
#include <import/ebistree.h>
+#include <haproxy/namespace-t.h>
#ifdef USE_NS
#ifndef _HAPROXY_OBJ_TYPE_H
#define _HAPROXY_OBJ_TYPE_H
-#include <haproxy/applet-t.h>
#include <haproxy/api.h>
+#include <haproxy/applet-t.h>
#include <haproxy/check-t.h>
#include <haproxy/connection-t.h>
#include <haproxy/listener-t.h>
#include <import/ebmbtree.h>
+#include <haproxy/api-t.h>
#include <haproxy/list-t.h>
#include <haproxy/regex-t.h>
-#include <haproxy/thread-t.h>
-#include <haproxy/api-t.h>
-
#include <haproxy/sample_data-t.h>
+#include <haproxy/thread-t.h>
/* Pattern matching function result.
#include <import/eb32tree.h>
-#include <haproxy/dict-t.h>
-#include <haproxy/thread-t.h>
#include <haproxy/api-t.h>
+#include <haproxy/dict-t.h>
#include <haproxy/list-t.h>
+#include <haproxy/thread-t.h>
struct shared_table {
#ifndef _HAPROXY_PROTO_TCP_H
#define _HAPROXY_PROTO_TCP_H
-#include <haproxy/arg-t.h>
#include <haproxy/api.h>
+#include <haproxy/arg-t.h>
#include <haproxy/connection-t.h>
#include <haproxy/listener-t.h>
#include <haproxy/sample-t.h>
#include <import/eb32tree.h>
#include <import/ebpttree.h>
+#include <haproxy/api-t.h>
#include <haproxy/arg-t.h>
#include <haproxy/backend-t.h>
#include <haproxy/counters-t.h>
#include <haproxy/server-t.h>
#include <haproxy/tcpcheck-t.h>
#include <haproxy/thread-t.h>
-#include <haproxy/api-t.h>
/* values for proxy->state */
enum pr_state {
#ifndef _HAPROXY_PROXY_H
#define _HAPROXY_PROXY_H
-#include <haproxy/applet-t.h>
#include <haproxy/api.h>
+#include <haproxy/applet-t.h>
#include <haproxy/freq_ctr.h>
#include <haproxy/listener-t.h>
#include <haproxy/proxy-t.h>
#ifndef _HAPROXY_QUEUE_H
#define _HAPROXY_QUEUE_H
-#include <haproxy/backend.h>
#include <haproxy/api.h>
+#include <haproxy/backend.h>
#include <haproxy/pool.h>
#include <haproxy/proxy-t.h>
#include <haproxy/queue-t.h>
#ifndef _HAPROXY_SAMPLE_T_H
#define _HAPROXY_SAMPLE_T_H
-#include <haproxy/list-t.h>
#include <haproxy/api-t.h>
+#include <haproxy/list-t.h>
#include <haproxy/sample_data-t.h>
/* input and output sample types */
#ifndef _HAPROXY_SAMPLE_H
#define _HAPROXY_SAMPLE_H
-#include <haproxy/arg-t.h>
#include <haproxy/api.h>
+#include <haproxy/arg-t.h>
#include <haproxy/sample-t.h>
#include <haproxy/stick_table-t.h>
#include <import/eb32tree.h>
#include <import/ebmbtree.h>
+#include <haproxy/api-t.h>
#include <haproxy/check-t.h>
#include <haproxy/connection-t.h>
#include <haproxy/counters-t.h>
#include <haproxy/ssl_sock-t.h>
#include <haproxy/task-t.h>
#include <haproxy/thread-t.h>
-#include <haproxy/api-t.h>
/* server states. Only SRV_ST_STOPPED indicates a down server. */
#include <unistd.h>
-
-#include <haproxy/applet-t.h>
#include <haproxy/api.h>
+#include <haproxy/applet-t.h>
#include <haproxy/dns-t.h>
#include <haproxy/freq_ctr.h>
#include <haproxy/proxy-t.h>
#define _HAPROXY_SINK_T_H
#include <import/ist.h>
-#include <haproxy/list-t.h>
#include <haproxy/api-t.h>
+#include <haproxy/list-t.h>
/* A sink may be of 4 distinct types :
* - file descriptor (such as stdout)
#include <haproxy/buf-t.h>
#include <haproxy/connection-t.h> /* struct wait_event */
-#include <haproxy/thread-t.h>
#include <haproxy/list-t.h>
#include <haproxy/listener-t.h>
#include <haproxy/openssl-compat.h>
#include <haproxy/ssl_ckch-t.h>
#include <haproxy/ssl_crtlist-t.h>
+#include <haproxy/thread-t.h>
/* ***** READ THIS before adding code here! *****
*
#include <haproxy/connection.h>
#include <haproxy/openssl-compat.h>
-#include <haproxy/ssl_sock-t.h>
#include <haproxy/pool-t.h>
#include <haproxy/proxy-t.h>
+#include <haproxy/ssl_sock-t.h>
#include <haproxy/thread.h>
extern struct list tlskeys_reference;
#ifndef _HAPROXY_STATS_H
#define _HAPROXY_STATS_H
-#include <haproxy/applet-t.h>
#include <haproxy/api.h>
-#include <haproxy/stream_interface-t.h>
+#include <haproxy/applet-t.h>
#include <haproxy/stats-t.h>
+#include <haproxy/stream_interface-t.h>
#include <haproxy/tools-t.h>
#include <import/ebmbtree.h>
#include <import/ebpttree.h>
+#include <haproxy/api-t.h>
#include <haproxy/freq_ctr-t.h>
#include <haproxy/thread-t.h>
-#include <haproxy/api-t.h>
/* The types of extra data we can store in a stick table */
#include <haproxy/errors.h>
#include <haproxy/sample-t.h>
#include <haproxy/stick_table-t.h>
-#include <haproxy/tools.h>
#include <haproxy/ticks.h>
#include <haproxy/time.h>
+#include <haproxy/tools.h>
extern struct stktable *stktables_list;
extern struct stktable_type stktable_types[];
#include <netinet/in.h>
#include <arpa/inet.h>
+#include <haproxy/api-t.h>
#include <haproxy/channel-t.h>
#include <haproxy/dynbuf-t.h>
#include <haproxy/filters-t.h>
#include <haproxy/stick_table-t.h>
#include <haproxy/stream_interface-t.h>
#include <haproxy/task-t.h>
-#include <haproxy/api-t.h>
#include <haproxy/vars-t.h>
#ifndef _HAPROXY_STREAM_INTERFACE_H
#define _HAPROXY_STREAM_INTERFACE_H
-#include <haproxy/applet.h>
#include <haproxy/api.h>
+#include <haproxy/applet.h>
#include <haproxy/channel.h>
#include <haproxy/connection.h>
#include <haproxy/stream-t.h>
#include <import/eb32sctree.h>
#include <import/eb32tree.h>
+#include <haproxy/api-t.h>
#include <haproxy/list-t.h>
#include <haproxy/thread-t.h>
-#include <haproxy/api-t.h>
/* values for task->state */
#define TASK_SLEEPING 0x0000 /* task sleeping */
#include <import/ebpttree.h>
#include <import/ist.h>
+#include <haproxy/api-t.h>
#include <haproxy/buf-t.h>
#include <haproxy/check-t.h>
#include <haproxy/connection-t.h>
#include <haproxy/list-t.h>
#include <haproxy/obj_type-t.h>
-#include <haproxy/api-t.h>
#include <haproxy/vars-t.h>
/* options for tcp-check connect */
#include <sys/un.h>
#include <netinet/in.h>
#include <arpa/inet.h>
-#include <import/eb32tree.h>
#include <import/eb32sctree.h>
+#include <import/eb32tree.h>
#include <haproxy/api.h>
-#include <haproxy/intops.h>
#include <haproxy/chunk.h>
+#include <haproxy/intops.h>
#include <haproxy/namespace-t.h>
#include <haproxy/protocol-t.h>
#include <haproxy/tools-t.h>
#define _HAPROXY_TRACE_T_H
#include <import/ist.h>
+#include <haproxy/api-t.h>
#include <haproxy/list-t.h>
#include <haproxy/sink-t.h>
-#include <haproxy/api-t.h>
/* the macros below define an optional type for each of the 4 args passed to
* the trace() call. When such a type is set, the caller commits to exclusively
#ifndef _HAPROXY_VARS_H
#define _HAPROXY_VARS_H
+#include <haproxy/api-t.h>
#include <haproxy/session-t.h>
#include <haproxy/stream-t.h>
-#include <haproxy/api-t.h>
#include <haproxy/vars-t.h>
void vars_init(struct vars *vars, enum vars_scope scope);
#include <stdio.h>
+#include <import/lru.h>
+#include <import/xxhash.h>
#include <haproxy/api.h>
+#include <haproxy/arg.h>
+#include <haproxy/buf-t.h>
#include <haproxy/cfgparse.h>
#include <haproxy/chunk.h>
-#include <haproxy/buf-t.h>
#include <haproxy/errors.h>
+#include <haproxy/global.h>
#include <haproxy/http_ana.h>
#include <haproxy/http_fetch.h>
#include <haproxy/http_htx.h>
-#include <haproxy/thread.h>
-#include <haproxy/global.h>
-#include <haproxy/arg.h>
#include <haproxy/sample.h>
+#include <haproxy/thread.h>
#include <haproxy/tools.h>
-#include <import/xxhash.h>
-#include <import/lru.h>
#include <51Degrees.h>
struct _51d_property_names {
#include <stdio.h>
#include <string.h>
+#include <import/ebsttree.h>
+
#include <haproxy/acl.h>
-#include <haproxy/auth.h>
#include <haproxy/api.h>
+#include <haproxy/arg.h>
+#include <haproxy/auth.h>
#include <haproxy/errors.h>
+#include <haproxy/global.h>
#include <haproxy/list.h>
#include <haproxy/pattern.h>
#include <haproxy/proxy-t.h>
-#include <haproxy/tools.h>
-
-#include <haproxy/global.h>
-
-#include <haproxy/arg.h>
#include <haproxy/sample.h>
#include <haproxy/stick_table.h>
-
-#include <import/ebsttree.h>
+#include <haproxy/tools.h>
/* List head of all known ACL keywords */
static struct acl_kw_list acl_keywords = {
#include <haproxy/action.h>
#include <haproxy/api.h>
#include <haproxy/errors.h>
+#include <haproxy/list.h>
#include <haproxy/obj_type.h>
#include <haproxy/pool.h>
-#include <haproxy/list.h>
#include <haproxy/proxy.h>
+#include <haproxy/stick_table.h>
#include <haproxy/task.h>
#include <haproxy/tools.h>
-#include <haproxy/stick_table.h>
-
/* Find and check the target table used by an action track-sc*. This
* function should be called during the configuration validity check.
*
*/
+#include <haproxy/activity-t.h>
#include <haproxy/api.h>
#include <haproxy/cfgparse.h>
#include <haproxy/channel.h>
#include <haproxy/cli.h>
+#include <haproxy/freq_ctr.h>
#include <haproxy/stream_interface.h>
#include <haproxy/tools.h>
-#include <haproxy/activity-t.h>
-#include <haproxy/freq_ctr.h>
/* bit field of profiling options. Beware, may be modified at runtime! */
#include <stdio.h>
#include <stdlib.h>
-#include <haproxy/applet.h>
#include <haproxy/api.h>
+#include <haproxy/applet.h>
#include <haproxy/channel.h>
#include <haproxy/list.h>
#include <haproxy/stream.h>
#include <sys/socket.h>
#include <arpa/inet.h>
-#include <haproxy/tools.h>
+#include <haproxy/arg.h>
#include <haproxy/chunk.h>
#include <haproxy/global.h>
-#include <haproxy/arg.h>
+#include <haproxy/tools.h>
const char *arg_type_names[ARGT_NBTYPES] = {
[ARGT_STOP] = "end of arguments",
#include <string.h>
#include <unistd.h>
-#include <haproxy/auth-t.h>
#include <haproxy/api.h>
-#include <haproxy/global.h>
+#include <haproxy/auth-t.h>
#include <haproxy/errors.h>
+#include <haproxy/global.h>
#include <haproxy/pattern-t.h>
#include <haproxy/sample-t.h>
#include <haproxy/thread.h>
#include <sys/types.h>
#include <haproxy/acl.h>
-#include <haproxy/backend.h>
#include <haproxy/api.h>
+#include <haproxy/arg.h>
+#include <haproxy/backend.h>
#include <haproxy/channel.h>
#include <haproxy/check.h>
#include <haproxy/frontend.h>
+#include <haproxy/global.h>
#include <haproxy/hash.h>
#include <haproxy/http.h>
#include <haproxy/http_ana.h>
#include <haproxy/lb_fwrr.h>
#include <haproxy/lb_map.h>
#include <haproxy/log.h>
+#include <haproxy/namespace.h>
#include <haproxy/obj_type.h>
#include <haproxy/payload.h>
+#include <haproxy/proto_tcp.h>
+#include <haproxy/protocol.h>
#include <haproxy/proxy.h>
#include <haproxy/queue.h>
+#include <haproxy/sample.h>
#include <haproxy/server.h>
#include <haproxy/session.h>
#include <haproxy/ssl_sock.h>
#include <haproxy/ticks.h>
#include <haproxy/time.h>
#include <haproxy/trace.h>
-#include <haproxy/namespace.h>
-
-#include <haproxy/global.h>
-
-#include <haproxy/arg.h>
-#include <haproxy/protocol.h>
-#include <haproxy/proto_tcp.h>
-#include <haproxy/sample.h>
#define TRACE_SOURCE &trace_strm
#include <haproxy/api.h>
#include <haproxy/dynbuf.h>
+#include <haproxy/global.h>
#include <haproxy/list.h>
#include <haproxy/pool.h>
-#include <haproxy/global.h>
-
struct pool_head *pool_head_buffer;
/* list of objects waiting for at least one buffer */
* 2 of the License, or (at your option) any later version.
*/
+#include <import/eb32tree.h>
+#include <import/sha1.h>
+
#include <haproxy/action-t.h>
#include <haproxy/api.h>
#include <haproxy/cfgparse.h>
#include <haproxy/cli.h>
#include <haproxy/errors.h>
#include <haproxy/filters.h>
+#include <haproxy/hash.h>
#include <haproxy/http_ana.h>
#include <haproxy/http_htx.h>
#include <haproxy/http_rules.h>
+#include <haproxy/htx.h>
+#include <haproxy/net_helper.h>
#include <haproxy/proxy.h>
#include <haproxy/shctx.h>
#include <haproxy/stream.h>
#include <haproxy/stream_interface.h>
-#include <import/eb32tree.h>
-#include <import/sha1.h>
-
-
-#include <haproxy/hash.h>
-#include <haproxy/htx.h>
-#include <haproxy/net_helper.h>
#define CACHE_FLT_F_IMPLICIT_DECL 0x00000001 /* The cache filtre was implicitly declared (ie without
* the filter keyword) */
#include <fcntl.h>
#include <unistd.h>
-#include <haproxy/uri_auth.h>
-
#include <haproxy/acl.h>
#include <haproxy/capture-t.h>
#include <haproxy/cfgparse.h>
#include <haproxy/listener.h>
#include <haproxy/log.h>
#include <haproxy/peers.h>
+#include <haproxy/protocol.h>
#include <haproxy/proxy.h>
#include <haproxy/sample.h>
#include <haproxy/server.h>
#include <haproxy/stats-t.h>
-#include <haproxy/tcpcheck.h>
-
-#include <haproxy/protocol.h>
#include <haproxy/stick_table.h>
+#include <haproxy/tcpcheck.h>
+#include <haproxy/uri_auth.h>
/* Report a warning if a rule is placed after a 'tcp-request session' rule.
* Return 1 if the warning has been emitted, otherwise 0.
#include <haproxy/acl.h>
#include <haproxy/action-t.h>
+#include <haproxy/api.h>
#include <haproxy/auth.h>
#include <haproxy/backend.h>
-#include <haproxy/api.h>
#include <haproxy/capture.h>
#include <haproxy/cfgparse.h>
#include <haproxy/channel.h>
#include <haproxy/errors.h>
#include <haproxy/filters.h>
#include <haproxy/frontend.h>
+#include <haproxy/global.h>
#include <haproxy/http_ana.h>
#include <haproxy/http_rules.h>
#include <haproxy/lb_chash.h>
#include <haproxy/listener.h>
#include <haproxy/log.h>
#include <haproxy/mailers.h>
+#include <haproxy/namespace.h>
#include <haproxy/obj_type-t.h>
#include <haproxy/peers-t.h>
+#include <haproxy/peers.h>
#include <haproxy/pool.h>
+#include <haproxy/protocol.h>
#include <haproxy/proxy.h>
+#include <haproxy/sample.h>
+#include <haproxy/server.h>
#include <haproxy/session.h>
#include <haproxy/stats-t.h>
-#include <haproxy/tools.h>
-#include <haproxy/time.h>
-#include <haproxy/uri_auth-t.h>
-#include <haproxy/namespace.h>
-#include <haproxy/server.h>
-#include <haproxy/task.h>
-#include <haproxy/thread.h>
-
-#include <haproxy/global.h>
-
-#include <haproxy/protocol.h>
-#include <haproxy/peers.h>
-#include <haproxy/sample.h>
#include <haproxy/stick_table.h>
#include <haproxy/stream.h>
+#include <haproxy/task.h>
#include <haproxy/tcp_rules.h>
+#include <haproxy/thread.h>
+#include <haproxy/time.h>
+#include <haproxy/tools.h>
+#include <haproxy/uri_auth-t.h>
/* Used to chain configuration sections definitions. This list
#include <haproxy/action.h>
#include <haproxy/api.h>
+#include <haproxy/arg.h>
#include <haproxy/cfgparse.h>
#include <haproxy/check.h>
#include <haproxy/chunk.h>
#include <haproxy/dns.h>
#include <haproxy/extcheck.h>
-#include <haproxy/istbuf.h>
-#include <haproxy/list.h>
-#include <haproxy/mailers.h>
-#include <haproxy/queue.h>
-#include <haproxy/regex.h>
-#include <haproxy/tools.h>
-#include <haproxy/time.h>
-#include <haproxy/thread.h>
+#include <haproxy/fd.h>
+#include <haproxy/global.h>
+#include <haproxy/h1.h>
#include <haproxy/http.h>
#include <haproxy/http_htx.h>
-#include <haproxy/h1.h>
#include <haproxy/htx.h>
+#include <haproxy/istbuf.h>
+#include <haproxy/list.h>
#include <haproxy/log.h>
+#include <haproxy/mailers.h>
+#include <haproxy/port_range.h>
+#include <haproxy/proto_tcp.h>
+#include <haproxy/proto_udp.h>
+#include <haproxy/protocol.h>
#include <haproxy/proxy.h>
+#include <haproxy/queue.h>
+#include <haproxy/regex.h>
+#include <haproxy/sample.h>
#include <haproxy/server.h>
#include <haproxy/ssl_sock.h>
#include <haproxy/stats-t.h>
#include <haproxy/stream_interface.h>
#include <haproxy/task.h>
#include <haproxy/tcpcheck.h>
+#include <haproxy/thread.h>
+#include <haproxy/time.h>
+#include <haproxy/tools.h>
#include <haproxy/vars.h>
-#include <haproxy/global.h>
-
-#include <haproxy/arg.h>
-#include <haproxy/fd.h>
-#include <haproxy/port_range.h>
-#include <haproxy/proto_tcp.h>
-#include <haproxy/protocol.h>
-#include <haproxy/proto_udp.h>
-#include <haproxy/sample.h>
static int wake_srv_chk(struct conn_stream *cs);
struct data_cb check_conn_cb = {
#include <haproxy/api.h>
#include <haproxy/chunk.h>
-#include <haproxy/tools.h>
-
#include <haproxy/global.h>
+#include <haproxy/tools.h>
/* trash chunks used for various conversions */
static THREAD_LOCAL struct buffer *trash_chunk;
#include <net/if.h>
-#include <haproxy/applet-t.h>
+#include <haproxy/activity.h>
#include <haproxy/api.h>
+#include <haproxy/applet-t.h>
+#include <haproxy/base64.h>
#include <haproxy/cfgparse.h>
#include <haproxy/channel.h>
#include <haproxy/check.h>
#include <haproxy/cli.h>
+#include <haproxy/compression.h>
#include <haproxy/dns-t.h>
#include <haproxy/errors.h>
+#include <haproxy/fd.h>
+#include <haproxy/freq_ctr.h>
#include <haproxy/frontend.h>
+#include <haproxy/global.h>
#include <haproxy/list.h>
#include <haproxy/listener.h>
#include <haproxy/log.h>
#include <haproxy/mworker-t.h>
#include <haproxy/pattern-t.h>
#include <haproxy/peers.h>
+#include <haproxy/pipe.h>
+#include <haproxy/protocol.h>
#include <haproxy/proxy.h>
#include <haproxy/sample-t.h>
#include <haproxy/server.h>
#include <haproxy/stream.h>
#include <haproxy/stream_interface.h>
#include <haproxy/task.h>
-#include <haproxy/tools.h>
#include <haproxy/ticks.h>
#include <haproxy/time.h>
+#include <haproxy/tools.h>
#include <haproxy/version.h>
-#include <haproxy/base64.h>
-
-#include <haproxy/global.h>
-
-#include <haproxy/activity.h>
-#include <haproxy/compression.h>
-#include <haproxy/fd.h>
-#include <haproxy/freq_ctr.h>
-#include <haproxy/pipe.h>
-#include <haproxy/protocol.h>
#define PAYLOAD_PATTERN "<<"
#include <haproxy/api.h>
#include <haproxy/cfgparse.h>
-#include <haproxy/dynbuf.h>
-#include <haproxy/stream.h>
-#include <haproxy/thread.h>
-#include <haproxy/pool.h>
-
-#include <haproxy/global.h>
#include <haproxy/compression-t.h>
-
#include <haproxy/compression.h>
+#include <haproxy/dynbuf.h>
#include <haproxy/freq_ctr.h>
+#include <haproxy/global.h>
+#include <haproxy/pool.h>
+#include <haproxy/stream.h>
+#include <haproxy/thread.h>
#if defined(USE_ZLIB)
#include <haproxy/api.h>
#include <haproxy/cfgparse.h>
#include <haproxy/connection.h>
+#include <haproxy/fd.h>
#include <haproxy/frontend.h>
+#include <haproxy/hash.h>
#include <haproxy/log-t.h>
#include <haproxy/namespace.h>
-#include <haproxy/hash.h>
#include <haproxy/net_helper.h>
-
-#include <haproxy/fd.h>
#include <haproxy/proto_tcp.h>
#include <haproxy/sample.h>
#include <haproxy/ssl_sock.h>
#include <stdio.h>
#include <haproxy/api.h>
+#include <haproxy/arg.h>
#include <haproxy/cfgparse.h>
#include <haproxy/errors.h>
+#include <haproxy/global.h>
#include <haproxy/http.h>
#include <haproxy/http_ana.h>
#include <haproxy/http_fetch.h>
#include <haproxy/http_htx.h>
#include <haproxy/htx.h>
-#include <haproxy/global.h>
-#include <haproxy/arg.h>
#include <haproxy/sample.h>
#include <haproxy/tools.h>
#include <dac.h>
#include <haproxy/buf.h>
#include <haproxy/cli.h>
#include <haproxy/debug.h>
+#include <haproxy/fd.h>
+#include <haproxy/global.h>
#include <haproxy/hlua.h>
#include <haproxy/log.h>
+#include <haproxy/net_helper.h>
#include <haproxy/stream_interface.h>
#include <haproxy/task.h>
#include <haproxy/thread.h>
-#include <import/ist.h>
-#include <haproxy/net_helper.h>
#include <haproxy/tools.h>
+#include <import/ist.h>
-#include <haproxy/global.h>
-
-#include <haproxy/fd.h>
/* mask of threads still having to dump, used to respect ordering. Only used
* when USE_THREAD_DUMP is set.
#include <haproxy/action.h>
#include <haproxy/api.h>
#include <haproxy/cfgparse.h>
-#include <haproxy/check.h>
#include <haproxy/channel.h>
+#include <haproxy/check.h>
#include <haproxy/cli.h>
#include <haproxy/dns.h>
#include <haproxy/errors.h>
+#include <haproxy/fd.h>
+#include <haproxy/global.h>
#include <haproxy/http_rules.h>
#include <haproxy/log.h>
+#include <haproxy/net_helper.h>
+#include <haproxy/proto_udp.h>
#include <haproxy/proxy.h>
#include <haproxy/sample.h>
#include <haproxy/server.h>
#include <haproxy/stream_interface.h>
#include <haproxy/task.h>
#include <haproxy/tcp_rules.h>
-#include <haproxy/time.h>
#include <haproxy/ticks.h>
-#include <haproxy/net_helper.h>
+#include <haproxy/time.h>
#include <haproxy/vars.h>
-#include <haproxy/global.h>
-
-#include <haproxy/fd.h>
-#include <haproxy/proto_udp.h>
struct list dns_resolvers = LIST_HEAD_INIT(dns_resolvers);
struct list dns_srvrq_list = LIST_HEAD_INIT(dns_srvrq_list);
/* Consult ebimtree.h for more details about those functions */
-#include <import/ebpttree.h>
#include <import/ebimtree.h>
+#include <import/ebpttree.h>
/* Find the first occurrence of a key of <len> bytes in the tree <root>.
* If none can be found, return NULL.
#include <sys/time.h>
#include <sys/types.h>
+#include <haproxy/activity.h>
#include <haproxy/api.h>
+#include <haproxy/fd.h>
#include <haproxy/global.h>
#include <haproxy/signal.h>
-#include <haproxy/tools.h>
#include <haproxy/ticks.h>
#include <haproxy/time.h>
-
-#include <haproxy/activity.h>
-#include <haproxy/fd.h>
+#include <haproxy/tools.h>
/* private data */
#include <errno.h>
#include <syslog.h>
+#include <haproxy/activity.h>
#include <haproxy/api.h>
+#include <haproxy/fd.h>
+#include <haproxy/global.h>
#include <haproxy/signal.h>
#include <haproxy/ticks.h>
#include <haproxy/time.h>
-#include <haproxy/global.h>
-
-#include <haproxy/activity.h>
-#include <haproxy/fd.h>
-
/*
* Private data:
*/
#include <sys/event.h>
#include <sys/time.h>
+#include <haproxy/activity.h>
#include <haproxy/api.h>
+#include <haproxy/fd.h>
+#include <haproxy/global.h>
#include <haproxy/signal.h>
#include <haproxy/ticks.h>
#include <haproxy/time.h>
-#include <haproxy/global.h>
-
-#include <haproxy/activity.h>
-#include <haproxy/fd.h>
-
/* private data */
static int kqueue_fd[MAX_THREADS]; // per-thread kqueue_fd
#include <sys/time.h>
#include <sys/types.h>
+#include <haproxy/activity.h>
#include <haproxy/api.h>
+#include <haproxy/fd.h>
+#include <haproxy/global.h>
#include <haproxy/ticks.h>
#include <haproxy/time.h>
-#include <haproxy/global.h>
-
-#include <haproxy/activity.h>
-#include <haproxy/fd.h>
-
#ifndef POLLRDHUP
/* POLLRDHUP was defined late in libc, and it appeared in kernel 2.6.17 */
#include <sys/time.h>
#include <sys/types.h>
+#include <haproxy/activity.h>
#include <haproxy/api.h>
+#include <haproxy/fd.h>
+#include <haproxy/global.h>
#include <haproxy/ticks.h>
#include <haproxy/time.h>
-#include <haproxy/global.h>
-
-#include <haproxy/activity.h>
-#include <haproxy/fd.h>
-
/* private data */
static int maxfd; /* # of the highest fd + 1 */
#include <haproxy/errors.h>
#include <haproxy/fcgi-app.h>
#include <haproxy/filters.h>
+#include <haproxy/global.h>
#include <haproxy/http_fetch.h>
#include <haproxy/http_htx.h>
#include <haproxy/log.h>
#include <haproxy/session.h>
#include <haproxy/tools.h>
-#include <haproxy/global.h>
/* Global list of all FCGI applications */
static struct fcgi_app *fcgi_apps = NULL;
* OTHER DEALINGS IN THE SOFTWARE.
*/
-#include <haproxy/fcgi.h>
#include <haproxy/buf.h>
+#include <haproxy/fcgi.h>
#include <haproxy/istbuf.h>
/* Encodes header of a FCGI record into the chunk <out>. It returns non-zero on
#include <errno.h>
#endif
-
#include <haproxy/api.h>
-#include <haproxy/global.h>
-
#include <haproxy/fd.h>
+#include <haproxy/global.h>
#include <haproxy/port_range.h>
+
struct fdtab *fdtab = NULL; /* array of all the file descriptors */
struct polled_mask *polled_mask = NULL; /* Array for the polled_mask of each fd */
struct fdinfo *fdinfo = NULL; /* less-often used infos for file descriptors */
#include <haproxy/acl.h>
#include <haproxy/action-t.h>
-#include <haproxy/arg.h>
#include <haproxy/api.h>
+#include <haproxy/arg.h>
#include <haproxy/cfgparse.h>
#include <haproxy/filters.h>
#include <haproxy/freq_ctr.h>
#include <haproxy/global.h>
#include <haproxy/http_rules.h>
#include <haproxy/log.h>
-#include <haproxy/sample.h>
-#include <haproxy/signal.h>
-#include <haproxy/thread.h>
#include <haproxy/pool.h>
#include <haproxy/proxy.h>
+#include <haproxy/sample.h>
#include <haproxy/session.h>
+#include <haproxy/signal.h>
#include <haproxy/spoe.h>
#include <haproxy/stream.h>
#include <haproxy/stream_interface.h>
#include <haproxy/task.h>
#include <haproxy/tcp_rules.h>
+#include <haproxy/thread.h>
#include <haproxy/time.h>
#include <haproxy/vars.h>
#include <haproxy/htx.h>
#include <haproxy/proxy-t.h>
#include <haproxy/stream.h>
-#include <haproxy/tools.h>
#include <haproxy/time.h>
+#include <haproxy/tools.h>
const char *trace_flt_id = "trace filter";
*/
#include <haproxy/api.h>
-#include <haproxy/tools.h>
-#include <haproxy/time.h>
#include <haproxy/freq_ctr.h>
+#include <haproxy/time.h>
+#include <haproxy/tools.h>
/* Read a frequency counter taking history into account for missing time in
* current period. Current second is sub-divided in 1000 chunks of one ms,
#include <haproxy/acl.h>
#include <haproxy/api.h>
+#include <haproxy/arg.h>
#include <haproxy/chunk.h>
+#include <haproxy/fd.h>
#include <haproxy/frontend.h>
+#include <haproxy/global.h>
#include <haproxy/http_ana.h>
#include <haproxy/log.h>
+#include <haproxy/proto_tcp.h>
#include <haproxy/proxy.h>
#include <haproxy/sample.h>
#include <haproxy/stream.h>
#include <haproxy/stream_interface.h>
#include <haproxy/task.h>
-#include <haproxy/tools.h>
#include <haproxy/time.h>
+#include <haproxy/tools.h>
-#include <haproxy/global.h>
-
-#include <haproxy/arg.h>
-#include <haproxy/fd.h>
-#include <haproxy/proto_tcp.h>
/* Finish a stream accept() for a proxy (TCP or HTTP). It returns a negative
* value in case of a critical failure which must cause the listener to be
#include <inttypes.h>
#include <haproxy/api.h>
-#include <haproxy/http.h>
+#include <haproxy/global.h>
#include <haproxy/h2.h>
#include <haproxy/http-hdr-t.h>
+#include <haproxy/http.h>
#include <haproxy/htx.h>
#include <import/ist.h>
-#include <haproxy/global.h>
+
struct h2_frame_definition h2_frame_definition[H2_FT_ENTRIES] = {
[H2_FT_DATA ] = { .dir = 3, .min_id = 1, .max_id = H2_MAX_STREAM_ID, .min_len = 0, .max_len = H2_MAX_FRAME_LEN, },
#include <systemd/sd-daemon.h>
#endif
-#include <haproxy/acl.h>
-#include <haproxy/auth.h>
-#include <haproxy/api.h>
#include <import/sha1.h>
+#include <haproxy/acl.h>
+#include <haproxy/activity.h>
+#include <haproxy/api.h>
+#include <haproxy/arg.h>
+#include <haproxy/auth.h>
#include <haproxy/base64.h>
+#include <haproxy/capture-t.h>
#include <haproxy/cfgparse.h>
#include <haproxy/chunk.h>
#include <haproxy/cli.h>
#include <haproxy/dns.h>
#include <haproxy/dynbuf.h>
#include <haproxy/errors.h>
+#include <haproxy/fd.h>
#include <haproxy/filters.h>
+#include <haproxy/global.h>
#include <haproxy/hlua.h>
#include <haproxy/http_rules.h>
-#include <haproxy/pool.h>
#include <haproxy/list.h>
#include <haproxy/listener.h>
#include <haproxy/log.h>
#include <haproxy/openssl-compat.h>
#include <haproxy/pattern.h>
#include <haproxy/peers.h>
+#include <haproxy/pool.h>
+#include <haproxy/protocol.h>
#include <haproxy/proxy.h>
-#include <haproxy/sample.h>
#include <haproxy/regex.h>
+#include <haproxy/sample.h>
#include <haproxy/server.h>
#include <haproxy/session.h>
#include <haproxy/signal.h>
#include <haproxy/ssl_sock.h>
#include <haproxy/stream.h>
-#include <haproxy/tools.h>
-#include <haproxy/time.h>
-#include <haproxy/uri_auth-t.h>
-#include <haproxy/version.h>
#include <haproxy/task.h>
#include <haproxy/thread.h>
+#include <haproxy/time.h>
+#include <haproxy/tools.h>
+#include <haproxy/uri_auth-t.h>
#include <haproxy/vars.h>
+#include <haproxy/version.h>
-#include <haproxy/capture-t.h>
-#include <haproxy/global.h>
-
-#include <haproxy/activity.h>
-#include <haproxy/arg.h>
-#include <haproxy/fd.h>
-#include <haproxy/protocol.h>
/* array of init calls for older platforms */
DECLARE_INIT_STAGES;
#error "Requires Lua 5.3 or later."
#endif
-#include <haproxy/applet.h>
-#include <haproxy/api.h>
#include <import/ebpttree.h>
+#include <haproxy/api.h>
+#include <haproxy/applet.h>
#include <haproxy/arg.h>
#include <haproxy/cfgparse.h>
#include <haproxy/channel.h>
#include <haproxy/cli.h>
#include <haproxy/connection.h>
-#include <haproxy/http_htx.h>
-#include <haproxy/thread.h>
-#include <haproxy/regex.h>
-#include <haproxy/xref.h>
#include <haproxy/h1.h>
#include <haproxy/hlua.h>
#include <haproxy/hlua_fcn.h>
#include <haproxy/http_ana.h>
#include <haproxy/http_fetch.h>
+#include <haproxy/http_htx.h>
#include <haproxy/http_rules.h>
#include <haproxy/log.h>
#include <haproxy/map.h>
#include <haproxy/pattern.h>
#include <haproxy/payload.h>
#include <haproxy/proxy-t.h>
+#include <haproxy/regex.h>
#include <haproxy/sample.h>
#include <haproxy/server-t.h>
#include <haproxy/session.h>
#include <haproxy/stream_interface.h>
#include <haproxy/task.h>
#include <haproxy/tcp_rules.h>
+#include <haproxy/thread.h>
#include <haproxy/tools.h>
#include <haproxy/vars.h>
+#include <haproxy/xref.h>
+
/* Lua uses longjmp to perform yield or throwing errors. This
* macro is used only for identifying the function that can
#include <haproxy/regex.h>
#include <haproxy/server.h>
#include <haproxy/stats.h>
-#include <haproxy/time.h>
-
#include <haproxy/stick_table.h>
+#include <haproxy/time.h>
/* Contains the class reference of the concat object. */
static int class_concat_ref;
#include <stdlib.h>
#include <string.h>
-#include <haproxy/tools.h>
+#include <import/ist.h>
+#include <haproxy/chunk.h>
+#include <haproxy/h2.h>
#include <haproxy/hpack-dec.h>
#include <haproxy/hpack-huff.h>
#include <haproxy/hpack-tbl.h>
-#include <haproxy/chunk.h>
-#include <haproxy/h2.h>
-#include <import/ist.h>
+#include <haproxy/tools.h>
#if defined(DEBUG_HPACK)
#include <stdlib.h>
#include <string.h>
+#include <import/ist.h>
#include <haproxy/hpack-enc.h>
#include <haproxy/http-hdr-t.h>
-#include <import/ist.h>
/*
* HPACK encoding: these tables were generated using gen-enc.c
#include <stdlib.h>
#include <string.h>
+#include <import/ist.h>
#include <haproxy/hpack-huff.h>
#include <haproxy/hpack-tbl.h>
-#include <import/ist.h>
/* static header table as in RFC7541 Appendix A. [0] unused. */
const struct http_hdr hpack_sht[HPACK_SHT_SIZE] = {
#include <time.h>
#include <haproxy/acl.h>
-#include <haproxy/auth.h>
#include <haproxy/api.h>
+#include <haproxy/arg.h>
+#include <haproxy/auth.h>
#include <haproxy/chunk.h>
#include <haproxy/http.h>
#include <haproxy/pattern.h>
#include <haproxy/tools.h>
#include <haproxy/version.h>
-#include <haproxy/arg.h>
-
/* We use the pre-parsed method if it is known, and store its number as an
* integer. If it is unknown, we use the pointer and the length.
#include <haproxy/acl.h>
#include <haproxy/action.h>
#include <haproxy/api.h>
+#include <haproxy/arg.h>
+#include <haproxy/capture-t.h>
#include <haproxy/cfgparse.h>
#include <haproxy/chunk.h>
#include <haproxy/global.h>
#include <haproxy/uri_auth-t.h>
#include <haproxy/version.h>
-#include <haproxy/capture-t.h>
-
-#include <haproxy/arg.h>
/* Release memory allocated by most of HTTP actions. Concretly, it releases
* <arg.http>.
#include <haproxy/acl.h>
#include <haproxy/action-t.h>
-#include <haproxy/backend.h>
#include <haproxy/api.h>
+#include <haproxy/backend.h>
#include <haproxy/base64.h>
#include <haproxy/capture-t.h>
#include <haproxy/channel.h>
#include <string.h>
#include <time.h>
-#include <haproxy/arg.h>
#include <haproxy/api.h>
+#include <haproxy/arg.h>
#include <haproxy/capture-t.h>
#include <haproxy/chunk.h>
#include <haproxy/http.h>
#include <string.h>
#include <time.h>
+#include <haproxy/api.h>
#include <haproxy/arg.h>
#include <haproxy/auth.h>
-#include <haproxy/api.h>
#include <haproxy/base64.h>
#include <haproxy/channel.h>
#include <haproxy/chunk.h>
#include <unistd.h>
#include <haproxy/api.h>
-#include <haproxy/global.h>
-#include <haproxy/http_fetch.h>
-#include <haproxy/log.h>
-#include <haproxy/regex.h>
-#include <haproxy/sample.h>
-
+#include <haproxy/arg.h>
#include <haproxy/cfgparse.h>
+#include <haproxy/global.h>
#include <haproxy/h1.h>
#include <haproxy/http.h>
+#include <haproxy/http_fetch.h>
#include <haproxy/http_htx.h>
#include <haproxy/htx.h>
+#include <haproxy/log.h>
+#include <haproxy/regex.h>
+#include <haproxy/sample.h>
-#include <haproxy/arg.h>
struct buffer http_err_chunks[HTTP_ERR_SIZE];
struct http_reply http_err_replies[HTTP_ERR_SIZE];
#include <haproxy/acl.h>
#include <haproxy/action.h>
#include <haproxy/api.h>
+#include <haproxy/arg.h>
+#include <haproxy/capture-t.h>
#include <haproxy/cfgparse.h>
#include <haproxy/chunk.h>
#include <haproxy/global.h>
#include <haproxy/http_rules.h>
#include <haproxy/log.h>
#include <haproxy/pool.h>
+#include <haproxy/sample.h>
#include <haproxy/tools.h>
#include <haproxy/version.h>
-#include <haproxy/capture-t.h>
-
-#include <haproxy/arg.h>
-#include <haproxy/sample.h>
-
/* List head of all known action keywords for "http-request" */
struct action_kw_list http_req_keywords = {
*/
#include <import/eb32tree.h>
-#include <haproxy/backend.h>
#include <haproxy/api.h>
+#include <haproxy/backend.h>
#include <haproxy/queue.h>
#include <haproxy/server-t.h>
#include <haproxy/tools.h>
*/
#include <import/eb32tree.h>
-#include <haproxy/backend.h>
#include <haproxy/api.h>
+#include <haproxy/backend.h>
#include <haproxy/queue.h>
#include <haproxy/server-t.h>
*/
#include <import/eb32tree.h>
-#include <haproxy/backend.h>
#include <haproxy/api.h>
+#include <haproxy/backend.h>
#include <haproxy/queue.h>
#include <haproxy/server-t.h>
*/
#include <import/eb32tree.h>
-#include <haproxy/backend.h>
#include <haproxy/api.h>
+#include <haproxy/backend.h>
#include <haproxy/queue.h>
#include <haproxy/server-t.h>
*/
#include <import/eb32tree.h>
-#include <haproxy/backend.h>
#include <haproxy/api.h>
+#include <haproxy/backend.h>
#include <haproxy/lb_map.h>
#include <haproxy/queue.h>
#include <haproxy/server-t.h>
#include <haproxy/cfgparse.h>
#include <haproxy/connection.h>
#include <haproxy/errors.h>
+#include <haproxy/fd.h>
+#include <haproxy/freq_ctr.h>
#include <haproxy/global.h>
#include <haproxy/list.h>
#include <haproxy/listener.h>
#include <haproxy/log.h>
+#include <haproxy/proto_sockpair.h>
+#include <haproxy/protocol-t.h>
+#include <haproxy/protocol.h>
+#include <haproxy/sample.h>
#include <haproxy/stream.h>
#include <haproxy/task.h>
-#include <haproxy/tools.h>
#include <haproxy/time.h>
+#include <haproxy/tools.h>
-#include <haproxy/protocol-t.h>
-
-#include <haproxy/fd.h>
-#include <haproxy/freq_ctr.h>
-#include <haproxy/protocol.h>
-#include <haproxy/proto_sockpair.h>
-#include <haproxy/sample.h>
/* List head of all known bind keywords */
static struct bind_kw_list bind_keywords = {
#include <sys/time.h>
#include <sys/uio.h>
-#include <haproxy/applet-t.h>
#include <haproxy/api.h>
+#include <haproxy/applet-t.h>
#include <haproxy/cli.h>
+#include <haproxy/fd.h>
#include <haproxy/frontend.h>
+#include <haproxy/global.h>
#include <haproxy/http.h>
#include <haproxy/log.h>
+#include <haproxy/ring.h>
+#include <haproxy/sample.h>
+#include <haproxy/sink.h>
#include <haproxy/ssl_sock.h>
#include <haproxy/stream.h>
#include <haproxy/stream_interface.h>
-#include <haproxy/tools.h>
#include <haproxy/time.h>
+#include <haproxy/tools.h>
#include <haproxy/version.h>
-#include <haproxy/global.h>
-
-#include <haproxy/fd.h>
-#include <haproxy/ring.h>
-#include <haproxy/sample.h>
-#include <haproxy/sink.h>
struct log_fmt {
char *name;
#include <haproxy/list.h>
#include <haproxy/mailers.h>
#include <haproxy/pool.h>
-#include <haproxy/tools.h>
-#include <haproxy/time.h>
-#include <haproxy/thread.h>
#include <haproxy/proxy-t.h>
#include <haproxy/server-t.h>
#include <haproxy/task.h>
#include <haproxy/tcpcheck.h>
+#include <haproxy/thread.h>
+#include <haproxy/time.h>
+#include <haproxy/tools.h>
struct mailers *mailers = NULL;
#include <stdio.h>
-#include <haproxy/applet-t.h>
#include <haproxy/api.h>
+#include <haproxy/applet-t.h>
+#include <haproxy/arg.h>
#include <haproxy/cli.h>
#include <haproxy/map.h>
#include <haproxy/pattern.h>
#include <haproxy/regex.h>
+#include <haproxy/sample.h>
#include <haproxy/stats-t.h>
#include <haproxy/stream_interface.h>
#include <haproxy/tools.h>
-#include <haproxy/arg.h>
-#include <haproxy/sample.h>
/* Parse an IPv4 or IPv6 address and store it into the sample.
* The output type is IPv4 or IPv6.
*
*/
+#include <import/ist.h>
+
#include <haproxy/api.h>
#include <haproxy/cfgparse.h>
#include <haproxy/connection.h>
#include <haproxy/errors.h>
-#include <haproxy/fcgi.h>
#include <haproxy/fcgi-app.h>
+#include <haproxy/fcgi.h>
#include <haproxy/h1.h>
#include <haproxy/h1_htx.h>
#include <haproxy/http_htx.h>
#include <haproxy/htx.h>
-#include <import/ist.h>
#include <haproxy/list.h>
#include <haproxy/log.h>
#include <haproxy/net_helper.h>
#include <haproxy/stream_interface.h>
#include <haproxy/trace.h>
+
/* FCGI Connection flags (32 bits) */
#define FCGI_CF_NONE 0x00000000
* 2 of the License, or (at your option) any later version.
*
*/
+#include <import/ebistree.h>
+
#include <haproxy/api.h>
-#include <haproxy/istbuf.h>
#include <haproxy/cfgparse.h>
#include <haproxy/connection.h>
#include <haproxy/h1.h>
#include <haproxy/h1_htx.h>
#include <haproxy/h2.h>
+#include <haproxy/http_htx.h>
#include <haproxy/htx.h>
-
-#include <import/ebistree.h>
-
+#include <haproxy/istbuf.h>
+#include <haproxy/log.h>
#include <haproxy/pipe-t.h>
#include <haproxy/proxy-t.h>
-
-#include <haproxy/http_htx.h>
-#include <haproxy/log.h>
#include <haproxy/session-t.h>
#include <haproxy/stream.h>
#include <haproxy/stream_interface.h>
#include <import/eb32tree.h>
#include <haproxy/api.h>
-#include <haproxy/istbuf.h>
#include <haproxy/cfgparse.h>
#include <haproxy/connection.h>
#include <haproxy/h1.h>
#include <haproxy/hpack-tbl.h>
#include <haproxy/http_htx.h>
#include <haproxy/htx.h>
+#include <haproxy/istbuf.h>
#include <haproxy/log.h>
#include <haproxy/net_helper.h>
#include <haproxy/session-t.h>
#include <string.h>
#include <sys/wait.h>
+#if defined(USE_SYSTEMD)
+#include <systemd/sd-daemon.h>
+#endif
+
#include <haproxy/api.h>
#include <haproxy/cfgparse.h>
#include <haproxy/cli.h>
#include <haproxy/version.h>
-#if defined(USE_SYSTEMD)
-#include <systemd/sd-daemon.h>
-#endif
-
static int exitcode = -1;
static int max_reloads = -1; /* number max of reloads a worker can have until they are killed */
#include <stdio.h>
#include <errno.h>
+#include <import/ebsttree.h>
+#include <import/lru.h>
+#include <import/xxhash.h>
+
#include <haproxy/api.h>
#include <haproxy/global.h>
#include <haproxy/log.h>
#include <haproxy/net_helper.h>
#include <haproxy/pattern.h>
#include <haproxy/regex.h>
-#include <haproxy/tools.h>
-
#include <haproxy/sample.h>
+#include <haproxy/tools.h>
-#include <import/ebsttree.h>
-#include <import/lru.h>
-#include <import/xxhash.h>
char *pat_match_names[PAT_MATCH_NUM] = {
[PAT_MATCH_FOUND] = "found",
#include <haproxy/acl.h>
#include <haproxy/api.h>
+#include <haproxy/arg.h>
#include <haproxy/channel.h>
#include <haproxy/connection.h>
+#include <haproxy/htx.h>
#include <haproxy/net_helper.h>
-#include <haproxy/payload.h>
#include <haproxy/pattern.h>
-#include <haproxy/htx.h>
-#include <haproxy/arg.h>
+#include <haproxy/payload.h>
#include <haproxy/sample.h>
#include <sys/stat.h>
#include <sys/types.h>
-#include <haproxy/applet.h>
#include <haproxy/api.h>
+#include <haproxy/applet.h>
#include <haproxy/channel.h>
#include <haproxy/cli.h>
#include <haproxy/dict.h>
#include <haproxy/obj_type-t.h>
#include <haproxy/peers.h>
#include <haproxy/proxy.h>
-#include <haproxy/task.h>
#include <haproxy/session-t.h>
#include <haproxy/signal.h>
#include <haproxy/stats-t.h>
#include <haproxy/stick_table.h>
#include <haproxy/stream.h>
#include <haproxy/stream_interface.h>
+#include <haproxy/task.h>
+#include <haproxy/thread.h>
#include <haproxy/time.h>
#include <haproxy/tools.h>
-#include <haproxy/thread.h>
/*******************************/
#include <haproxy/api.h>
#include <haproxy/global.h>
-#include <haproxy/thread.h>
+#include <haproxy/pipe-t.h>
#include <haproxy/pool.h>
+#include <haproxy/thread.h>
-#include <haproxy/pipe-t.h>
DECLARE_STATIC_POOL(pool_head_pipe, "pipe", sizeof(struct pipe));
*/
#include <errno.h>
-#include <haproxy/applet-t.h>
+#include <haproxy/activity-t.h>
#include <haproxy/api.h>
+#include <haproxy/applet-t.h>
#include <haproxy/cfgparse.h>
#include <haproxy/channel.h>
#include <haproxy/cli.h>
#include <haproxy/errors.h>
#include <haproxy/global.h>
-
-#include <haproxy/thread.h>
-#include <haproxy/pool.h>
#include <haproxy/list.h>
+#include <haproxy/pool.h>
#include <haproxy/stats-t.h>
#include <haproxy/stream_interface.h>
+#include <haproxy/thread.h>
#include <haproxy/tools.h>
-#include <haproxy/activity-t.h>
-
#ifdef CONFIG_HAP_LOCAL_POOLS
/* These are the most common pools, expected to be initialized first. These
#include <haproxy/api.h>
#include <haproxy/connection.h>
#include <haproxy/errors.h>
+#include <haproxy/fd.h>
+#include <haproxy/freq_ctr.h>
#include <haproxy/global.h>
#include <haproxy/list.h>
#include <haproxy/listener.h>
-#include <haproxy/tools.h>
+#include <haproxy/protocol.h>
#include <haproxy/time.h>
+#include <haproxy/tools.h>
#include <haproxy/version.h>
-#include <haproxy/fd.h>
-#include <haproxy/freq_ctr.h>
-#include <haproxy/protocol.h>
static void sockpair_add_listener(struct listener *listener, int port);
static int sockpair_bind_listener(struct listener *listener, char *errmsg, int errlen);
#include <haproxy/action-t.h>
#include <haproxy/api.h>
+#include <haproxy/arg.h>
#include <haproxy/channel.h>
#include <haproxy/connection.h>
#include <haproxy/errors.h>
+#include <haproxy/fd.h>
#include <haproxy/global.h>
#include <haproxy/http_rules.h>
#include <haproxy/list.h>
#include <haproxy/listener.h>
#include <haproxy/log.h>
+#include <haproxy/namespace.h>
+#include <haproxy/port_range.h>
+#include <haproxy/proto_tcp.h>
+#include <haproxy/protocol.h>
#include <haproxy/proxy-t.h>
#include <haproxy/sample.h>
#include <haproxy/server.h>
#include <haproxy/stream-t.h>
+#include <haproxy/tcp_rules.h>
#include <haproxy/tools.h>
-#include <haproxy/namespace.h>
-#include <haproxy/arg.h>
-#include <haproxy/fd.h>
-#include <haproxy/port_range.h>
-#include <haproxy/protocol.h>
-#include <haproxy/proto_tcp.h>
-#include <haproxy/tcp_rules.h>
static int tcp_bind_listeners(struct protocol *proto, char *errmsg, int errlen);
static int tcp_bind_listener(struct listener *listener, char *errmsg, int errlen);
*
*/
-#include <haproxy/fd-t.h>
-#include <haproxy/proto_udp-t.h>
-
#include <haproxy/fd.h>
+#include <haproxy/proto_udp-t.h>
/* datagram handler callback */
void dgram_fd_handler(int fd)
#include <haproxy/api.h>
#include <haproxy/connection.h>
#include <haproxy/errors.h>
+#include <haproxy/fd.h>
#include <haproxy/global.h>
#include <haproxy/list.h>
#include <haproxy/listener.h>
#include <haproxy/log.h>
-#include <haproxy/tools.h>
+#include <haproxy/protocol.h>
#include <haproxy/time.h>
+#include <haproxy/tools.h>
#include <haproxy/version.h>
-#include <haproxy/fd.h>
-#include <haproxy/protocol.h>
static int uxst_bind_listener(struct listener *listener, char *errmsg, int errlen);
static int uxst_bind_listeners(struct protocol *proto, char *errmsg, int errlen);
#include <haproxy/api.h>
#include <haproxy/errors.h>
#include <haproxy/list.h>
+#include <haproxy/protocol.h>
#include <haproxy/tools.h>
-#include <haproxy/protocol.h>
/* List head of all registered protocols */
static struct list protocols = LIST_HEAD_INIT(protocols);
#include <sys/socket.h>
#include <sys/stat.h>
-#include <haproxy/applet-t.h>
+#include <import/eb32tree.h>
+#include <import/ebistree.h>
+
#include <haproxy/api.h>
+#include <haproxy/applet-t.h>
+#include <haproxy/capture-t.h>
#include <haproxy/cfgparse.h>
#include <haproxy/cli.h>
#include <haproxy/errors.h>
+#include <haproxy/fd.h>
#include <haproxy/filters.h>
#include <haproxy/global.h>
#include <haproxy/http_ana.h>
#include <haproxy/obj_type-t.h>
#include <haproxy/peers.h>
#include <haproxy/pool.h>
+#include <haproxy/proto_tcp.h>
#include <haproxy/proxy.h>
#include <haproxy/server-t.h>
+#include <haproxy/signal.h>
#include <haproxy/stats-t.h>
#include <haproxy/stream.h>
#include <haproxy/stream_interface.h>
#include <haproxy/task.h>
#include <haproxy/time.h>
-#include <import/eb32tree.h>
-#include <import/ebistree.h>
-
-#include <haproxy/capture-t.h>
-
-#include <haproxy/fd.h>
-#include <haproxy/proto_tcp.h>
-#include <haproxy/signal.h>
-
int listeners; /* # of proxy listeners, set by cfgparse */
struct proxy *proxies_list = NULL; /* list of all existing proxies */
*/
#include <import/eb32tree.h>
-#include <haproxy/backend.h>
#include <haproxy/api.h>
+#include <haproxy/backend.h>
#include <haproxy/http_rules.h>
#include <haproxy/pool.h>
#include <haproxy/queue.h>
#include <haproxy/stream_interface.h>
#include <haproxy/task.h>
#include <haproxy/tcp_rules.h>
-#include <haproxy/time.h>
#include <haproxy/thread.h>
+#include <haproxy/time.h>
#define NOW_OFFSET_BOUNDARY() ((now_ms - (TIMER_LOOK_BACK >> 12)) & 0xfffff)
#include <sys/socket.h>
#include <sys/stat.h>
#include <sys/types.h>
-
#include <netinet/tcp.h>
#include <haproxy/api.h>
#include <haproxy/buf.h>
#include <haproxy/connection.h>
#include <haproxy/errors.h>
+#include <haproxy/fd.h>
+#include <haproxy/freq_ctr.h>
#include <haproxy/global.h>
+#include <haproxy/pipe.h>
#include <haproxy/stream_interface.h>
-#include <haproxy/tools.h>
#include <haproxy/ticks.h>
#include <haproxy/time.h>
-
-#include <haproxy/fd.h>
-#include <haproxy/freq_ctr.h>
-#include <haproxy/pipe.h>
+#include <haproxy/tools.h>
#if defined(USE_LINUX_SPLICE)
*/
#include <stdlib.h>
-#include <haproxy/applet.h>
#include <haproxy/api.h>
+#include <haproxy/applet.h>
#include <haproxy/buf.h>
#include <haproxy/cli.h>
-#include <haproxy/thread.h>
#include <haproxy/ring.h>
#include <haproxy/stream_interface.h>
+#include <haproxy/thread.h>
/* Creates and returns a ring buffer of size <size> bytes. Returns NULL on
* allocation failure.
#include <arpa/inet.h>
#include <stdio.h>
-#include <haproxy/api.h>
+#include <import/sha1.h>
+#include <import/xxhash.h>
+#include <haproxy/api.h>
+#include <haproxy/arg.h>
#include <haproxy/auth.h>
+#include <haproxy/base64.h>
#include <haproxy/buf.h>
#include <haproxy/chunk.h>
#include <haproxy/errors.h>
#include <haproxy/proxy.h>
#include <haproxy/regex.h>
#include <haproxy/sample.h>
+#include <haproxy/sink.h>
+#include <haproxy/stick_table.h>
#include <haproxy/tools.h>
#include <haproxy/uri_auth-t.h>
#include <haproxy/vars.h>
-#include <haproxy/base64.h>
-
-#include <haproxy/arg.h>
-#include <haproxy/sink.h>
-#include <haproxy/stick_table.h>
-
-#include <import/sha1.h>
-#include <import/xxhash.h>
/* sample type names */
const char *smp_to_type[SMP_TYPES] = {
*
*/
+#include <netinet/tcp.h>
#include <ctype.h>
#include <errno.h>
+#include <import/ebsttree.h>
#include <import/xxhash.h>
+#include <haproxy/api.h>
#include <haproxy/applet-t.h>
#include <haproxy/backend.h>
-#include <haproxy/api.h>
#include <haproxy/cfgparse.h>
#include <haproxy/check.h>
#include <haproxy/cli.h>
#include <haproxy/log.h>
#include <haproxy/mailers.h>
#include <haproxy/namespace.h>
+#include <haproxy/port_range.h>
+#include <haproxy/protocol.h>
#include <haproxy/queue.h>
#include <haproxy/sample.h>
#include <haproxy/server.h>
#include <haproxy/tcpcheck.h>
#include <haproxy/time.h>
-#include <haproxy/port_range.h>
-#include <haproxy/protocol.h>
-#include <netinet/tcp.h>
-
-#include <import/ebsttree.h>
static void srv_update_status(struct server *s);
static void srv_update_state(struct server *srv, int version, char **params);
#include <haproxy/errors.h>
#include <haproxy/list.h>
#include <haproxy/log.h>
-#include <haproxy/time.h>
#include <haproxy/ring.h>
#include <haproxy/signal.h>
#include <haproxy/sink.h>
#include <haproxy/stream_interface.h>
+#include <haproxy/time.h>
struct list sink_list = LIST_HEAD_INIT(sink_list);
#include <sys/stat.h>
#include <sys/types.h>
+#include <import/ebsttree.h>
+
#include <haproxy/base64.h>
#include <haproxy/channel.h>
#include <haproxy/cli.h>
#include <haproxy/stream_interface.h>
#include <haproxy/tools.h>
-#include <import/ebsttree.h>
-
/* Uncommitted CKCH transaction */
static struct {
* 2 of the License, or (at your option) any later version.
*
*/
+#include <sys/stat.h>
+#include <sys/types.h>
+#include <dirent.h>
#include <errno.h>
#include <stdlib.h>
#include <string.h>
#include <syslog.h>
-#include <sys/stat.h>
-#include <sys/types.h>
+
+#include <import/ebpttree.h>
+#include <import/ebsttree.h>
#include <haproxy/channel.h>
#include <haproxy/cli.h>
#include <haproxy/stream_interface.h>
#include <haproxy/tools.h>
-#include <dirent.h>
-#include <import/ebpttree.h>
-#include <import/ebsttree.h>
/* release ssl bind conf */
void ssl_sock_free_ssl_conf(struct ssl_bind_conf *conf)
#include <haproxy/acl.h>
#include <haproxy/api.h>
+#include <haproxy/arg.h>
#include <haproxy/buf-t.h>
#include <haproxy/obj_type.h>
#include <haproxy/openssl-compat.h>
#include <haproxy/ssl_utils.h>
#include <haproxy/tools.h>
-#include <haproxy/arg.h>
-
/***** Below are some sample fetching functions for ACL/patterns *****/
#include <netdb.h>
#include <netinet/tcp.h>
-#include <haproxy/api.h>
+#include <import/ebpttree.h>
+#include <import/ebsttree.h>
#include <import/lru.h>
#include <import/xxhash.h>
-#include <haproxy/dynbuf.h>
+#include <haproxy/api.h>
+#include <haproxy/arg.h>
+#include <haproxy/base64.h>
#include <haproxy/channel.h>
#include <haproxy/chunk.h>
#include <haproxy/cli.h>
#include <haproxy/connection.h>
+#include <haproxy/dynbuf.h>
#include <haproxy/errors.h>
+#include <haproxy/fd.h>
+#include <haproxy/freq_ctr.h>
#include <haproxy/frontend.h>
#include <haproxy/global.h>
#include <haproxy/http_rules.h>
#include <haproxy/log.h>
#include <haproxy/openssl-compat.h>
#include <haproxy/pattern-t.h>
+#include <haproxy/proto_tcp.h>
#include <haproxy/proxy.h>
#include <haproxy/server.h>
#include <haproxy/shctx.h>
#include <haproxy/stream-t.h>
#include <haproxy/stream_interface.h>
#include <haproxy/task.h>
-#include <haproxy/tools.h>
#include <haproxy/ticks.h>
#include <haproxy/time.h>
-#include <haproxy/base64.h>
+#include <haproxy/tools.h>
#include <haproxy/vars.h>
-#include <import/ebpttree.h>
-#include <import/ebsttree.h>
-
-#include <haproxy/arg.h>
-#include <haproxy/fd.h>
-#include <haproxy/freq_ctr.h>
-#include <haproxy/proto_tcp.h>
/* ***** READ THIS before adding code here! *****
*
#include <sys/stat.h>
#include <sys/types.h>
+#include <haproxy/api.h>
#include <haproxy/applet-t.h>
#include <haproxy/backend.h>
-#include <haproxy/api.h>
+#include <haproxy/base64.h>
#include <haproxy/cfgparse.h>
#include <haproxy/channel.h>
#include <haproxy/check.h>
#include <haproxy/debug.h>
#include <haproxy/dns.h>
#include <haproxy/errors.h>
+#include <haproxy/fd.h>
+#include <haproxy/freq_ctr.h>
#include <haproxy/frontend.h>
#include <haproxy/global.h>
#include <haproxy/http.h>
#include <haproxy/http_htx.h>
#include <haproxy/htx.h>
-#include <haproxy/pool.h>
#include <haproxy/list.h>
-#include <haproxy/log.h>
#include <haproxy/listener.h>
+#include <haproxy/log.h>
#include <haproxy/map-t.h>
#include <haproxy/pattern-t.h>
+#include <haproxy/pipe.h>
+#include <haproxy/pool.h>
#include <haproxy/proxy.h>
#include <haproxy/server.h>
#include <haproxy/session.h>
#include <haproxy/stream.h>
#include <haproxy/stream_interface.h>
#include <haproxy/task.h>
-#include <haproxy/tools.h>
#include <haproxy/ticks.h>
#include <haproxy/time.h>
+#include <haproxy/tools.h>
#include <haproxy/uri_auth-t.h>
#include <haproxy/version.h>
-#include <haproxy/base64.h>
-#include <haproxy/fd.h>
-#include <haproxy/freq_ctr.h>
-#include <haproxy/pipe.h>
/* status codes available for the stats admin page (strictly 4 chars length) */
const char *stat_status_codes[STAT_STATUS_SIZE] = {
#include <string.h>
#include <errno.h>
+#include <import/ebmbtree.h>
+#include <import/ebsttree.h>
+#include <import/ebistree.h>
+
#include <haproxy/api.h>
+#include <haproxy/arg.h>
#include <haproxy/cfgparse.h>
#include <haproxy/cli.h>
#include <haproxy/errors.h>
#include <haproxy/global.h>
#include <haproxy/http_rules.h>
-#include <haproxy/pool.h>
#include <haproxy/list.h>
#include <haproxy/log.h>
#include <haproxy/net_helper.h>
#include <haproxy/peers.h>
+#include <haproxy/pool.h>
+#include <haproxy/proto_tcp.h>
#include <haproxy/proxy.h>
+#include <haproxy/sample.h>
#include <haproxy/stats-t.h>
+#include <haproxy/stick_table.h>
#include <haproxy/stream.h>
#include <haproxy/stream_interface.h>
#include <haproxy/task.h>
#include <haproxy/tcp_rules.h>
-#include <haproxy/tools.h>
#include <haproxy/time.h>
+#include <haproxy/tools.h>
-#include <import/ebmbtree.h>
-#include <import/ebsttree.h>
-#include <import/ebistree.h>
-
-#include <haproxy/arg.h>
-#include <haproxy/proto_tcp.h>
-#include <haproxy/sample.h>
-#include <haproxy/stick_table.h>
/* structure used to return a table key built from a sample */
static THREAD_LOCAL struct stktable_key static_table_key;
#include <haproxy/acl.h>
#include <haproxy/action.h>
+#include <haproxy/activity.h>
+#include <haproxy/api.h>
#include <haproxy/applet.h>
+#include <haproxy/arg.h>
#include <haproxy/backend.h>
-#include <haproxy/api.h>
#include <haproxy/capture.h>
#include <haproxy/cfgparse.h>
#include <haproxy/channel.h>
#include <haproxy/dict.h>
#include <haproxy/dns.h>
#include <haproxy/dynbuf.h>
+#include <haproxy/fd.h>
#include <haproxy/filters.h>
+#include <haproxy/freq_ctr.h>
#include <haproxy/frontend.h>
#include <haproxy/global.h>
#include <haproxy/hlua.h>
#include <haproxy/http_ana.h>
#include <haproxy/http_rules.h>
-#include <haproxy/istbuf.h>
-#include <haproxy/thread.h>
#include <haproxy/htx.h>
+#include <haproxy/istbuf.h>
#include <haproxy/log.h>
+#include <haproxy/pipe.h>
#include <haproxy/pool.h>
#include <haproxy/proxy.h>
#include <haproxy/queue.h>
#include <haproxy/server.h>
#include <haproxy/session.h>
#include <haproxy/stats-t.h>
+#include <haproxy/stick_table.h>
#include <haproxy/stream.h>
#include <haproxy/stream_interface.h>
#include <haproxy/task.h>
#include <haproxy/tcp_rules.h>
+#include <haproxy/thread.h>
#include <haproxy/trace.h>
#include <haproxy/vars.h>
-#include <haproxy/activity.h>
-#include <haproxy/arg.h>
-#include <haproxy/fd.h>
-#include <haproxy/freq_ctr.h>
-#include <haproxy/pipe.h>
-#include <haproxy/stick_table.h>
DECLARE_POOL(pool_head_stream, "stream", sizeof(struct stream));
DECLARE_POOL(pool_head_uniqueid, "uniqueid", UNIQUEID_LEN);
#include <sys/stat.h>
#include <sys/types.h>
-#include <haproxy/applet.h>
#include <haproxy/api.h>
+#include <haproxy/applet.h>
#include <haproxy/channel.h>
#include <haproxy/connection.h>
#include <haproxy/dynbuf.h>
#include <haproxy/http_htx.h>
+#include <haproxy/pipe-t.h>
+#include <haproxy/pipe.h>
#include <haproxy/proxy.h>
#include <haproxy/stream-t.h>
#include <haproxy/stream_interface.h>
-#include <haproxy/tools.h>
+#include <haproxy/task.h>
#include <haproxy/ticks.h>
#include <haproxy/time.h>
-#include <haproxy/task.h>
-
-#include <haproxy/pipe.h>
+#include <haproxy/tools.h>
-#include <haproxy/pipe-t.h>
/* functions used by default on a detached stream-interface */
static void stream_int_shutr(struct stream_interface *si);
#include <string.h>
+#include <import/eb32sctree.h>
+#include <import/eb32tree.h>
+
#include <haproxy/api.h>
-#include <haproxy/pool.h>
+#include <haproxy/fd.h>
+#include <haproxy/freq_ctr.h>
#include <haproxy/list.h>
+#include <haproxy/pool.h>
#include <haproxy/stream.h>
#include <haproxy/task.h>
-#include <haproxy/tools.h>
#include <haproxy/time.h>
-#include <import/eb32sctree.h>
-#include <import/eb32tree.h>
+#include <haproxy/tools.h>
-#include <haproxy/fd.h>
-#include <haproxy/freq_ctr.h>
DECLARE_POOL(pool_head_task, "task", sizeof(struct task));
DECLARE_POOL(pool_head_tasklet, "tasklet", sizeof(struct tasklet));
*/
#include <haproxy/acl.h>
#include <haproxy/action.h>
-#include <haproxy/arg-t.h>
#include <haproxy/api.h>
+#include <haproxy/arg-t.h>
#include <haproxy/capture-t.h>
#include <haproxy/cfgparse.h>
#include <haproxy/channel.h>
#include <haproxy/stream-t.h>
#include <haproxy/stream_interface.h>
#include <haproxy/tcp_rules.h>
-#include <haproxy/tools.h>
#include <haproxy/ticks.h>
#include <haproxy/time.h>
+#include <haproxy/tools.h>
#include <haproxy/trace.h>
#include <haproxy/istbuf.h>
#include <haproxy/list.h>
#include <haproxy/log.h>
-#include <haproxy/regex.h>
-#include <haproxy/tools.h>
-#include <haproxy/time.h>
#include <haproxy/protocol.h>
#include <haproxy/proxy-t.h>
+#include <haproxy/regex.h>
+#include <haproxy/sample.h>
#include <haproxy/server.h>
#include <haproxy/ssl_sock.h>
-#include <haproxy/sample.h>
#include <haproxy/task.h>
#include <haproxy/tcpcheck.h>
+#include <haproxy/time.h>
+#include <haproxy/tools.h>
#include <haproxy/vars.h>
#endif
#include <haproxy/cfgparse.h>
+#include <haproxy/fd.h>
+#include <haproxy/global.h>
#include <haproxy/thread.h>
#include <haproxy/tools.h>
-#include <haproxy/global.h>
-#include <haproxy/fd.h>
struct thread_info ha_thread_info[MAX_THREADS] = { };
THREAD_LOCAL struct thread_info *ti = &ha_thread_info[0];
#include <sys/time.h>
#include <haproxy/api.h>
-#include <haproxy/tools.h>
#include <haproxy/time.h>
+#include <haproxy/tools.h>
THREAD_LOCAL unsigned int ms_left_scaled; /* milliseconds left for current second (0..2^32-1) */
THREAD_LOCAL unsigned int now_ms; /* internal date in milliseconds (may wrap) */
#include <netinet/in.h>
#include <arpa/inet.h>
-#include <import/eb32tree.h>
#include <import/eb32sctree.h>
+#include <import/eb32tree.h>
#include <haproxy/api.h>
#include <haproxy/chunk.h>
#include <haproxy/hlua.h>
#include <haproxy/listener.h>
#include <haproxy/namespace.h>
+#include <haproxy/proto_udp.h>
#include <haproxy/ssl_sock.h>
#include <haproxy/stream_interface.h>
#include <haproxy/task.h>
#include <haproxy/tools.h>
-#include <haproxy/proto_udp.h>
/* This macro returns false if the test __x is false. Many
* of the following parsing function must be abort the processing
#include <ctype.h>
-#include <haproxy/arg.h>
#include <haproxy/api.h>
+#include <haproxy/arg.h>
#include <haproxy/cfgparse.h>
#include <haproxy/check.h>
#include <haproxy/global.h>
#include <haproxy/log.h>
#include <haproxy/sample.h>
#include <haproxy/stream-t.h>
-#include <haproxy/tcpcheck.h>
#include <haproxy/tcp_rules.h>
+#include <haproxy/tcpcheck.h>
#include <haproxy/vars.h>
#include <stdarg.h>
#include <haproxy/api.h>
+#include <haproxy/arg.h>
#include <haproxy/buf-t.h>
#include <haproxy/cfgparse.h>
#include <haproxy/chunk.h>
#include <haproxy/http_fetch.h>
#include <haproxy/http_htx.h>
#include <haproxy/log.h>
-#include <haproxy/arg.h>
#include <haproxy/sample.h>
-#include <import/ebsttree.h>
#include <import/ebmbtree.h>
+#include <import/ebsttree.h>
#include <wurfl/wurfl.h>