From 95d1c8976396542ef262afcdec385668e0976545 Mon Sep 17 00:00:00 2001 From: Philip O'Toole Date: Thu, 21 Dec 2023 08:41:35 -0500 Subject: [PATCH] Move to example.com cert and key --- system_test/helpers.go | 6 +-- tcp/dialer_test.go | 19 +------- tcp/mux_test.go | 4 +- testdata/x509/resources.go | 90 -------------------------------------- 4 files changed, 7 insertions(+), 112 deletions(-) diff --git a/system_test/helpers.go b/system_test/helpers.go index 5167b236..56dcad83 100644 --- a/system_test/helpers.go +++ b/system_test/helpers.go @@ -633,7 +633,7 @@ func mustNewNodeEncrypted(enableSingle, httpEncrypt, nodeEncrypt bool) *Node { dir := mustTempDir() var mux *tcp.Mux if nodeEncrypt { - mux = mustNewOpenTLSMux(rX509.CertFile(dir), rX509.KeyFile(dir), "") + mux = mustNewOpenTLSMux(rX509.CertExampleDotComFile(dir), rX509.KeyExampleDotComFile(dir), "") } else { mux, _ = mustNewOpenMux("") } @@ -643,8 +643,8 @@ func mustNewNodeEncrypted(enableSingle, httpEncrypt, nodeEncrypt bool) *Node { } func mustNodeEncrypted(dir string, enableSingle, httpEncrypt bool, mux *tcp.Mux, nodeID string) *Node { - nodeCertPath := rX509.CertFile(dir) - nodeKeyPath := rX509.KeyFile(dir) + nodeCertPath := rX509.CertExampleDotComFile(dir) + nodeKeyPath := rX509.KeyExampleDotComFile(dir) httpCertPath := nodeCertPath httpKeyPath := nodeKeyPath diff --git a/tcp/dialer_test.go b/tcp/dialer_test.go index 88f68be2..5c064e44 100644 --- a/tcp/dialer_test.go +++ b/tcp/dialer_test.go @@ -52,7 +52,7 @@ func Test_DialerHeader(t *testing.T) { } func Test_DialerHeaderTLS(t *testing.T) { - s, cert, key := mustNewEchoServerTLS() + s, cert, key := mustNewEchoServerTLS_ExampleDotCom() defer s.Close() defer os.Remove(cert) defer os.Remove(key) @@ -111,7 +111,7 @@ func Test_DialerHeaderTLS_ExampleDotCom(t *testing.T) { } func Test_DialerHeaderTLSBadConnect(t *testing.T) { - s, cert, key := mustNewEchoServerTLS() + s, cert, key := mustNewEchoServerTLS_ExampleDotCom() defer s.Close() defer os.Remove(cert) defer os.Remove(key) @@ -180,21 +180,6 @@ func mustNewEchoServer() *echoServer { } } -func mustNewEchoServerTLS() (*echoServer, string, string) { - ln := mustTCPListener("127.0.0.1:0") - cert := x509.CertFile("") - key := x509.KeyFile("") - - tlsConfig, err := rtls.CreateServerConfig(cert, key, rtls.NoCACert, true) - if err != nil { - panic("failed to create TLS config") - } - - return &echoServer{ - ln: tls.NewListener(ln, tlsConfig), - }, cert, key -} - func mustNewEchoServerTLS_ExampleDotCom() (*echoServer, string, string) { ln := mustTCPListener("127.0.0.1:0") cert := x509.CertExampleDotComFile("") diff --git a/tcp/mux_test.go b/tcp/mux_test.go index ebaf37f4..b38a3856 100644 --- a/tcp/mux_test.go +++ b/tcp/mux_test.go @@ -171,9 +171,9 @@ func TestTLSMux(t *testing.T) { tcpListener := mustTCPListener("127.0.0.1:0") defer tcpListener.Close() - cert := x509.CertFile("") + cert := x509.CertExampleDotComFile("") defer os.Remove(cert) - key := x509.KeyFile("") + key := x509.KeyExampleDotComFile("") defer os.Remove(key) mux, err := NewTLSMux(tcpListener, nil, cert, key, "", true, false) diff --git a/testdata/x509/resources.go b/testdata/x509/resources.go index 74082ec2..95df9b76 100644 --- a/testdata/x509/resources.go +++ b/testdata/x509/resources.go @@ -4,20 +4,6 @@ import ( "os" ) -// CertFile returns the path to a temporary file, in directory dir, containing a cert. -// It is up to the caller to remove the file when finished. If dir is the empty string -// then the default directory for temporary files is used. -func CertFile(dir string) string { - return mustWriteToFile(dir, cert) -} - -// KeyFile returns the path to a temporary file, in directory dir, containing a key. -// It is up to the caller to remove the file when finished.If dir is the empty string -// then the default directory for temporary files is used. -func KeyFile(dir string) string { - return mustWriteToFile(dir, key) -} - // CertExampleDotComFile returns the path to a temporary file, in directory dir, containing // a cert for example.com. It is up to the caller to remove the file when finished. If // dir is the empty string then the default directory for temporary files is used. @@ -54,82 +40,6 @@ func mustTempFile(dir string) string { return tmpfile.Name() } -const cert = `-----BEGIN CERTIFICATE----- -MIIDkjCCAnqgAwIBAgIUMzZwlZl1wGrsn6gd3i6a3mRzhskwDQYJKoZIhvcNAQEL -BQAwczELMAkGA1UEBhMCVVMxCzAJBgNVBAgMAkNBMRYwFAYDVQQHDA1TYW4gRnJh -bmNpc2NvMRMwEQYDVQQKDApNeSBDb21wYW55MRQwEgYDVQQLDAtNeSBEaXZpc2lv -bjEUMBIGA1UEAwwLZXhhbXBsZS5jb20wHhcNMjMxMjIxMTMyNDI1WhcNMjQxMjIw -MTMyNDI1WjBzMQswCQYDVQQGEwJVUzELMAkGA1UECAwCQ0ExFjAUBgNVBAcMDVNh -biBGcmFuY2lzY28xEzARBgNVBAoMCk15IENvbXBhbnkxFDASBgNVBAsMC015IERp -dmlzaW9uMRQwEgYDVQQDDAtleGFtcGxlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQAD -ggEPADCCAQoCggEBALyTUYxZHFXr1vF2XfBkoCpo/L5TJVuBMNRl1WAZASmDhYCT -SMCMtrvxM56jtdeOuS24V10CxiV2Wd2PvmRo/GGplZyVvwz/JwzHKS+Jyt8y2HP5 -bJB8Wuw0CoITt431ojC9Qd3P1htasRGg3+i8/w00nnRUs2OdBCPFstmfikMZ6kFP -Lbl4Sz4/Hd+qIIjGkCZd2hSMCz+NagsN/Mn12UKcyau+5C24WhMOUm1UFg3DckFa -o/jfTIsrVlenYd9WiP9vTI/SWytAhER/tAxreR8OVRvQ8EbZ3Q8kGAxOL/CkN+Yb -5DgEQ1UJSJDJS0K0AQt3quUQGx9B14Wx5ZR828kCAwEAAaMeMBwwGgYDVR0RBBMw -EYIPc2FuLmV4YW1wbGUuY29tMA0GCSqGSIb3DQEBCwUAA4IBAQCdQIowDAZn7DGV -aHkhxA+qT/Tu62cpkbNkd92L2Kt9QmkTuu6i7MOW0a3qUDYyv6vJSSznYwsjefe4 -aAYWIqK5MdEztCk3MyYiwtNNZHCAoIbTT+/8REjmDzfbaNxXo0JlSoRbf+LUpnbT -WF56IgoZGcI+yJqgoPrpgGZXLEMEcus7bMDwabruQndClCtoP33ezhw06G8Tk3Z4 -/eTtGjCuYdKfzl7PLIP/k7kJqVVqPO4jKFnSbXRcvgmk9bA3RVIr4asbyK85wskS -HKJWgffj/dB4TEWO7SOK5nfudsQucF8SkL9FsYecDaeaNXjHz2RLvnrpl84StRGS -hS/pL0AI ------END CERTIFICATE-----` - -const key = `-----BEGIN PRIVATE KEY----- -MIIJQQIBADANBgkqhkiG9w0BAQEFAASCCSswggknAgEAAoICAQDZzGDUhw/WANB7 -Msmb0wOQQQeo5kQCfWJq2ggdSgiV+7fpKuKmfjKhPEzWmY5PfsIWhqJF+PRuIRuO -uB+LRBeT3PgTtXLRcYXpcHkqh86d6qdS5KCc6cSQvSmBDeK0Kv8UuS+5Pz/Ngov4 -9ewyd8cY5GAmYeW7X/itjpn91rJp/h9QWUpFHOIRVSfcQx3+EcUdOFeKZZ3ea3ET -ViekqKacUuYhiNesrbZBRknYxhVxGSUlhpeEgmAdbayh75lGEUfFxihjfOdEVldi -SgJcRNwTEKajtzMug3j8X3bMUMQZsAxvAL/tmj0DFCDfRDiIKst/ADH4z/QDZ1Ft -JOoZF4F4FV8QFail/PvNXdbuQj6zkrYAgWL7WFuYnpqYqia/d/jPoyX7I6qurgq2 -sNLGdJ/pWHsQezCzq7Iwbtjqsuk+bWwsOJ988AGUC2L9iVVP7e+WDzqHtWXDrwJw -1JyWDJ8Vb6LV7lr4RXtYHRWYhBfNKSEDzpv1oPypZ0s3gfyxGVJndd8iKXi73dAM -L83MmXbbBGw3v3brFHgOBsJ6wSxzfrUpgTx8FLHrV9roTK+VCgjYjivVpYJIertg -Z9XqC4Fl6RHQF5oiyg3B9kNmtugvSw6scbGIR/Nh1UKkDGN0bXfO4+j7rfh9R97A -ECrr3mRVhzLdoG3bA6QvJAYu7QIcewIDAQABAoICAEKMgXXPAxa3zvwl65ZyZp9Y -T3fbTCKan0zY7CvO6EqzzGExmmmXG+9KVowoBWTi7XkmkETjKgTQlvQH7JOILdAf -b6nOApRepLVMialmL8ru3Uul0jG/+DDlq93kGUZF8QUrBJsM6XjpD831jsNo9+vy -NDLmLOURERIvBXybco6SeIz7i4cMqUL0iyZxV6O/WERyZ8VBAXjpyXZIF/rnEWmo -purOPmBj/9F4Ia5b8EdLkJ8jvf5eO/IiBeLBLEtNkmmq/8JOcvfdjfvZc1kwLTKi -HtjdbIUk5P3wSYNqllDnCxWL3BlEzKm5J8YwuTlaIi3fKGXHXN8BXc8EvYcHOKah -K89HIuexjQyQ0JAWKIIJTZs8jVvTMTjgYnEAB+sLfehBBOKmRdmYij28kIo18blx -tsx1HjdfImDd0QloofRW1Srp6FhcgDK0qfWXze/Vm6IfF40oTVE3fS/RgYzx0SSM -2pc6hTXOnrw1r/UBPyNkJ1D/4UK4m0x91BvTSi6MsThWnhicoaTZl1GP4Qpeo9+4 -9Z7t0Yalm0PA55aiHZsm9S8OroasVun2QnDxfUC44PIov7nhqifGVcKA8hIDgSNT -WP8amq9cNjft5xQnP/y70fbioPPiwau2+Q0SXVn/BYxjqZrNp6OfbWSi2IRO1NOD -QZDo2rtnL1RrDdBmtDShAoIBAQD2MTJT6HNacu8+u7DDtbMdKvy7rXVblGbUouh9 -cLWX7/zGVcNzB5GSVki3J7J+Kdrs4H45/1JR1YvWtWd93F/xKXmCGkUQCsturtRn -IX93by3zuWNdLv4giP2pk97wNYaaJWZmo87nXKV6BbL//eEl+Ospg5lGrLCsj+Mk -9V8oBBxsxqgVZYVyoevLDAuwUw3Cb52PhnEaLrv30ljGFHpsYb9lFlMs8vRosVWy -i3/T5ASfdnMXKQ1gxN/aPtN6yrFVpXe+S/A5JBzAQfrjiZk4SzNvE7R0eze1YLfO -IulTvlqpk3HVQEpgfq8D3l1x/zqsh0SpCH3VkV5sQQx262iRAoIBAQDieZsWv9eO -QzF5nZmh3NL53LkpqONRBjF5b9phppgxw2jiS8D2eEn2XWExmEaK/JppmzvfxSG4 -cPaQHJFjkRGpnJyBlBUnyk4ua5hlXOTb9l5HsLIBlVdcWxwF+zJh8Ylwau+mcVF8 -b8n86zke88du+xTvXfMDn6p6EACmBncyZGi424hSw72u8jS0cdmqJl3isLR6duG3 -4yipWhEpLU5YuR+796jmjK5h+HQwl/Ra2dykbAw7vN0ofdK0+7LrVnGh7dDecOGK -0fElgFPTazeQQV+dEzqz6UwO0Z9koxqBwPqCLi7sXOeUWwqqb3ewYO7TMM4NlK/o -C8oG4yvWj9pLAoIBACEI9PHhbSkj5wqJ8OwyA3jUfdlJK0hAn5PE0GGUsClVIJwU -ggd7aoMyZMt+3iqjvyat8QIjSo6EkyEacmqnGZCoug9FKyM975JIj2PPUOVb29Sq -ebTVS3BeMXuBxhaBeDBS+GypamgNPH8lKKHFFWMdBaEqcXTUU1i0bgxViJE8C/xk -o8VLPB7nr1YtpZvhaSVACOprZd3Xi41zgkoCEXNdomsUFdEgQL+TnCY7Jcnu/NfQ -8xyWe58Si98jMwl1DVqqu2ijk/Z27Ay4TcweeJrfLGWpRTukFROXiNJ2SMzd7Bh5 -Gns9Bz3vgdiJDAzx7JOeCw6LfycbPIpWKDAE4qECggEAZ5kPG7H4Dcio6iPwsj1M -eSXBwc/S5C58FTvYXtERT7o+0T2r8FMIKl1+52vr4Qo6LFLpaaxIh5GNCFE5JJ2o -wbi1UwUFRGVjrBJl7QA4ZHJnoE2wr8673rCCui21V15g637PT4kIqG6OrFaBk6oa -MadDZVfJoX+5QQru8QOGJRQPX3h0/L8zlsKO33gxBId2bQs+E8Mr761G3Wko7nge -HbHZVWet6IC0CHbZ15y7F5APQVt3oR/83tfnughlSQgLBPK/l/F1CsaMlAYG0nB6 -Q0/USAsS0FfJBgJX8nY12uMG9OPhbRf2i0O2Nk61JobA2PS7XTUF3pT9/naOiCDX -zwKCAQBK9dPzoc9CfdAJVWjCqR2xS8Jr3/64k59Pya6e7Y4ca+e1g4N7hhQRLPW7 -owTKloXrR0mAkwOIiJlk+gXsl2banuSajiPxumSfPYWE1Q/QNFD/WoPvo6rPYJ8N -yA/ORsMjWq51SfpzOU69+FdY7p3GvIVWhRtinqseaAIMOkNZBLVDXF4DvtFgiLZM -bKAjGuXsKOT3MPFU9tHxi4q/7flUb30mSUVXyPjh+C+UH7e0BS0pi/rDeRdEju4z -bJVERP8/VAJ61TDQJq+Il95fzKe4yTA3dDHnO+EG5W2eCsawTK4Ze5XAWqomgdew -62D3AkJQiflLfJL8zTFph1FZXLOm ------END PRIVATE KEY-----` - const certExampleDotCom = `-----BEGIN CERTIFICATE----- MIIDjjCCAnagAwIBAgIUQdomCw77L5nEqXe9WKVBu+YNTtUwDQYJKoZIhvcNAQEL BQAwczELMAkGA1UEBhMCVVMxCzAJBgNVBAgMAkNBMRYwFAYDVQQHDA1TYW4gRnJh