Add GUC checks for ssl_min_protocol_version and ssl_max_protocol_version
authorMichael Paquier <michael@paquier.xyz>
Sat, 18 Jan 2020 03:32:55 +0000 (12:32 +0900)
committerMichael Paquier <michael@paquier.xyz>
Sat, 18 Jan 2020 03:32:55 +0000 (12:32 +0900)
commitac2dcca5dfe62177fd871a8f4f71430a1c92382c
treed4af39a9daf97418bde671e2d1179ce696703349
parent2e2646060e18461de24e3585344095664dc7727b
Add GUC checks for ssl_min_protocol_version and ssl_max_protocol_version

Mixing incorrect bounds set in the SSL context leads to confusing error
messages generated by OpenSSL which are hard to act on.  New checks are
added within the GUC machinery to improve the user experience as they
apply to any SSL implementation, not only OpenSSL, and doing the checks
beforehand avoids the creation of a SSL during a reload (or startup)
which we know will never be used anyway.

Backpatch down to 12, as those parameters have been introduced by
e73e67c.

Author: Michael Paquier
Reviewed-by: Daniel Gustafsson
Discussion: https://postgr.es/m/20200114035420.GE1515@paquier.xyz
Backpatch-through: 12
src/backend/utils/misc/guc.c
src/test/ssl/t/001_ssltests.pl
src/test/ssl/t/SSLServer.pm