Make ssl certificate for ssl_passphrase_callback test via Makefile
authorAndrew Dunstan <andrew@dunslane.net>
Mon, 1 Jun 2020 21:32:32 +0000 (17:32 -0400)
committerAndrew Dunstan <andrew@dunslane.net>
Mon, 1 Jun 2020 21:32:32 +0000 (17:32 -0400)
The recipe was previously given in comments in the module's test
script, but now we have an explicit recipe in the Makefile. The now
redundant comments in the script are removed.

This recipe shouldn't be needed in normal use, as the certificate and
key are in git and don't need to be regenerated.

Discussion: https://postgr.es/m/ae8f21fc-95cb-c98a-f241-1936133f466f@2ndQuadrant.com

src/test/modules/ssl_passphrase_callback/Makefile
src/test/modules/ssl_passphrase_callback/t/001_testfunc.pl

index a3b518b50d429c890d278b5b5e1f4fafa9a040b5..f81265c2963b2f9f9c1ddb6f5d7d8f80f2cac2fc 100644 (file)
@@ -20,3 +20,21 @@ include $(top_srcdir)/contrib/contrib-global.mk
 endif
 
 SHLIB_LINK += $(filter -lssl -lcrypto -lssleay32 -leay32, $(LIBS))
+
+# Targets to generate or remove the ssl certificate and key
+# Normally not needed. Don't run these targets in a vpath build, the results
+# won't be in the right place if you do.
+
+# needs to agree with what's in the test script
+PASS = FooBaR1
+
+.PHONY: ssl-files ssl-files-clean
+
+ssl-files:
+   openssl req -new -x509 -days 10000 -nodes -out server.crt \
+       -keyout server.ckey -subj "/CN=localhost"
+   openssl rsa -aes256 -in server.ckey -out server.key -passout pass:$(PASS)
+   rm server.ckey
+
+ssl-files-clean:
+   rm -f server.crt server.key
index 8d135d2495f499572663119521d5250d81e437d7..dbc084f870e744d3504853e18338d52ecb8d3462 100644 (file)
@@ -15,12 +15,7 @@ unless (($ENV{with_openssl} || 'no') eq 'yes')
 my $clearpass = "FooBaR1";
 my $rot13pass = "SbbOnE1";
 
-# self-signed cert was generated like this:
-# system('openssl req -new -x509 -days 10000 -nodes -out server.crt -keyout server.ckey -subj "/CN=localhost"');
-# add the cleartext passphrase to the key, remove the unprotected key
-# system("openssl rsa -aes256 -in server.ckey -out server.key -passout pass:$clearpass");
-# unlink "server.ckey";
-
+# see the Makefile for how the certificate and key have been generated
 
 my $node = get_new_node('main');
 $node->init;