postgresql/src/pl/plperl/sql
Tom Lane f47004add1 Tighten array dimensionality checks in Perl -> SQL array conversion.
plperl_array_to_datum() wasn't sufficiently careful about checking
that nested lists represent a rectangular array structure; it would
accept inputs such as "[1, []]".  This is a bit related to the
PL/Python bug fixed in commit 81eaaf65e, but it doesn't seem to
provide any direct route to a memory stomp.  Instead the likely
failure mode is for makeMdArrayResult to be passed fewer Datums than
the claimed array dimensionality requires, possibly leading to a wild
pointer dereference and SIGSEGV.

Per report from Alexander Lakhin.  It's been broken for a long
time, so back-patch to all supported branches.

Discussion: https://postgr.es/m/5ebae5e4-d401-fadf-8585-ac3eaf53219c@gmail.com
2023-04-29 13:06:44 -04:00
..
plperl.sql Fix pl/perl test case so it will still work under Perl 5.36. 2022-06-01 16:15:47 -04:00
plperl_array.sql Tighten array dimensionality checks in Perl -> SQL array conversion. 2023-04-29 13:06:44 -04:00
plperl_call.sql Support for OUT parameters in procedures 2020-10-05 09:21:43 +02:00
plperl_elog.sql Fix plperl to handle non-ASCII error message texts correctly. 2015-09-29 10:52:22 -04:00
plperl_end.sql Add plperl.on_perl_init setting to provide for initializing the perl library on load. Also, handle END blocks in plperl. 2010-01-30 01:46:57 +00:00
plperl_init.sql Fix missed corner cases for grantable permissions on GUCs. 2022-07-19 17:21:55 -04:00
plperl_lc.sql Remove recently added PL/Perl encoding tests 2012-07-17 13:26:25 -04:00
plperl_plperlu.sql Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
plperl_setup.sql tests: Rename conflicting role names 2022-10-05 10:43:13 -07:00
plperl_shared.sql Remember the source GucContext for each GUC parameter. 2011-10-04 16:13:50 -04:00
plperl_transaction.sql Fix SPI's handling of errors during transaction commit. 2022-02-28 12:45:36 -05:00
plperl_trigger.sql Generated columns 2019-03-30 08:15:57 +01:00
plperl_util.sql Support domains over composite types in PL/Perl. 2017-10-28 14:02:21 -04:00
plperlu.sql Remember the source GucContext for each GUC parameter. 2011-10-04 16:13:50 -04:00