From 529baf6a2f3fe85e7e6b4ad3ca38ed4ebffd6bb4 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Sat, 9 Jan 2016 13:02:54 -0500 Subject: [PATCH] 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 --- src/test/regress/input/create_function_2.source | 12 ++++++------ src/test/regress/output/create_function_2.source | 12 ++++++------ 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/src/test/regress/input/create_function_2.source b/src/test/regress/input/create_function_2.source index 1b013aedcb..c518559777 100644 --- a/src/test/regress/input/create_function_2.source +++ b/src/test/regress/input/create_function_2.source @@ -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 diff --git a/src/test/regress/output/create_function_2.source b/src/test/regress/output/create_function_2.source index 98e1c29733..829393243e 100644 --- a/src/test/regress/output/create_function_2.source +++ b/src/test/regress/output/create_function_2.source @@ -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 --