Guard against overlength time zone abbreviations in to_char(). While typical abbreviations are only a few bytes long, a user-supplied time_zone setting could specify a much longer abbreviation, enough to overflow to_char's allocation of 12 bytes per format character. If so, throw an error in the same style as commit 9241c84cb (CVE-2015-0241).
Reported-by: Hcamael <[email protected]> Reported-by: Amjad Shahzad <[email protected]> Reported-by: Tan Zhen of AntAISecurityLab <[email protected]> Reported-by: Tomer Fichman <[email protected]> Reported-by: Zheng Yu <[email protected]> Reported-by: Amy Burnett (OpenAI Codex Security) Reported-by: Rick de Jager <[email protected]> Reported-by: Heewon Song <[email protected]> Reported-by: Sylvie Mayer <[email protected]> Reported-by: Aleksander Alekseev <[email protected]> Reported-by: Hillai Ben Sasson <[email protected]> Author: Tom Lane <[email protected]> Backpatch-through: 14 Security: CVE-2026-14669 Branch ------ REL_19_STABLE Details ------- https://git.postgresql.org/pg/commitdiff/3294ab83947270a44f680a1725383e6521315b70 Author: Tom Lane <[email protected]> Modified Files -------------- src/backend/utils/adt/formatting.c | 21 ++++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-)
