Changes since version 1.5-dev22 : Baptiste Assmann (1): BUG/MINOR: tcpcheck connect wrong behavior Bhaskar Maddala (1): MINOR: stats: Enhancement to stats page to provide information of last session time. Cyril Bonté (2): BUG/MEDIUM: peers: fix key consistency for integer stick tables DOC: fix a typo on http-server-close and encapsulate options with double-quotes Dirkjan Bussink (1): MEDIUM: ssl: Use ALPN support as it will be available in OpenSSL 1.0.2 Joshua M. Clulow (1): BUG/MINOR: raw_sock: also consider ENOTCONN in addition to EAGAIN for recv() Julien Vehent (1): DOC: lowercase format string in unique-id Lukas Tribus (1): MINOR: set IP_FREEBIND on IPv6 sockets in transparent mode Thierry FOURNIER (61): BUG/MEDIUM: map: The map parser includes blank lines. BUG/MINOR: log: The log of quotted capture header has been terminated by 2 quotes. MINOR: standard: add function "encode_chunk" BUG/MINOR: http: fix encoding of samples used in http headers MINOR: sample: add hex converter MEDIUM: sample: change the behavior of the bin2str cast MAJOR: auth: Change the internal authentication system. MEDIUM: acl/pattern: standardisation "of pat_parse_int()" and "pat_parse_dotted_ver()" MEDIUM: pattern: The pattern parser no more uses and just takes one string. MEDIUM: pattern: Change the prototype of the function pattern_register(). CONTRIB: ip6range: add a network IPv6 range to mask converter MINOR: pattern: separe list element from the data part. MEDIUM: pattern: add indexation function. MEDIUM: pattern: The parse functions just return "struct pattern" without memory allocation MINOR: pattern: Rename "pat_idx_elt" to "pattern_tree" MINOR: sample: dont call the sample cast function "c_none" MINOR: standard: Add function for converting cidr to network mask. MEDIUM: sample: Remove types SMP_T_CSTR and SMP_T_CBIN, replace it by SMP_F_CONST flags MEDIUM: sample/http_proto: Add new type called method MINOR: dumpstats: Group map inline help MEDIUM: pattern: The function pattern_exec_match() returns "struct pattern" if the patten match. MINOR: dumpstats: change map inline sentences MINOR: dumpstats: change the "get map" display management MINOR: map/dumpstats: The cli cmd "get map ..." display the "int" format. MEDIUM: pattern: The match function browse itself the list or the tree. MEDIUM: pattern: Index IPv6 addresses in a tree. MEDIUM: pattern: add delete functions MEDIUM: pattern: add prune function MEDIUM: pattern: add sample lookup function. MEDIUM: pattern/dumpstats: The function pattern_lookup() is no longer used MINOR: map/pattern: The sample parser is stored in the pattern MAJOR: pattern/map: Extends the map edition system in the patterns MEDIUM: pattern: merge same pattern MEDIUM: pattern: The expected type is stored in the pattern head, and conversion is executed once. MINOR: pattern: Each pattern is identified by unique id. MINOR: pattern/acl: Each pattern of each acl can be load with specified id MINOR: pattern: The function "pattern_register()" is no longer used. MINOR: pattern: Merge function pattern_add() with pat_ref_push(). MINOR: pattern: store configuration reference for each acl or map pattern. MINOR: pattern: Each pattern expression element store the reference struct. MINOR: dumpstats: display the reference for th key/pattern and value. MEDIUM: pattern: delete() function uses the pat_ref_elt to find the element to be removed MEDIUM: pattern_find_smp: functions find_smp uses the pat_ref_elt to find the element to be removed MEDIUM: dumpstats/pattern: display and use each pointer of each pattern dumped MINOR: pattern/map/acl: Centralization of the file parsers MINOR: pattern: Check if the file reference is not used with acl and map MINOR: acl/pattern: Acl "-M" option force to load file as map file with two columns MEDIUM: dumpstats: Display error message during add of values. MINOR: pattern: The function pat_ref_set() have now atomic behavior MINOR: regex: The pointer regstr in the struc regex is no longer used. MINOR: cli: Block the usage of the command "acl add" in many cases. MINOR: doc: Update the documentation about the map and acl MINOR: pattern: index duplicates MINOR: configuration: File and line propagation MINOR: dumpstat/conf: display all the configuration lines that using pattern reference MINOR: standard: Disable ip resolution during the runtime MINOR: pattern: Remove the flag "PAT_F_FROM_FILE". MINOR: pattern: forbid dns resolutions DOC: document "get map" / "get acl" on the CLI MEDIUM: acl: Change the acl register struct BUG/MEDIUM: acl: boolean only matches were broken by recent changes William Lallemand (3): DOC: add some information on capture.(req|res).hdr MINOR: http: capture.req.method and capture.req.uri MINOR: http: optimize capture.req.method and capture.req.uri Willy Tarreau (34): MINOR: session: clean up the connection free code BUG/MEDIUM: checks: immediately report a connection success MEDIUM: connection: don't use real send() flags in snd_buf() OPTIM: ssl: implement dynamic record size adjustment MINOR: stats: report exact last session time in backend too BUG/MEDIUM: stats: the "lastsess" field must appear last in the CSV. BUG/MAJOR: check: fix memory leak in "tcp-check connect" over SSL BUG/MINOR: channel: initialize xfer_small/xfer_large on new buffers MINOR: channel: add the date of last read in the channel MEDIUM: stream-int: automatically disable CF_STREAMER flags after idle MINOR: ssl: add DEFAULT_SSL_MAX_RECORD to set the record size at build time MINOR: config: make the stream interface idle timer user-configurable MINOR: config: add global directives to set default SSL ciphers MINOR: sample: add a rand() sample fetch to return a sample. BUG/MEDIUM: config: immediately abort if peers section has no name BUG/MINOR: ssl: fix syntax in config error message BUG/MEDIUM: ssl: always send a full buffer after EAGAIN BUG/MINOR: config: server on-marked-* statement is ignored in default-server BUG/MEDIUM: backend: prefer-last-server breaks redispatch BUG/MEDIUM: http: continue to emit 503 on keep-alive to different server MEDIUM: acl: fix pattern type for payload / payload_lv BUG/MINOR: config: fix a crash on startup when a disabled backend references a peer BUG/MEDIUM: compression: fix the output type of the compressor name BUG/MEDIUM: http: don't start to forward request data before the connect MINOR: http: release compression context only in http_end_txn() MINOR: protect ebimtree/ebistree against multiple inclusions MEDIUM: proxy: create a tree to store proxies by name MEDIUM: proxy: make findproxy() use trees to look up proxies MEDIUM: proxy: make get_backend_server() use findproxy() to lookup proxies MEDIUM: stick-table: lookup table names using trees. MEDIUM: config: faster lookup for duplicated proxy name CLEANUP: acl: remove obsolete test in parse_acl_expr() MINOR: sample: move smp_to_type to sample.c MEDIUM: compression: consider the "q=" attribute in Accept-Encoding