Add error context callback when tokenizing authentication files
Michael Paquier <michael@paquier.xyz>
Add error context callback when tokenizing authentication files The parsing of the authentication files for HBA and ident entries happens in two phases: - Tokenization of the files, creating a list of TokenizedAuthLines. - Validation of the HBA and ident entries, building a set of HbaLines or IdentLines. The second phase doing the validation provides already some error context about the configuration file and the line where a problem happens, but there is no such information in the first phase when tokenizing the files. This commit adds an ErrorContextCallback in tokenize_auth_file(), with a context made of the line number and the configuration file name involved in a problem. This is useful for files included in an HBA file for user and database lists, and it will become much more handy to track problems for files included via a potential @include[_dir,_if_exists]. The error context is registered so as the full chain of events is reported when using cascaded inclusions when for example tokenize_auth_file() recurses over itself on new files, displaying one context line for each file gone through when tokenizing things. Author: Michael Paquier Reviewed-by: Julien Rouhaud Discussion: https://postgr.es/m/Y2xUBJ+S+Z0zbxRW@paquier.xyz
Files
| Path | Change | +/− |
|---|---|---|
| src/backend/libpq/hba.c | modified | +31 −0 |
| src/tools/pgindent/typedefs.list | modified | +1 −0 |
Discussion
- Allow file inclusion in pg_hba and pg_ident files 96 messages · 2022-02-23 → 2022-11-28