Add STRICT to some C functions created by the regression tests.

These functions readily crash when passed a NULL input value.  The tests
themselves do not pass NULL values to them; but when the regression
database is used as a basis for fuzz testing, they cause a lot of noise.
Also, if someone were to leave a regression database lying about in a
production installation, these would create a minor security hazard.

Andreas Seltenreich
This commit is contained in:
Tom Lane 2016-01-09 13:02:54 -05:00
parent 687f2cd7a0
commit 529baf6a2f
2 changed files with 12 additions and 12 deletions

View File

@ -74,32 +74,32 @@ CREATE FUNCTION user_relns()
CREATE FUNCTION pt_in_widget(point, widget)
RETURNS bool
AS '@libdir@/regress@DLSUFFIX@'
LANGUAGE C;
LANGUAGE C STRICT;
CREATE FUNCTION overpaid(emp)
RETURNS bool
AS '@libdir@/regress@DLSUFFIX@'
LANGUAGE C;
LANGUAGE C STRICT;
CREATE FUNCTION boxarea(box)
RETURNS float8
AS '@libdir@/regress@DLSUFFIX@'
LANGUAGE C;
LANGUAGE C STRICT;
CREATE FUNCTION interpt_pp(path, path)
RETURNS point
AS '@libdir@/regress@DLSUFFIX@'
LANGUAGE C;
LANGUAGE C STRICT;
CREATE FUNCTION reverse_name(name)
RETURNS name
AS '@libdir@/regress@DLSUFFIX@'
LANGUAGE C;
LANGUAGE C STRICT;
CREATE FUNCTION oldstyle_length(int4, text)
RETURNS int4
AS '@libdir@/regress@DLSUFFIX@'
LANGUAGE C;
LANGUAGE C; -- intentionally not strict
--
-- Function dynamic loading

View File

@ -58,27 +58,27 @@ CREATE FUNCTION user_relns()
CREATE FUNCTION pt_in_widget(point, widget)
RETURNS bool
AS '@libdir@/regress@DLSUFFIX@'
LANGUAGE C;
LANGUAGE C STRICT;
CREATE FUNCTION overpaid(emp)
RETURNS bool
AS '@libdir@/regress@DLSUFFIX@'
LANGUAGE C;
LANGUAGE C STRICT;
CREATE FUNCTION boxarea(box)
RETURNS float8
AS '@libdir@/regress@DLSUFFIX@'
LANGUAGE C;
LANGUAGE C STRICT;
CREATE FUNCTION interpt_pp(path, path)
RETURNS point
AS '@libdir@/regress@DLSUFFIX@'
LANGUAGE C;
LANGUAGE C STRICT;
CREATE FUNCTION reverse_name(name)
RETURNS name
AS '@libdir@/regress@DLSUFFIX@'
LANGUAGE C;
LANGUAGE C STRICT;
CREATE FUNCTION oldstyle_length(int4, text)
RETURNS int4
AS '@libdir@/regress@DLSUFFIX@'
LANGUAGE C;
LANGUAGE C; -- intentionally not strict
--
-- Function dynamic loading
--