haproxy/include/types
Christopher Faulet f61f33a1b2 BUG/MINOR: checks: Respect the no-check-ssl option
This options is used to force a non-SSL connection to check a SSL server or to
invert a check-ssl option inherited from the default section. The use_ssl field
in the check structure is used to know if a SSL connection must be used
(use_ssl=1) or not (use_ssl=0). The server configuration is used by default.

The problem is that we cannot distinguish the default case (no specific SSL
check option) and the case of an explicit non-SSL check. In both, use_ssl is set
to 0. So the server configuration is always used. For a SSL server, when
no-check-ssl option is set, the check is still performed using a SSL
configuration.

To fix the bug, instead of a boolean value (0=TCP, 1=SSL), we use a ternary value :

  * 0  = use server config
  * 1  = force SSL
  * -1 = force non-SSL

The same is done for the server parameter. It is not really necessary for
now. But it is a good way to know is the server no-ssl option is set.

In addition, the PR_O_TCPCHK_SSL proxy option is no longer used to set use_ssl
to 1 for a check. Instead the flag is directly tested to prepare or destroy the
server SSL context.

This patch should be backported as far as 1.8.
2020-04-27 09:39:37 +02:00
..
acl.h CLEANUP: assorted typo fixes in the code and comments 2020-04-16 10:04:36 +02:00
action.h MEDIUM: http-rules: Support extra headers for HTTP return actions 2020-02-06 15:13:03 +01:00
activity.h MAJOR: fd: Get rid of the fd cache. 2019-07-31 14:12:55 +02:00
applet.h CLEANUP: assorted typo fixes in the code and comments 2020-04-16 10:04:36 +02:00
arg.h MEDIUM: stream: support use-server rules with dynamic names 2020-03-29 09:55:10 +02:00
auth.h MAJOR: auth: Change the internal authentication system. 2014-03-17 18:06:06 +01:00
backend.h MEDIUM: backend: move all LB algo parameters into an union 2019-01-14 19:33:17 +01:00
capture.h CLEANUP: pools: rename all pool functions and pointers to remove this "2" 2017-11-24 17:49:53 +01:00
channel.h CLEANUP: channel: Remove the unused flag CF_WAKE_CONNECT 2019-07-19 09:24:12 +02:00
checks.h BUG/MINOR: checks: Respect the no-check-ssl option 2020-04-27 09:39:37 +02:00
cli.h MINOR: cli: add an expert mode to hide dangerous commands 2019-10-24 18:38:00 +02:00
compression.h CLEANUP: assorted typo fixes in the code and comments 2020-04-16 10:04:36 +02:00
connection.h CLEANUP: assorted typo fixes in the code and comments 2020-04-17 09:37:36 +02:00
counters.h MINOR: counters: Remove failed_secu counter and use denied_resp instead 2020-01-20 15:18:45 +01:00
dict.h MINOR: dict: Store the length of the dictionary entries. 2019-06-07 15:47:54 +02:00
dns.h CLEANUP: assorted typo fixes in the code and comments 2020-04-16 10:04:36 +02:00
fcgi-app.h MEDIUM: fcgi-app: Add FCGI application and filter 2019-09-17 10:18:54 +02:00
fd.h CLEANUP: assorted typo fixes in the code and comments 2020-04-17 09:37:36 +02:00
filters.h CLEANUP: assorted typo fixes in the code and comments 2020-03-14 09:42:07 +01:00
freq_ctr.h
global.h MINOR: init: report the haproxy version and executable path once on errors 2020-04-16 10:52:41 +02:00
hlua.h CLEANUP: assorted typo fixes in the code and comments 2020-04-16 10:04:36 +02:00
http_ana.h BUG/MINOR: http_ana: make sure redirect flags don't have overlapping bits 2020-02-27 23:44:41 +01:00
http_htx.h MINOR: http-htx: Add a new section to create groups of custom HTTP errors 2020-01-20 15:18:46 +01:00
lb_chash.h MINOR: backend: move hash_balance_factor out of chash 2019-01-14 19:33:17 +01:00
lb_fas.h
lb_fwlc.h
lb_fwrr.h
lb_map.h MEDIUM: threads/lb: Make LB algorithms (lb_*.c) thread-safe 2017-10-31 13:58:31 +01:00
listener.h CLEANUP: assorted typo fixes in the code and comments 2020-04-17 09:37:36 +02:00
log.h BUG/MINOR: log: make "show startup-log" use a ring buffer instead 2019-11-15 15:50:16 +01:00
mailers.h MINOR: mailers: make it possible to configure the connection timeout 2016-02-20 15:33:06 +01:00
map.h CLEANUP: assorted typo fixes in the code and comments 2020-04-16 10:04:36 +02:00
obj_type.h MINOR: obj_type: new object type for struct stream 2019-04-23 11:35:56 +02:00
pattern.h CLEANUP: assorted typo fixes in the code and comments 2020-03-14 09:42:07 +01:00
peers.h MINOR: peers: Add debugging information to "show peers". 2019-11-19 14:48:28 +01:00
pipe.h
port_range.h BUG/MEDIUM: port_range: Make the ring buffer lock-free. 2019-04-30 15:10:17 +02:00
proto_udp.h MEDIUM: protocol: add minimalist UDP protocol client 2015-06-13 22:07:35 +02:00
protocol_buffers.h MINOR: sample: Rework gRPC converter code. 2019-03-05 11:04:23 +01:00
protocol.h CLEANUP: assorted typo fixes in the code and comments 2020-03-14 09:42:07 +01:00
proxy.h MINOR: checks: Add a way to send custom headers and payload during http chekcs 2020-04-27 09:39:37 +02:00
queue.h MINOR: queue: replace the linked list with a tree 2018-08-10 15:06:27 +02:00
ring.h BUILD: buffer: types/{ring.h,checks.h} should include buf.h, not buffer.h 2020-03-07 06:07:18 +01:00
sample.h MAJOR: http: Remove the HTTP legacy code 2019-07-19 09:24:12 +02:00
server.h BUG/MINOR: checks: Respect the no-check-ssl option 2020-04-27 09:39:37 +02:00
session.h MEDIUM: sessions: Introduce session flags. 2019-05-29 15:41:47 +02:00
shctx.h MINOR: shctx: Change max. object size type to unsigned int. 2018-10-26 04:54:40 +02:00
signal.h MINOR: wdt: Move the definitions of WDTSIG and DEBUGSIG into types/signal.h. 2020-03-18 13:07:19 +01:00
sink.h MINOR: sink: now report the number of dropped events on output 2019-08-27 17:14:19 +02:00
spoe.h CLEANUP: assorted typo fixes in the code and comments 2020-04-16 10:04:36 +02:00
ssl_sock.h CLEANUP: assorted typo fixes in the code and comments 2020-04-17 09:37:36 +02:00
stats.h MINOR: stats: Report internal errors in the proxies/listeners/servers stats 2020-01-20 15:18:45 +01:00
stick_table.h MINOR: stick-table: Add "server_name" new data type. 2019-06-05 08:33:35 +02:00
stream_interface.h MEDIUM: stream-int: introduce a new state SI_ST_RDY 2019-06-06 16:36:19 +02:00
stream.h CLEANUP: assorted typo fixes in the code and comments 2020-04-17 09:37:36 +02:00
task.h MINOR: task: permanently flag tasklets waking themselves up 2020-01-31 17:45:10 +01:00
template.h
trace.h MINOR: trace: change the detail_level to per-source verbosity 2019-08-29 17:11:25 +02:00
vars.h MINOR: threads: Use __decl_hathreads to declare locks 2017-11-13 11:38:17 +01:00