mirror of
				https://github.com/postgres/postgres.git
				synced 2025-11-03 09:13:20 +03:00 
			
		
		
		
	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:
		@@ -37,32 +37,32 @@ CREATE FUNCTION user_relns()
 | 
				
			|||||||
CREATE FUNCTION pt_in_widget(point, widget)
 | 
					CREATE FUNCTION pt_in_widget(point, widget)
 | 
				
			||||||
   RETURNS bool
 | 
					   RETURNS bool
 | 
				
			||||||
   AS '@libdir@/regress@DLSUFFIX@'
 | 
					   AS '@libdir@/regress@DLSUFFIX@'
 | 
				
			||||||
   LANGUAGE C;
 | 
					   LANGUAGE C STRICT;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
CREATE FUNCTION overpaid(emp)
 | 
					CREATE FUNCTION overpaid(emp)
 | 
				
			||||||
   RETURNS bool
 | 
					   RETURNS bool
 | 
				
			||||||
   AS '@libdir@/regress@DLSUFFIX@'
 | 
					   AS '@libdir@/regress@DLSUFFIX@'
 | 
				
			||||||
   LANGUAGE C;
 | 
					   LANGUAGE C STRICT;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
CREATE FUNCTION boxarea(box)
 | 
					CREATE FUNCTION boxarea(box)
 | 
				
			||||||
   RETURNS float8
 | 
					   RETURNS float8
 | 
				
			||||||
   AS '@libdir@/regress@DLSUFFIX@'
 | 
					   AS '@libdir@/regress@DLSUFFIX@'
 | 
				
			||||||
   LANGUAGE C;
 | 
					   LANGUAGE C STRICT;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
CREATE FUNCTION interpt_pp(path, path)
 | 
					CREATE FUNCTION interpt_pp(path, path)
 | 
				
			||||||
   RETURNS point
 | 
					   RETURNS point
 | 
				
			||||||
   AS '@libdir@/regress@DLSUFFIX@'
 | 
					   AS '@libdir@/regress@DLSUFFIX@'
 | 
				
			||||||
   LANGUAGE C;
 | 
					   LANGUAGE C STRICT;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
CREATE FUNCTION reverse_name(name)
 | 
					CREATE FUNCTION reverse_name(name)
 | 
				
			||||||
   RETURNS name
 | 
					   RETURNS name
 | 
				
			||||||
   AS '@libdir@/regress@DLSUFFIX@'
 | 
					   AS '@libdir@/regress@DLSUFFIX@'
 | 
				
			||||||
   LANGUAGE C;
 | 
					   LANGUAGE C STRICT;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
CREATE FUNCTION oldstyle_length(int4, text)
 | 
					CREATE FUNCTION oldstyle_length(int4, text)
 | 
				
			||||||
   RETURNS int4
 | 
					   RETURNS int4
 | 
				
			||||||
   AS '@libdir@/regress@DLSUFFIX@'
 | 
					   AS '@libdir@/regress@DLSUFFIX@'
 | 
				
			||||||
   LANGUAGE C;
 | 
					   LANGUAGE C;  -- intentionally not strict
 | 
				
			||||||
 | 
					
 | 
				
			||||||
--
 | 
					--
 | 
				
			||||||
-- Function dynamic loading
 | 
					-- Function dynamic loading
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -30,27 +30,27 @@ CREATE FUNCTION user_relns()
 | 
				
			|||||||
CREATE FUNCTION pt_in_widget(point, widget)
 | 
					CREATE FUNCTION pt_in_widget(point, widget)
 | 
				
			||||||
   RETURNS bool
 | 
					   RETURNS bool
 | 
				
			||||||
   AS '@libdir@/regress@DLSUFFIX@'
 | 
					   AS '@libdir@/regress@DLSUFFIX@'
 | 
				
			||||||
   LANGUAGE C;
 | 
					   LANGUAGE C STRICT;
 | 
				
			||||||
CREATE FUNCTION overpaid(emp)
 | 
					CREATE FUNCTION overpaid(emp)
 | 
				
			||||||
   RETURNS bool
 | 
					   RETURNS bool
 | 
				
			||||||
   AS '@libdir@/regress@DLSUFFIX@'
 | 
					   AS '@libdir@/regress@DLSUFFIX@'
 | 
				
			||||||
   LANGUAGE C;
 | 
					   LANGUAGE C STRICT;
 | 
				
			||||||
CREATE FUNCTION boxarea(box)
 | 
					CREATE FUNCTION boxarea(box)
 | 
				
			||||||
   RETURNS float8
 | 
					   RETURNS float8
 | 
				
			||||||
   AS '@libdir@/regress@DLSUFFIX@'
 | 
					   AS '@libdir@/regress@DLSUFFIX@'
 | 
				
			||||||
   LANGUAGE C;
 | 
					   LANGUAGE C STRICT;
 | 
				
			||||||
CREATE FUNCTION interpt_pp(path, path)
 | 
					CREATE FUNCTION interpt_pp(path, path)
 | 
				
			||||||
   RETURNS point
 | 
					   RETURNS point
 | 
				
			||||||
   AS '@libdir@/regress@DLSUFFIX@'
 | 
					   AS '@libdir@/regress@DLSUFFIX@'
 | 
				
			||||||
   LANGUAGE C;
 | 
					   LANGUAGE C STRICT;
 | 
				
			||||||
CREATE FUNCTION reverse_name(name)
 | 
					CREATE FUNCTION reverse_name(name)
 | 
				
			||||||
   RETURNS name
 | 
					   RETURNS name
 | 
				
			||||||
   AS '@libdir@/regress@DLSUFFIX@'
 | 
					   AS '@libdir@/regress@DLSUFFIX@'
 | 
				
			||||||
   LANGUAGE C;
 | 
					   LANGUAGE C STRICT;
 | 
				
			||||||
CREATE FUNCTION oldstyle_length(int4, text)
 | 
					CREATE FUNCTION oldstyle_length(int4, text)
 | 
				
			||||||
   RETURNS int4
 | 
					   RETURNS int4
 | 
				
			||||||
   AS '@libdir@/regress@DLSUFFIX@'
 | 
					   AS '@libdir@/regress@DLSUFFIX@'
 | 
				
			||||||
   LANGUAGE C;
 | 
					   LANGUAGE C;  -- intentionally not strict
 | 
				
			||||||
--
 | 
					--
 | 
				
			||||||
-- Function dynamic loading
 | 
					-- Function dynamic loading
 | 
				
			||||||
--
 | 
					--
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user