Thread: pgsql: Fix memory overrun when querying pg_stat_slru

pgsql: Fix memory overrun when querying pg_stat_slru

From
Michael Paquier
Date:
Fix memory overrun when querying pg_stat_slru

pg_stat_get_slru() in pgstatfuncs.c would point to one element after the
end of the array PgStat_SLRUStats when finishing to scan its entries.
This had no direct consequences as no data from the extra memory area
was read, but static analyzers would rightfully complain here.  So let's
be clean.

While on it, this adds one regression test in the area reserved for
system views.

Reported-by: Alexander Kozhemyakin, via AddressSanitizer
Author: Kyotaro Horiguchi
Discussion: https://postgr.es/m/17280-37da556e86032070@postgresql.org
Backpatch-through: 13

Branch
------
REL_14_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/5f81a480d537956efc0b9bf2eee7d651a03c596a

Modified Files
--------------
src/backend/utils/adt/pgstatfuncs.c    | 3 ++-
src/test/regress/expected/sysviews.out | 7 +++++++
src/test/regress/sql/sysviews.sql      | 3 +++
3 files changed, 12 insertions(+), 1 deletion(-)