haproxy/src
Krzysztof Oledzki 336d475d13 [MEDIUM]: Inversion for options
This patch adds a possibility to invert most of available options by
introducing the "no" keyword, available as an additional prefix.
If it is found arguments are shifted left and an additional flag (inv)
is set.

It allows to use all options from a current defaults section, except
the selected ones, for example:

-- cut here --
defaults
        contimeout      4200
        clitimeout      50000
        srvtimeout      40000
        option contstats

listen stats 1.2.3.4:80
	no option contstats
-- cut here --

Currenly inversion works only with the "option" keyword.

The patch also moves last_checks calculation at the end of the readcfgfile()
function and changes "PR_O_FORCE_CLO | PR_O_HTTP_CLOSE" into "PR_O_FORCE_CLO"
in cfg_opts so it is possible to invert forceclose without breaking httpclose
(and vice versa) and to invert tcpsplice in one proxy but to keep a proper
last_checks value when tcpsplice is used in another proxy. Now, the code
checks for PR_O_FORCE_CLO everywhere it checks for PR_O_HTTP_CLOSE.

I also decided to depreciate "redisp" and "redispatch" keywords as it is IMHO
better to use "option redispatch" which can be inverted.

Some useful documentation were added and at the same time I sorted
(alfabetically) all valid options both in the code and the documentation.
2007-12-27 11:52:06 +01:00
..
acl.c [MEDIUM] restrict the set of allowed characters for identifiers 2007-12-02 18:45:09 +01:00
appsession.c [MAJOR] remove files distributed under an obscure license 2007-09-09 21:56:53 +02:00
backend.c [BUG] transparent proxy address was ignored in backend 2007-12-14 19:54:43 +01:00
base64.c [CLEANUP] included common/version.h everywhere 2006-06-29 18:54:54 +02:00
buffers.c [MEDIUM] ensure we never overflow in chunk_printf() 2007-09-09 21:09:28 +02:00
cfgparse.c [MEDIUM]: Inversion for options 2007-12-27 11:52:06 +01:00
checks.c [MEDIUM] slowstart: ensure we don't start with a null weight 2007-12-03 02:04:00 +01:00
client.c [CLEANUP] grouped all timeouts in one structure 2007-12-03 01:38:36 +01:00
cttproxy.c [MEDIUM] check for cttproxy support when required 2007-03-24 17:24:39 +01:00
dumpstats.c [STATS] report the number of times each server was selected 2007-12-05 10:34:49 +01:00
eb32tree.c [MINOR] merge ebtree version 3.0 2007-11-28 14:20:44 +01:00
eb64tree.c [MINOR] merge ebtree version 3.0 2007-11-28 14:20:44 +01:00
ebpttree.c [MINOR] merge ebtree version 3.0 2007-11-28 14:20:44 +01:00
ebtree.c [MINOR] merge ebtree version 3.0 2007-11-28 14:20:44 +01:00
ev_epoll.c [MEDIUM] limit the number of events returned by *poll* 2007-06-03 17:16:49 +02:00
ev_kqueue.c [MEDIUM] limit the number of events returned by *poll* 2007-06-03 17:16:49 +02:00
ev_poll.c [BUG] fix null timeouts in *poll-based pollers 2007-05-14 02:02:04 +02:00
ev_select.c [MINOR] allow null timeouts for past events in select 2007-05-14 03:16:06 +02:00
ev_sepoll.c [MAJOR] spec I/O: fix allocations of spec entries for an FD 2007-09-09 21:09:29 +02:00
fd.c [MAJOR] auto-registering of pollers at load time 2007-04-16 00:25:25 +02:00
haproxy.c [BUG] hot reconfiguration failed because of a wrong error check 2007-12-20 23:09:54 +01:00
hdr_idx.c [MAJOR] huge rework of the HTTP request FSM 2007-01-21 19:16:41 +01:00
log.c [BUILD] fix build on Solaris due to recent log changes 2007-12-06 00:53:51 +01:00
memory.c [BUG] fix segfault at exit when using captures 2007-06-16 23:19:53 +02:00
proto_http.c [MEDIUM]: Inversion for options 2007-12-27 11:52:06 +01:00
proto_tcp.c [MAJOR] create proto_tcp and move initialization of proxy listeners 2007-11-04 22:42:49 +01:00
proto_uxst.c [MEDIUM] continous statistics 2007-11-26 20:21:47 +01:00
protocols.c [MINOR] add a generic unbind_all_listeners() primitive 2007-11-04 22:42:49 +01:00
proxy.c [CLEANUP] grouped all timeouts in one structure 2007-12-03 01:38:36 +01:00
queue.c [MEDIUM] implement the slowstart parameter for servers 2007-11-30 17:42:05 +01:00
rbtree.c [MINOR] imported the rbtree function from Linux kernel 2007-01-07 02:12:57 +01:00
regex.c [CLEANUP] shut warnings 'is*' macros from ctype.h on solaris 2007-06-17 21:51:38 +02:00
senddata.c [MEDIUM] moved stats and buffer generic functions to new files 2007-10-18 14:12:21 +02:00
server.c [MEDIUM] stats: report server and backend cumulated downtime 2007-10-22 21:36:23 +02:00
session.c [OPTIM] small optimization on session_process_counters() 2007-11-26 20:22:47 +01:00
sessionhash.c [BUG] fix segfault on exit in new appsession code 2007-10-15 20:08:16 +02:00
standard.c [BUILD] fix build on Solaris due to recent log changes 2007-12-06 00:53:51 +01:00
stream_sock.c [MEDIUM] moved the sockaddr pointer to the fdtab structure 2007-10-15 17:14:01 +02:00
task.c Merge branch 'pools' into merge-pools 2007-05-14 02:11:56 +02:00
time.c [BUILD] fix 2 minor issues on AIX 2007-11-30 18:38:35 +01:00
uri_auth.c [MINOR] report haproxy's version by default on the stats page 2007-10-15 10:05:11 +02:00