summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2020-08-02 11:00:12 -0400
committerTom Lane <tgl@sss.pgh.pa.us>2020-08-02 11:00:12 -0400
commite1b4135cfef656f6b8c42e86b0c0a7cbafebdd92 (patch)
treeb866d0dde1ce834dec27df8541a262e0eb396b68
parent5e724125af4d854f1d866d1ead409d692ac0573b (diff)
Adjust pgcrypto's expected test results for --disable-strong-random.
These files were missed when commit a3ab7a707 added a new test query. Understandable considering these files no longer exist in HEAD. Per buildfarm member pademelon.
-rw-r--r--contrib/pgcrypto/expected/pgp-compression_1.out28
1 files changed, 28 insertions, 0 deletions
diff --git a/contrib/pgcrypto/expected/pgp-compression_1.out b/contrib/pgcrypto/expected/pgp-compression_1.out
index 8a046d84964..8ae44d35c74 100644
--- a/contrib/pgcrypto/expected/pgp-compression_1.out
+++ b/contrib/pgcrypto/expected/pgp-compression_1.out
@@ -40,3 +40,31 @@ select pgp_sym_decrypt(
ERROR: generating random data is not supported by this build
DETAIL: This functionality requires a source of strong random numbers
HINT: You need to rebuild PostgreSQL using --enable-strong-random
+-- check corner case involving an input string of 16kB, as per bug #16476.
+SELECT setseed(0);
+ setseed
+---------
+
+(1 row)
+
+WITH random_string AS
+(
+ -- This generates a random string of 16366 bytes. This is chosen
+ -- as random so that it does not get compressed, and the decompression
+ -- would work on a string with the same length as the origin, making the
+ -- test behavior more predictible. lpad() ensures that the generated
+ -- hexadecimal value is completed by extra zero characters if random()
+ -- has generated a value strictly lower than 16.
+ SELECT string_agg(decode(lpad(to_hex((random()*256)::int), 2, '0'), 'hex'), '') as bytes
+ FROM generate_series(0, 16365)
+)
+SELECT bytes =
+ pgp_sym_decrypt_bytea(
+ pgp_sym_encrypt_bytea(bytes, 'key',
+ 'compress-algo=1,compress-level=1'),
+ 'key', 'expect-compress-algo=1')
+ AS is_same
+ FROM random_string;
+ERROR: generating random data is not supported by this build
+DETAIL: This functionality requires a source of strong random numbers
+HINT: You need to rebuild PostgreSQL using --enable-strong-random