Fix possible buffer overrun in contrib/pg_trgm.
authorTom Lane <tgl@sss.pgh.pa.us>
Mon, 13 Jan 2014 18:07:13 +0000 (13:07 -0500)
committerTom Lane <tgl@sss.pgh.pa.us>
Mon, 13 Jan 2014 18:07:13 +0000 (13:07 -0500)
commit2b705885719e83cee730d7185da4803ba0e7ebd8
tree2cfb42f1973501dada175f179a49d9a49a12487f
parent50c5770ecdafba7f63c80fa3268467e7df129497
Fix possible buffer overrun in contrib/pg_trgm.

Allow for the possibility that folding a string to lower case makes it
longer (due to replacing a character with a longer multibyte character).
This doesn't change the number of trigrams that will be extracted, but
it does affect the required size of an intermediate buffer in
generate_trgm().  Per bug #8821 from Ufuk Kayserilioglu.

Also install some checks that the input string length is not so large
as to cause overflow in the calculations of palloc request sizes.

Back-patch to all supported versions.
contrib/pg_trgm/trgm_op.c