postgresql/contrib
Tom Lane f489b480f4 Fix contrib/seg to be more wary of long input numbers.
seg stores the number of significant digits in an input number
in a "char" field.  If char is signed, and the input is more than
127 digits long, the count can read out as negative causing
seg_out() to print garbage (or, if you're really unlucky,
even crash).

To fix, clamp the digit count to be not more than FLT_DIG.
(In theory this loses some information about what the original
input was, but it doesn't seem like useful information; it would
not survive dump/restore in any case.)

Also, in case there are stored values of the seg type containing
bad data, add a clamp in seg_out's restore() subroutine.

Per bug #17725 from Robins Tharakan.  It's been like this
forever, so back-patch to all supported branches.

Discussion: https://postgr.es/m/17725-0a09313b67fbe86e@postgresql.org
2022-12-21 17:51:50 -05:00
..
adminpack
amcheck Replace RelationOpenSmgr() with RelationGetSmgr(). 2022-11-17 16:54:30 -05:00
auth_delay
auto_explain
bloom Replace RelationOpenSmgr() with RelationGetSmgr(). 2022-11-17 16:54:30 -05:00
bool_plperl
btree_gin
btree_gist Fix results of index-only scans on btree_gist char(N) indexes. 2022-01-08 14:54:39 -05:00
citext CREATE INDEX: use the original userid for more ACL checks. 2022-06-25 09:07:44 -07:00
cube
dblink postgres_fdw: Fix unexpected reporting of empty message. 2021-12-03 17:37:08 +09:00
dict_int
dict_xsyn
earthdistance
file_fdw
fuzzystrmatch
hstore
hstore_plperl
hstore_plpython
intagg
intarray
isn
jsonb_plperl
jsonb_plpython
lo
ltree Fix default signature length for gist_ltree_ops 2022-03-16 11:41:30 +03:00
ltree_plpython
oid2name
old_snapshot
pageinspect Revert "Prevent instability in contrib/pageinspect's regression test." 2022-11-21 15:37:48 -05:00
passwordcheck Revert error handling improvements for cryptohashes 2022-01-14 11:25:39 +09:00
pg_buffercache
pg_freespacemap
pg_prewarm Replace RelationOpenSmgr() with RelationGetSmgr(). 2022-11-17 16:54:30 -05:00
pg_stat_statements pg_stat_statements: fetch stmt location/length before it disappears. 2022-11-01 12:48:01 -04:00
pg_surgery
pg_trgm Avoid some other O(N^2) hazards in list manipulation. 2021-11-01 16:24:40 -04:00
pg_visibility Replace RelationOpenSmgr() with RelationGetSmgr(). 2022-11-17 16:54:30 -05:00
pgcrypto Clean up assorted failures under clang's -fsanitize=undefined checks. 2022-03-03 18:13:24 -05:00
pgrowlocks
pgstattuple
postgres_fdw Fix handling of pending inserts in nodeModifyTable.c. 2022-11-25 17:45:03 +09:00
seg Fix contrib/seg to be more wary of long input numbers. 2022-12-21 17:51:50 -05:00
sepgsql
spi
sslinfo
start-scripts
tablefunc
tcn
test_decoding Fix executing invalidation messages generated by subtransactions during decoding. 2022-10-21 09:52:44 +05:30
tsm_system_rows
tsm_system_time
unaccent
uuid-ossp Reject bogus output from uuid_create(3). 2022-09-09 12:41:36 -04:00
vacuumlo
xml2
contrib-global.mk
Makefile
README

The PostgreSQL contrib tree
---------------------------

This subtree contains porting tools, analysis utilities, and plug-in
features that are not part of the core PostgreSQL system, mainly
because they address a limited audience or are too experimental to be
part of the main source tree.  This does not preclude their
usefulness.

User documentation for each module appears in the main SGML
documentation.

When building from the source distribution, these modules are not
built automatically, unless you build the "world" target.  You can
also build and install them all by running "make all" and "make
install" in this directory; or to build and install just one selected
module, do the same in that module's subdirectory.

Some directories supply new user-defined functions, operators, or
types.  To make use of one of these modules, after you have installed
the code you need to register the new SQL objects in the database
system by executing a CREATE EXTENSION command.  In a fresh database,
you can simply do

    CREATE EXTENSION module_name;

See the PostgreSQL documentation for more information about this
procedure.