Re: Allow tests to pass in OpenSSL FIPS mode
Peter Eisentraut <peter.eisentraut@enterprisedb.com>
From: Peter Eisentraut <peter.eisentraut@enterprisedb.com>
To: pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2023-10-05T13:44:19Z
Lists: pgsql-hackers
Attachments
- v4-0001-citext-Allow-tests-to-pass-in-OpenSSL-FIPS-mode.patch (text/plain) patch v4-0001
- v4-0002-pgcrypto-Allow-tests-to-pass-in-OpenSSL-FIPS-mode.patch (text/plain) patch v4-0002
- v4-0003-Allow-tests-to-pass-in-OpenSSL-FIPS-mode-TAP-test.patch (text/plain) patch v4-0003
- v4-0004-Allow-tests-to-pass-in-OpenSSL-FIPS-mode-rest.patch (text/plain) patch v4-0004
- v4-0005-WIP-Use-fipshash-in-brin_multi-test.patch (text/plain) patch v4-0005
On 04.10.22 17:45, Peter Eisentraut wrote: > While working on the column encryption patch, I wanted to check that > what is implemented also works in OpenSSL FIPS mode. I tried running > the normal test suites after switching the OpenSSL installation to FIPS > mode, but that failed all over the place. So I embarked on fixing that. > Attached is a first iteration of a patch. Continuing this, we have fixed many issues since. Here is a patch set to fix all remaining issues. v4-0001-citext-Allow-tests-to-pass-in-OpenSSL-FIPS-mode.patch v4-0002-pgcrypto-Allow-tests-to-pass-in-OpenSSL-FIPS-mode.patch These two are pretty straightforward. v4-0003-Allow-tests-to-pass-in-OpenSSL-FIPS-mode-TAP-test.patch This one does some delicate surgery and could use some thorough review. v4-0004-Allow-tests-to-pass-in-OpenSSL-FIPS-mode-rest.patch This just adds alternative expected files. The question is mainly just whether there are better ways to organize this. v4-0005-WIP-Use-fipshash-in-brin_multi-test.patch Here, some previously fixed md5() uses have snuck back in. I will need to track down the origin of this and ask for a proper fix there. This is just included here for completeness.
Commits
-
Add regression expected-files for older OpenSSL in FIPS mode.
- ef5ee0e34618 18.0 landed
- e633fa6351bd 19 (unreleased) landed
- 047306a3fe26 17.7 landed
- c7b0cb367d3c 19 (unreleased) landed
- a865b654c773 17.7 landed
- 9e2c58417342 18.0 landed
-
Allow tests to pass in OpenSSL FIPS mode (rest)
- 3c44e7d8d4fe 17.0 landed
-
Allow tests to pass in OpenSSL FIPS mode (TAP tests)
- 284cbaea7c4b 17.0 landed
-
pgcrypto: Allow tests to pass in OpenSSL FIPS mode
- 795592865c96 17.0 landed
-
pgcrypto: Split off pgp-encrypt-md5 test
- 3af0d17acef7 17.0 landed
-
citext: Allow tests to pass in OpenSSL FIPS mode
- 3c551ebede46 17.0 landed
-
Remove incidental md5() function uses from main regression tests
- 208bf364a9cc 16.0 landed
-
Improve/correct comments
- 36ea345f8fa6 16.0 landed
-
Put tests of md5() function into separate test file
- 9786b89bd1b4 16.0 landed