postgresql/src
Michael Paquier a54b658ce7 Add support for file inclusions in HBA and ident configuration files
pg_hba.conf and pg_ident.conf gain support for three record keywords:
- "include", to include a file.
- "include_if_exists", to include a file, ignoring it if missing.
- "include_dir", to include a directory of files.  These are classified
by name (C locale, mostly) and need to be prefixed by ".conf", hence
following the same rules as GUCs.

This commit relies on the refactoring pieces done in efc9816, ad6c528,
783e8c6 and 1b73d0b, adding a small wrapper to build a list of
TokenizedAuthLines (tokenize_include_file), and the code is shaped to
offer some symmetry with what is done for GUCs with the same options.

pg_hba_file_rules and pg_ident_file_mappings gain a new field called
file_name, to track from which file a record is located, taking
advantage of the addition of rule_number in c591300 to offer an
organized view of the HBA or ident records loaded.

Bump catalog version.

Author: Julien Rouhaud
Reviewed-by: Michael Paquier
Discussion: https://postgr.es/m/20220223045959.35ipdsvbxcstrhya@jrouhaud
2022-11-24 13:51:34 +09:00
..
backend Add support for file inclusions in HBA and ident configuration files 2022-11-24 13:51:34 +09:00
bin Expand AclMode to 64 bits 2022-11-23 14:43:16 -05:00
common Check return value of pclose() correctly 2022-11-15 15:36:51 +01:00
fe_utils meson: Add support for building with precompiled headers 2022-10-06 17:19:30 -07:00
include Add support for file inclusions in HBA and ident configuration files 2022-11-24 13:51:34 +09:00
interfaces libpq: Handle NegotiateProtocolVersion message 2022-11-17 15:42:09 +01:00
makefiles autoconf: Rely on ar supporting index creation 2022-10-07 11:53:39 -07:00
pl Refactor aclcheck functions 2022-11-13 09:02:41 +01:00
port Provide sigaction() for Windows. 2022-11-09 13:06:31 +13:00
template Move darwin sysroot determination into separate file 2022-09-01 16:54:19 -07:00
test Add support for file inclusions in HBA and ident configuration files 2022-11-24 13:51:34 +09:00
timezone Remove unneeded includes of <sys/stat.h> 2022-11-05 12:31:28 +09:00
tools Replace SQLValueFunction by COERCE_SQL_SYNTAX 2022-11-21 18:31:59 +09:00
tutorial Doc: sync src/tutorial/basics.source with SGML documentation. 2022-11-19 13:09:14 -05:00
.gitignore
DEVELOPERS
Makefile
Makefile.global.in Prevent port collisions between concurrent TAP tests 2022-11-20 10:07:35 -05:00
Makefile.shlib autoconf: Rely on ar supporting index creation 2022-10-07 11:53:39 -07:00
meson.build meson: Add initial version of meson based build system 2022-09-21 22:37:17 -07:00
nls-global.mk Fix for make unportability 2022-07-13 09:15:01 +02:00