1
0
mirror of https://github.com/moparisthebest/wget synced 2024-07-03 16:38:41 -04:00

Added new test Test--https-crl.py to check --crl-file

For this test, a proper CA and server key/cert infrastructure
was needed. E.g. without CN being 127.0.0.1 a matching CRL file
couldn't be generated.
This commit is contained in:
Tim Rühsen 2014-11-10 11:59:26 +01:00
parent e4a8fe84e2
commit a0c30fc72b
12 changed files with 491 additions and 32 deletions

View File

@ -1,3 +1,14 @@
2014-11-10 Tim Ruehsen <tim.ruehsen@gmx.de>
* removed certs/wget-cert.pem
* added certs/ca-cert.pem, certs/ca-key.pem, certs/server-cert.pem,
certs/server-key.pem and certs/server-crl.pem
* added certs/README for description how to generate the certs and keys
* server/http/http_server.py: amended to work with new certs/ files
* added Test--https-crl.py to test --crl-file
* Makefile.am: added Test--https-crl.py
* Test--https.py: use --ca-certificate of --no-check-certificates
2014-10-25 Tim Ruehsen <tim.ruehsen@gmx.de>
* test/base_test.py (gen_cmd_line): generate valgrind command line if requested

View File

@ -47,6 +47,7 @@ if HAVE_PYTHON3
Test-cookie.py \
Test-Head.py \
Test--https.py \
Test--https-crl.py \
Test-O.py \
Test-Post.py \
Test--spider-r.py

50
testenv/Test--https-crl.py Executable file
View File

@ -0,0 +1,50 @@
#!/usr/bin/env python3
from sys import exit
from test.http_test import HTTPTest
from test.base_test import HTTP, HTTPS
from misc.wget_file import WgetFile
import os
"""
This test ensures that Wget can download files from HTTPS Servers
"""
TEST_NAME = "HTTPS CRL"
############# File Definitions ###############################################
File1 = "Would you like some Tea?"
File2 = "With lemon or cream?"
A_File = WgetFile ("File1", File1)
B_File = WgetFile ("File2", File2)
CAFILE = os.path.abspath(os.path.join(os.getenv('srcdir', '.'), 'certs', 'ca-cert.pem'))
CRLFILE = os.path.abspath(os.path.join(os.getenv('srcdir', '.'), 'certs', 'server-crl.pem'))
WGET_OPTIONS = "--crl-file " + CRLFILE + " --ca-certificate=" + CAFILE
WGET_URLS = [["File1", "File2"]]
Files = [[A_File, B_File]]
Servers = [HTTPS]
ExpectedReturnCode = 5
################ Pre and Post Test Hooks #####################################
pre_test = {
"ServerFiles" : Files
}
test_options = {
"WgetCommands" : WGET_OPTIONS,
"Urls" : WGET_URLS
}
post_test = {
"ExpectedRetcode" : ExpectedReturnCode
}
err = HTTPTest (
name=TEST_NAME,
pre_hook=pre_test,
test_params=test_options,
post_hook=post_test,
protocols=Servers
).begin ()
exit (err)

View File

@ -3,6 +3,7 @@ from sys import exit
from test.http_test import HTTPTest
from test.base_test import HTTP, HTTPS
from misc.wget_file import WgetFile
import os
"""
This test ensures that Wget can download files from HTTPS Servers
@ -17,7 +18,8 @@ A_File = WgetFile ("File1", File1)
B_File = WgetFile ("File2", File2)
C_File = WgetFile ("File3", File3)
WGET_OPTIONS = "--no-check-certificate"
CAFILE = os.path.abspath(os.path.join(os.getenv('srcdir', '.'), 'certs', 'ca-cert.pem'))
WGET_OPTIONS = "--ca-certificate=" + CAFILE
WGET_URLS = [["File1", "File2"]]
Files = [[A_File, B_File]]

81
testenv/certs/README Normal file
View File

@ -0,0 +1,81 @@
To create the server RSA private key:
$ certtool --generate-privkey --outfile server-key.pem --rsa
To create a self signed CA certificate:
$ certtool --generate-privkey --outfile ca-key.pem
$ certtool --generate-self-signed --load-privkey ca-key.pem --outfile ca-cert.pem
Common name: GNU Wget
UID:
Organizational unit name: Wget
Organization name: GNU
Locality name:
State or province name:
Country name (2 chars):
Enter the subject's domain component (DC):
This field should not be used in new certificates.
E-mail:
Enter the certificate's serial number in decimal (default: 6079996172146959675):
Activation/Expiration time.
The certificate will expire in (days): -1
Extensions.
Does the certificate belong to an authority? (y/N): y
Path length constraint (decimal, -1 for no constraint):
Is this a TLS web client certificate? (y/N):
Will the certificate be used for IPsec IKE operations? (y/N):
Is this a TLS web server certificate? (y/N): y
Enter a dnsName of the subject of the certificate: 127.0.0.1
Enter a dnsName of the subject of the certificate:
Enter a URI of the subject of the certificate:
Enter the IP address of the subject of the certificate:
Will the certificate be used for signing (DHE and RSA-EXPORT ciphersuites)? (Y/n):
Will the certificate be used for encryption (RSA ciphersuites)? (Y/n):
Will the certificate be used to sign other certificates? (y/N): y
Will the certificate be used to sign CRLs? (y/N): y
Will the certificate be used to sign code? (y/N):
Will the certificate be used to sign OCSP requests? (y/N): y
Will the certificate be used for time stamping? (y/N):
Enter the URI of the CRL distribution point:
To generate a server certificate using the private key only:
$ certtool --generate-certificate --load-privkey server-key.pem --outfile server-cert.pem --load-ca-certificate ca-cert.pem --load-ca-privkey ca-key.pem
Common name: 127.0.0.1
UID:
Organizational unit name: Wget
Organization name: GNU
Locality name:
State or province name:
Country name (2 chars):
Enter the subject's domain component (DC):
This field should not be used in new certificates.
E-mail:
Enter the certificate's serial number in decimal (default: 6079998890988883856):
Activation/Expiration time.
The certificate will expire in (days): -1
Extensions.
Does the certificate belong to an authority? (y/N):
Is this a TLS web client certificate? (y/N): y
Will the certificate be used for IPsec IKE operations? (y/N):
Is this a TLS web server certificate? (y/N):
Enter a dnsName of the subject of the certificate: localhost
Enter a dnsName of the subject of the certificate: 127.0.0.1
Enter a dnsName of the subject of the certificate:
Enter a URI of the subject of the certificate:
Enter the IP address of the subject of the certificate:
Enter the e-mail of the subject of the certificate:
Will the certificate be used for signing (required for TLS)? (Y/n):
Will the certificate be used for encryption (not required for TLS)? (Y/n):
To create a CRL for the server certificate:
$ certtool --generate-crl --load-ca-privkey ca-key.pem --load-ca-certificate ca-cert.pem --load-certificate server-cert.pem --outfile server-crl.pem
Generating a signed CRL...
Update times.
The certificate will expire in (days): -1
CRL Number (default: 6080006793650397145):

21
testenv/certs/ca-cert.pem Normal file
View File

@ -0,0 +1,21 @@
-----BEGIN CERTIFICATE-----
MIIDXjCCAkagAwIBAgIIVGB8TiyN5TswDQYJKoZIhvcNAQELBQAwMDERMA8GA1UE
AxMIR05VIFdnZXQxDTALBgNVBAsTBFdnZXQxDDAKBgNVBAoTA0dOVTAiGA8yMDE0
MTExMDA4NTAyNFoYDzk5OTkxMjMxMjM1OTU5WjAwMREwDwYDVQQDEwhHTlUgV2dl
dDENMAsGA1UECxMEV2dldDEMMAoGA1UEChMDR05VMIIBIjANBgkqhkiG9w0BAQEF
AAOCAQ8AMIIBCgKCAQEAv2IR1/gsaJsn+egtVFbMMMbivK+eVzPY8wEXb2flpe9a
Kkwz824nSSrWfRigQmf/ODkNlK2x91kppfPmWkClUREQB3I4d/sHFnzqCkFKmNwt
VT4DsL47VumgZF6ZjSqTYQD3MDH3VhFj1iKrRMM/aCZXwntD+67sKw6UPXfFbfUO
Recpb7fCZPZFVFYStxgcF7cyH+DADLX5QCEjiLYH1es6FXrdw+ypgwBl+HuLkQ/4
gE0JLQK5PAKSYeLy0JEBUPovkMXT+r9aPkQBF/9WD6uUPia0ERHbMIT0My84hBrG
9d5u5gXPnH1ZxKIr8iJOYCydVjYndn21zs2IExwL6wIDAQABo3gwdjAPBgNVHRMB
Af8EBTADAQH/MBQGA1UdEQQNMAuCCTEyNy4wLjAuMTAdBgNVHSUEFjAUBggrBgEF
BQcDAQYIKwYBBQUHAwkwDwYDVR0PAQH/BAUDAwemADAdBgNVHQ4EFgQU8z5OOIRK
qb7Bb8dho1DabimL61QwDQYJKoZIhvcNAQELBQADggEBAEyG0E8RrSNfv9ZtqidB
9j660p8CynFDsX+hjfR1Sy4v5aUxxaA1spj/L5ioQXgjFKfht3zyPQBwLDSWNb41
1yaGrPjwDfal/CWY1lJHGZGiEuxtZ32mMYNSUNBQk0t2P33NssdjdtJ8Tm9BZwqH
/NxHTi00MTQlG4L01KSAf7wJtapA1Ad6u6WAU+316EuTQ0eh7owOugaSIpCFgwQA
hq3SkUW8P2hL9ZYX0lGzaqE9oKm9dIvpfVPrWhbhnGMPR2X/7B8IgK84r3Eb1CF2
3nysbcWH8BSxpN0d8oYPhUFi3jyV9InqFvEPxyMQ9MmtjDb4JpA6tkL6UwP77br6
Th0=
-----END CERTIFICATE-----

144
testenv/certs/ca-key.pem Normal file
View File

@ -0,0 +1,144 @@
Public Key Info:
Public Key Algorithm: RSA
Key Security Level: Medium (2048 bits)
modulus:
00:bf:62:11:d7:f8:2c:68:9b:27:f9:e8:2d:54:56:
cc:30:c6:e2:bc:af:9e:57:33:d8:f3:01:17:6f:67:
e5:a5:ef:5a:2a:4c:33:f3:6e:27:49:2a:d6:7d:18:
a0:42:67:ff:38:39:0d:94:ad:b1:f7:59:29:a5:f3:
e6:5a:40:a5:51:11:10:07:72:38:77:fb:07:16:7c:
ea:0a:41:4a:98:dc:2d:55:3e:03:b0:be:3b:56:e9:
a0:64:5e:99:8d:2a:93:61:00:f7:30:31:f7:56:11:
63:d6:22:ab:44:c3:3f:68:26:57:c2:7b:43:fb:ae:
ec:2b:0e:94:3d:77:c5:6d:f5:0e:45:e7:29:6f:b7:
c2:64:f6:45:54:56:12:b7:18:1c:17:b7:32:1f:e0:
c0:0c:b5:f9:40:21:23:88:b6:07:d5:eb:3a:15:7a:
dd:c3:ec:a9:83:00:65:f8:7b:8b:91:0f:f8:80:4d:
09:2d:02:b9:3c:02:92:61:e2:f2:d0:91:01:50:fa:
2f:90:c5:d3:fa:bf:5a:3e:44:01:17:ff:56:0f:ab:
94:3e:26:b4:11:11:db:30:84:f4:33:2f:38:84:1a:
c6:f5:de:6e:e6:05:cf:9c:7d:59:c4:a2:2b:f2:22:
4e:60:2c:9d:56:36:27:76:7d:b5:ce:cd:88:13:1c:
0b:eb:
public exponent:
01:00:01:
private exponent:
45:0c:7f:fd:98:a7:85:12:3d:a9:17:90:8b:36:49:
b3:6b:7e:50:af:58:04:84:4b:48:d9:62:f8:29:d7:
1c:38:30:22:c4:9d:95:bd:6f:65:21:94:83:4b:c8:
3e:4d:41:32:aa:ba:f0:a2:7e:6c:0c:7a:4f:4a:a1:
18:7c:ec:68:44:2c:b1:53:0f:76:92:56:2b:51:e4:
2a:d1:05:b6:02:f2:44:27:fc:b2:de:df:8f:ea:f8:
98:5d:dd:2e:a6:66:c7:ff:ce:2f:50:47:b9:80:ca:
b1:6e:8e:b6:5f:6f:58:07:45:70:80:82:b5:a2:95:
c8:af:18:e2:d8:7c:9d:bf:c5:a9:da:4f:af:08:37:
92:27:94:12:c0:94:70:90:ff:e4:05:8b:ed:18:a9:
19:3c:47:3a:7c:fe:4f:9c:15:ab:f6:7e:48:2a:58:
d7:14:67:96:bd:e6:fa:9f:3a:51:0c:63:49:14:d5:
9d:e9:a8:24:19:2a:83:e4:fe:e2:ec:db:f9:13:33:
a6:d3:62:d2:6b:7e:a9:5b:93:73:f5:c9:d0:ad:58:
11:cb:77:d3:13:3c:bf:37:f9:64:95:c7:4c:69:f2:
6e:b8:36:69:57:93:4a:03:06:58:8a:51:3d:d6:97:
61:2f:7c:76:33:14:88:51:45:68:4e:29:fe:12:43:
69:
prime1:
00:e0:e6:81:38:18:3e:c8:98:51:71:2d:5f:22:8c:
93:95:37:17:47:00:4f:6a:87:98:73:8d:f3:c3:02:
f7:e1:9d:a0:5c:a5:10:a6:0d:88:5d:e0:72:10:93:
24:af:6e:a4:0e:55:5c:03:37:5f:1d:90:41:c2:d6:
e3:a6:ba:20:08:0b:01:31:eb:fc:7e:97:66:3c:fe:
b5:ab:4c:0b:2f:18:16:f3:28:47:70:41:dc:cf:04:
9c:7e:28:78:3b:3f:31:cf:b1:77:2c:6d:c9:bf:ad:
19:ff:03:1f:c6:98:9a:60:47:a5:1d:c4:52:c5:9e:
77:5a:cc:a4:e3:96:81:d4:4d:
prime2:
00:d9:d9:0c:6e:81:bb:0e:5d:c6:92:cc:48:70:b8:
da:60:e8:56:e7:2a:20:da:29:0f:c9:f0:9f:b8:9f:
df:d9:a1:68:7e:ce:3e:7c:f2:00:66:68:79:c4:01:
fa:b9:71:3e:73:06:3f:85:5c:83:33:ee:58:77:50:
89:aa:90:33:d0:6c:aa:6f:34:b2:30:8b:e9:a9:82:
df:e2:7f:04:09:9f:14:9a:db:c7:cb:e5:85:46:b2:
42:d0:a7:fe:7a:e3:ff:1e:84:9c:36:50:e3:de:fb:
11:1c:34:09:fe:46:db:45:c3:50:19:f1:25:c0:e3:
5c:d5:0d:88:13:e1:9a:5d:17:
coefficient:
00:ca:79:cb:79:87:91:9f:9a:99:0b:5d:c5:78:21:
a7:60:c6:8a:2d:a5:b5:87:a2:d6:df:b0:17:5f:bf:
e1:ce:f0:ca:89:18:0e:e0:4a:7f:00:e5:41:2d:04:
5b:05:51:e5:08:89:dd:80:82:c7:94:94:1c:f4:0f:
1b:9a:d0:72:83:bb:e9:ca:d5:09:0d:4b:c0:b7:6a:
a7:b4:c3:df:4e:f1:7f:0f:57:ad:25:ff:e4:d3:ef:
05:95:31:ca:00:54:97:4b:2d:56:aa:1a:89:d8:a0:
d6:dc:64:88:88:36:26:92:39:57:8b:da:18:23:77:
c3:e3:39:0e:95:f7:3c:77:fe:
exp1:
00:99:f2:8f:4f:93:a1:1e:74:cd:82:f8:78:df:d0:
74:91:b6:a5:53:6f:cd:ec:f1:26:95:2a:fd:4a:67:
34:c1:16:c2:17:c8:d1:ed:a8:e3:c8:c7:03:ad:7e:
db:a4:ce:ca:b4:19:10:24:0f:7a:27:65:80:ee:5b:
64:77:d3:7e:6b:a3:04:cd:64:69:71:4a:37:ac:d6:
fa:0a:68:c2:5b:19:55:54:5b:25:13:9d:b2:05:6f:
75:a4:12:15:c3:10:8e:0b:4a:c2:76:02:2d:10:ec:
f0:17:94:ce:e2:85:c1:5e:d8:8c:19:25:33:37:9d:
32:bc:4f:cb:2b:12:f2:8a:1d:
exp2:
3e:53:68:c9:1c:f8:a5:6d:92:e8:60:e5:c0:ca:42:
40:43:78:c9:7e:36:13:f4:77:7d:f1:07:e1:4c:6c:
40:d9:7b:09:fc:7b:c8:47:7c:71:d0:26:36:3b:d2:
bd:c7:76:74:76:2f:2a:3a:83:97:11:f3:e1:7e:fb:
43:ff:29:b3:d1:c3:19:39:dc:59:23:4e:60:9e:fe:
ea:d0:28:19:90:97:d6:8e:56:a5:31:2f:66:40:8d:
f9:20:77:20:35:a6:c1:d6:72:d2:df:65:b2:5f:e6:
4f:49:5c:2a:91:9f:1e:60:78:c4:53:47:d7:dd:b4:
ab:87:c9:8c:d6:98:d1:55:
Public Key ID: F3:3E:4E:38:84:4A:A9:BE:C1:6F:C7:61:A3:50:DA:6E:29:8B:EB:54
Public key's random art:
+--[ RSA 2048]----+
| |
| |
| |
| .. . |
| Eo . S |
| .+o..+. + |
| .+o.= oo o |
|.o.o* o +. |
|+o+*.. .o. |
+-----------------+
-----BEGIN RSA PRIVATE KEY-----
MIIEpAIBAAKCAQEAv2IR1/gsaJsn+egtVFbMMMbivK+eVzPY8wEXb2flpe9aKkwz
824nSSrWfRigQmf/ODkNlK2x91kppfPmWkClUREQB3I4d/sHFnzqCkFKmNwtVT4D
sL47VumgZF6ZjSqTYQD3MDH3VhFj1iKrRMM/aCZXwntD+67sKw6UPXfFbfUORecp
b7fCZPZFVFYStxgcF7cyH+DADLX5QCEjiLYH1es6FXrdw+ypgwBl+HuLkQ/4gE0J
LQK5PAKSYeLy0JEBUPovkMXT+r9aPkQBF/9WD6uUPia0ERHbMIT0My84hBrG9d5u
5gXPnH1ZxKIr8iJOYCydVjYndn21zs2IExwL6wIDAQABAoIBAEUMf/2Yp4USPakX
kIs2SbNrflCvWASES0jZYvgp1xw4MCLEnZW9b2UhlINLyD5NQTKquvCifmwMek9K
oRh87GhELLFTD3aSVitR5CrRBbYC8kQn/LLe34/q+Jhd3S6mZsf/zi9QR7mAyrFu
jrZfb1gHRXCAgrWilcivGOLYfJ2/xanaT68IN5InlBLAlHCQ/+QFi+0YqRk8Rzp8
/k+cFav2fkgqWNcUZ5a95vqfOlEMY0kU1Z3pqCQZKoPk/uLs2/kTM6bTYtJrfqlb
k3P1ydCtWBHLd9MTPL83+WSVx0xp8m64NmlXk0oDBliKUT3Wl2EvfHYzFIhRRWhO
Kf4SQ2kCgYEA4OaBOBg+yJhRcS1fIoyTlTcXRwBPaoeYc43zwwL34Z2gXKUQpg2I
XeByEJMkr26kDlVcAzdfHZBBwtbjprogCAsBMev8fpdmPP61q0wLLxgW8yhHcEHc
zwScfih4Oz8xz7F3LG3Jv60Z/wMfxpiaYEelHcRSxZ53Wsyk45aB1E0CgYEA2dkM
boG7Dl3GksxIcLjaYOhW5yog2ikPyfCfuJ/f2aFofs4+fPIAZmh5xAH6uXE+cwY/
hVyDM+5Yd1CJqpAz0GyqbzSyMIvpqYLf4n8ECZ8UmtvHy+WFRrJC0Kf+euP/HoSc
NlDj3vsRHDQJ/kbbRcNQGfElwONc1Q2IE+GaXRcCgYEAmfKPT5OhHnTNgvh439B0
kbalU2/N7PEmlSr9Smc0wRbCF8jR7ajjyMcDrX7bpM7KtBkQJA96J2WA7ltkd9N+
a6MEzWRpcUo3rNb6CmjCWxlVVFslE52yBW91pBIVwxCOC0rCdgItEOzwF5TO4oXB
XtiMGSUzN50yvE/LKxLyih0CgYA+U2jJHPilbZLoYOXAykJAQ3jJfjYT9Hd98Qfh
TGxA2XsJ/HvIR3xx0CY2O9K9x3Z0di8qOoOXEfPhfvtD/ymz0cMZOdxZI05gnv7q
0CgZkJfWjlalMS9mQI35IHcgNabB1nLS32WyX+ZPSVwqkZ8eYHjEU0fX3bSrh8mM
1pjRVQKBgQDKect5h5GfmpkLXcV4IadgxootpbWHotbfsBdfv+HO8MqJGA7gSn8A
5UEtBFsFUeUIid2AgseUlBz0Dxua0HKDu+nK1QkNS8C3aqe0w99O8X8PV60l/+TT
7wWVMcoAVJdLLVaqGonYoNbcZIiINiaSOVeL2hgjd8PjOQ6V9zx3/g==
-----END RSA PRIVATE KEY-----

View File

@ -0,0 +1,21 @@
-----BEGIN CERTIFICATE-----
MIIDgDCCAmigAwIBAgIIVGB+xzQpT5AwDQYJKoZIhvcNAQELBQAwMDERMA8GA1UE
AxMIR05VIFdnZXQxDTALBgNVBAsTBFdnZXQxDDAKBgNVBAoTA0dOVTAiGA8yMDE0
MTExMDA5MDA1OVoYDzk5OTkxMjMxMjM1OTU5WjAxMRIwEAYDVQQDEwkxMjcuMC4w
LjExDTALBgNVBAsTBFdnZXQxDDAKBgNVBAoTA0dOVTCCASIwDQYJKoZIhvcNAQEB
BQADggEPADCCAQoCggEBAMjC3Gt55EfStl6mE371+pD3/cpR5MLxkdbBss5MlIP2
TDhiPOItLXml8oxs4BjUm3wfn3GV9iJLmbzbIWL+0kbRkQ2LCPKUf+Cln3z2ZE+r
XwdWlT8gVfv51Opfkp2lLDVUqLfNKRGQgivjSCmLqY2LqeB0SaVNvuaD3EpqZyIH
0E5SZgjqBHgRRtvGkcy0rOmp5SI2NASLugUioXa9OLWjpYDwodsd3ERlL0DJ1aJW
8TC8Tqix4i0osWzar+LXBIin0Qvar9/uRHN0p1kq3p0XgNHKqWpiTT54+WYx7Pem
v4qRXz11swiJzUL+Pw1DurQ9smbzDgAsz7V2FJnUeCcCAwEAAaOBmDCBlTAMBgNV
HRMBAf8EAjAAMBMGA1UdJQQMMAoGCCsGAQUFBwMCMB8GA1UdEQQYMBaCCWxvY2Fs
aG9zdIIJMTI3LjAuMC4xMA8GA1UdDwEB/wQFAwMHoAAwHQYDVR0OBBYEFJfm323L
JbKTM/tMKSt0qlUqewbnMB8GA1UdIwQYMBaAFPM+TjiESqm+wW/HYaNQ2m4pi+tU
MA0GCSqGSIb3DQEBCwUAA4IBAQBeRV2kMWuksna/E6hqcQ5C76UFq9RDcvxIoJQ/
2ANywD+EcQYyBNSSL+yyv6/Pp9gXlqjciYdb3OgdPb++3y/UC6IxkeFv1uNDwJfS
HVX9avm12CXfZt4zMrq1GQX4gjJ9jkItMCY4atdyAQROGnzDWzNuwSWaasL3oUPT
qDUMHZR2kH2cIr9S07YT/8RslMdlMgeI4Y9JCGuRspgxwnDtM5L3vZEnGsud7DSa
1/8LGiYydNIpCikwd2Pzdwp9G8mm7AExU3AsXPCyYxDWWjfyhBjTY+5aR57igNeB
CaP+xoDNilbJ/RM+0Ygv/ue7gY49f8nESQP+0HQVborwl3h2
-----END CERTIFICATE-----

View File

@ -0,0 +1,12 @@
-----BEGIN X509 CRL-----
MIIB1DCBvQIBATANBgkqhkiG9w0BAQsFADAwMREwDwYDVQQDEwhHTlUgV2dldDEN
MAsGA1UECxMEV2dldDEMMAoGA1UEChMDR05VGA8yMDE0MTExMDA5MzUyMVoYDzk5
OTkxMjMxMjM1OTU5WjAdMBsCCFRgfsc0KU+QGA8yMDE0MTExMDA5MzUyMVqgNjA0
MB8GA1UdIwQYMBaAFPM+TjiESqm+wW/HYaNQ2m4pi+tUMBEGA1UdFAQKAghUYIba
N/WqiDANBgkqhkiG9w0BAQsFAAOCAQEALV862K6ErgDdHKVag2mibcyguI83mPUm
AhkbZ0vUFIjf39kDwXfBdGjQPPRilAM+2nraN7UTZs6y+2UDTbavaOpn5YFEoP5f
Z6AN+PMEVi8QfkpQHIRJPVg1noJMBU+KgqGvzg7pCpzD8WyrH/4AAmuQoD18YndP
SQGmTvsap3nCQPtCcGnONbdvqlHF47toy9nYz+4auS+RpEPiUa9YT5zNOwQwlQg5
cgdbkheEqN3SLeTAxvDSVaHbVEr2U7rsR8ckMNXE0xgNuDmvIiTiqps+e2oE88Ii
421c+VGZE4LE5NeETIk8V4drxbdYZpwRB2/BzmDwKhMAB8WBIH2sFA==
-----END X509 CRL-----

View File

@ -0,0 +1,144 @@
Public Key Info:
Public Key Algorithm: RSA
Key Security Level: Medium (2048 bits)
modulus:
00:c8:c2:dc:6b:79:e4:47:d2:b6:5e:a6:13:7e:f5:
fa:90:f7:fd:ca:51:e4:c2:f1:91:d6:c1:b2:ce:4c:
94:83:f6:4c:38:62:3c:e2:2d:2d:79:a5:f2:8c:6c:
e0:18:d4:9b:7c:1f:9f:71:95:f6:22:4b:99:bc:db:
21:62:fe:d2:46:d1:91:0d:8b:08:f2:94:7f:e0:a5:
9f:7c:f6:64:4f:ab:5f:07:56:95:3f:20:55:fb:f9:
d4:ea:5f:92:9d:a5:2c:35:54:a8:b7:cd:29:11:90:
82:2b:e3:48:29:8b:a9:8d:8b:a9:e0:74:49:a5:4d:
be:e6:83:dc:4a:6a:67:22:07:d0:4e:52:66:08:ea:
04:78:11:46:db:c6:91:cc:b4:ac:e9:a9:e5:22:36:
34:04:8b:ba:05:22:a1:76:bd:38:b5:a3:a5:80:f0:
a1:db:1d:dc:44:65:2f:40:c9:d5:a2:56:f1:30:bc:
4e:a8:b1:e2:2d:28:b1:6c:da:af:e2:d7:04:88:a7:
d1:0b:da:af:df:ee:44:73:74:a7:59:2a:de:9d:17:
80:d1:ca:a9:6a:62:4d:3e:78:f9:66:31:ec:f7:a6:
bf:8a:91:5f:3d:75:b3:08:89:cd:42:fe:3f:0d:43:
ba:b4:3d:b2:66:f3:0e:00:2c:cf:b5:76:14:99:d4:
78:27:
public exponent:
01:00:01:
private exponent:
00:92:80:1f:f9:0d:e9:d7:bf:9b:f5:55:9b:c4:7a:
1b:6e:ce:89:14:aa:ce:14:b3:d3:88:b3:b0:97:7a:
aa:a5:e1:85:9d:5f:92:ae:39:e9:85:6b:e3:a3:35:
90:12:8e:93:27:f0:ab:99:67:a5:45:41:85:de:9a:
c9:b2:43:e1:8e:6c:3f:3d:72:c8:04:bc:f8:d4:26:
08:4c:58:40:bb:22:83:26:07:b8:c1:68:07:56:e8:
e8:c6:5f:17:ce:92:49:c0:61:16:fd:89:68:fe:b8:
45:45:61:85:b7:4b:83:5f:17:1b:cf:ff:0b:fe:e4:
cc:f9:ca:1f:66:ee:5e:74:25:94:7a:27:0e:0f:43:
50:14:48:ad:c6:8a:e1:ac:ff:8e:10:ed:e6:92:48:
c8:94:c1:3a:2c:db:86:71:66:8e:19:93:13:ed:f9:
47:06:5e:8b:e2:2e:cb:3a:c2:b3:5e:8d:31:e4:c5:
a7:cd:3f:09:70:e4:02:5d:34:2a:4d:b7:f5:06:e2:
f5:3b:8f:b6:ad:4a:22:b8:fe:43:a7:4d:67:ef:c3:
e1:ed:83:e2:d5:f2:d0:37:0f:56:ab:5b:47:69:0a:
14:03:2c:43:a3:73:e9:05:72:5e:df:68:9c:67:4b:
08:64:2d:c2:67:23:aa:e5:35:88:56:99:95:17:60:
20:01:
prime1:
00:ea:ca:12:86:c0:25:b8:ab:fd:44:2c:1a:3f:1b:
19:68:d4:26:6e:9c:ad:6d:35:12:29:9f:40:c2:4c:
96:ef:8b:08:61:39:08:b7:8a:1f:81:97:71:ff:af:
5a:5b:db:9a:2f:2f:29:ab:92:bb:c5:51:a2:84:c5:
f4:88:79:ac:a2:b8:17:1e:4a:66:62:be:e5:ab:fd:
01:42:6b:16:f9:73:7b:cd:3e:f7:5c:5c:95:dd:79:
73:c4:60:a8:cf:95:80:ba:7d:02:14:9c:7e:58:4f:
8c:08:2c:b8:46:31:23:b2:1a:c3:38:78:5c:ea:50:
9d:42:23:31:30:9a:0f:3f:27:
prime2:
00:da:e5:d3:66:0f:34:53:8c:e8:bf:5f:1e:46:93:
47:df:30:57:be:1f:30:6a:7e:e9:f0:6b:3f:61:89:
51:e2:0b:da:51:09:65:f6:23:3a:61:86:02:46:0a:
cf:11:73:7c:2d:65:bd:64:b8:0e:24:d2:b7:51:8f:
39:b4:a2:1b:e4:9a:bc:66:31:e2:00:eb:3e:20:06:
97:0a:a0:bb:82:da:bf:d5:e9:20:77:a7:55:86:69:
ce:eb:38:d3:f4:ad:82:9e:ce:02:05:c5:11:aa:c0:
b9:66:6f:e7:f4:26:57:72:fa:50:0b:ad:76:44:86:
e0:3e:f7:c0:3e:f3:94:9f:01:
coefficient:
00:94:f2:42:a9:1a:62:1c:7a:bf:34:1b:a7:87:ae:
bd:3a:d9:f1:8c:4e:f6:f5:27:5a:ae:f1:1e:15:06:
a6:d0:e4:e0:ec:3a:40:02:13:b9:31:9a:cd:3a:c6:
34:7d:c6:9d:9e:60:5b:ca:03:88:87:56:f0:e1:ea:
37:96:2b:53:40:b2:78:4e:80:e2:e0:24:8c:83:0e:
f8:77:a4:64:d5:cc:09:6c:d6:52:49:f9:55:61:16:
72:b5:d2:ea:e1:61:fb:31:24:f0:30:8c:fe:5c:29:
71:06:09:11:4d:ef:51:a6:33:62:54:d2:c7:de:ba:
78:17:b1:27:50:f4:ef:c4:3a:
exp1:
1f:36:0d:90:6c:2a:97:8a:05:78:f2:83:ea:af:a7:
89:0f:ea:ab:f9:97:f4:54:81:bd:96:b5:fd:1e:41:
52:46:a1:2e:8b:6e:65:37:af:48:82:e1:5c:a3:ea:
d7:1b:32:3b:e3:81:1e:95:ba:f0:58:11:ca:a4:a6:
05:1e:67:9c:99:ec:38:d2:9b:19:b5:56:c2:ae:37:
64:a4:e7:c0:f1:61:1b:bf:ab:12:54:1c:77:fc:95:
2f:1d:ca:53:0e:04:b6:c5:b7:69:16:04:95:a8:bd:
6c:b8:c5:26:4f:91:f7:33:27:90:72:2f:a7:d6:5f:
91:53:2c:4e:d1:ac:05:31:
exp2:
00:83:a4:55:a6:fa:1b:d8:e7:54:0d:ca:f1:55:36:
3b:b1:f0:cb:c3:cd:d3:fb:27:ca:1e:c9:10:bb:e2:
ae:78:c7:f2:0a:6c:21:82:8e:1b:0d:0d:5f:8e:a9:
ef:6f:aa:49:12:b0:2d:df:45:85:54:05:d9:33:56:
74:38:ba:89:15:c9:2c:e6:34:b7:9b:1f:de:23:ba:
72:d9:74:62:70:46:87:b9:e8:52:9b:42:e9:ff:44:
e0:a8:bb:6b:54:a9:88:75:62:a4:fa:bd:52:6b:a3:
2d:9c:7a:4e:3f:99:53:5c:15:47:50:4e:88:62:9b:
ce:7e:6f:d6:90:c5:42:2b:01:
Public Key ID: 97:E6:DF:6D:CB:25:B2:93:33:FB:4C:29:2B:74:AA:55:2A:7B:06:E7
Public key's random art:
+--[ RSA 2048]----+
| |
| |
| |
| . |
| S + . |
| .+oo. . |
| .=+oo.+ .|
| +E.=O.oo|
| o+ .=*++o|
+-----------------+
-----BEGIN RSA PRIVATE KEY-----
MIIEpQIBAAKCAQEAyMLca3nkR9K2XqYTfvX6kPf9ylHkwvGR1sGyzkyUg/ZMOGI8
4i0teaXyjGzgGNSbfB+fcZX2IkuZvNshYv7SRtGRDYsI8pR/4KWffPZkT6tfB1aV
PyBV+/nU6l+SnaUsNVSot80pEZCCK+NIKYupjYup4HRJpU2+5oPcSmpnIgfQTlJm
COoEeBFG28aRzLSs6anlIjY0BIu6BSKhdr04taOlgPCh2x3cRGUvQMnVolbxMLxO
qLHiLSixbNqv4tcEiKfRC9qv3+5Ec3SnWSrenReA0cqpamJNPnj5ZjHs96a/ipFf
PXWzCInNQv4/DUO6tD2yZvMOACzPtXYUmdR4JwIDAQABAoIBAQCSgB/5DenXv5v1
VZvEehtuzokUqs4Us9OIs7CXeqql4YWdX5KuOemFa+OjNZASjpMn8KuZZ6VFQYXe
msmyQ+GObD89csgEvPjUJghMWEC7IoMmB7jBaAdW6OjGXxfOkknAYRb9iWj+uEVF
YYW3S4NfFxvP/wv+5Mz5yh9m7l50JZR6Jw4PQ1AUSK3GiuGs/44Q7eaSSMiUwTos
24ZxZo4ZkxPt+UcGXoviLss6wrNejTHkxafNPwlw5AJdNCpNt/UG4vU7j7atSiK4
/kOnTWfvw+Htg+LV8tA3D1arW0dpChQDLEOjc+kFcl7faJxnSwhkLcJnI6rlNYhW
mZUXYCABAoGBAOrKEobAJbir/UQsGj8bGWjUJm6crW01EimfQMJMlu+LCGE5CLeK
H4GXcf+vWlvbmi8vKauSu8VRooTF9Ih5rKK4Fx5KZmK+5av9AUJrFvlze80+91xc
ld15c8RgqM+VgLp9AhScflhPjAgsuEYxI7Iawzh4XOpQnUIjMTCaDz8nAoGBANrl
02YPNFOM6L9fHkaTR98wV74fMGp+6fBrP2GJUeIL2lEJZfYjOmGGAkYKzxFzfC1l
vWS4DiTSt1GPObSiG+SavGYx4gDrPiAGlwqgu4Lav9XpIHenVYZpzus40/Stgp7O
AgXFEarAuWZv5/QmV3L6UAutdkSG4D73wD7zlJ8BAoGAHzYNkGwql4oFePKD6q+n
iQ/qq/mX9FSBvZa1/R5BUkahLotuZTevSILhXKPq1xsyO+OBHpW68FgRyqSmBR5n
nJnsONKbGbVWwq43ZKTnwPFhG7+rElQcd/yVLx3KUw4EtsW3aRYElai9bLjFJk+R
9zMnkHIvp9ZfkVMsTtGsBTECgYEAg6RVpvob2OdUDcrxVTY7sfDLw83T+yfKHskQ
u+KueMfyCmwhgo4bDQ1fjqnvb6pJErAt30WFVAXZM1Z0OLqJFcks5jS3mx/eI7py
2XRicEaHuehSm0Lp/0TgqLtrVKmIdWKk+r1Sa6MtnHpOP5lTXBVHUE6IYpvOfm/W
kMVCKwECgYEAlPJCqRpiHHq/NBunh669OtnxjE729SdarvEeFQam0OTg7DpAAhO5
MZrNOsY0fcadnmBbygOIh1bw4eo3litTQLJ4ToDi4CSMgw74d6Rk1cwJbNZSSflV
YRZytdLq4WH7MSTwMIz+XClxBgkRTe9RpjNiVNLH3rp4F7EnUPTvxDo=
-----END RSA PRIVATE KEY-----

View File

@ -1,30 +0,0 @@
-----BEGIN PRIVATE KEY-----
MIICdQIBADANBgkqhkiG9w0BAQEFAASCAl8wggJbAgEAAoGBAMV8qEpuSVUdWaAY
F2N1ljGEJ/907Og5B0aZLeDskmLAOohKMWTiiSx+lseXVD/Zf/LaFfy/+q0Rk5+o
pFEPEEjadvdxogb9HPwjfj48ng74yV1c5ZGRx/aIeIJN9cacfs4J5NlT3ZPiV8/2
mpBurBYvta5tneUl+lx4NHTEBmjTAgMBAAECgYBHlFlDMRovWYYEuvavPA2GQQpm
UzETMqhqdFbmsZiVZmtQvuOMV3e0wuVPzo/g3Kq9kUJq7AKl/DrvoaZ9IuKZgkDD
0QEBYo/lcxEA9qcfgVs5XLp9ED1mXzJSZ3bmpCDqa2NjG7yFdWzPxc1DXmT05MrF
bZbb0Wao0tvMwoeJYQJBAOql5uOyjDHvLLuS0IFKbYz4LQwAp7Gjs0ZS9qLNhQQn
m5Vr8xS9QwFID693K6aDl3tqSCIwSnyInacj8M8v18sCQQDXdReE2i4LKOVLcQsP
XabN96fFLlnoIh9MqFza4skjhXJWqjBLgJuFqyT5CTbU9TmaoIPXdo4454P1CCgR
KEIZAkAZE7nlQ8Ov4nvJYBtgde/XTP6jdb52QaR7M4qgQ46frwv1oB/Oa5upm2Xx
vq6vkQiza9xhqv+K557RqgmmWtqZAkASoXJmL4OZvXCOZHkDXCLHXqnoOAjYNNMm
Csz0tHWWF7z6V38TmExac6Ef07clFQtlHoooAH1t2D8l2g205hlJAkBfeghbZDdY
16NtVnvtzjjhKqZFqwTSANFV8NSzgb/QiNnX0hsMPt9bbc5VCo77Ly2oP5SvixfZ
kjrIQqDV8MLu
-----END PRIVATE KEY-----
-----BEGIN CERTIFICATE-----
MIICODCCAaGgAwIBAgIJAOiSkPuPcAwqMA0GCSqGSIb3DQEBBQUAMDUxCzAJBgNV
BAYTAklOMRMwEQYDVQQIDApTb21lLVN0YXRlMREwDwYDVQQKDAhHTlUgV2dldDAe
Fw0xMzEyMDcwNTA3NTRaFw0xNDEyMDcwNTA3NTRaMDUxCzAJBgNVBAYTAklOMRMw
EQYDVQQIDApTb21lLVN0YXRlMREwDwYDVQQKDAhHTlUgV2dldDCBnzANBgkqhkiG
9w0BAQEFAAOBjQAwgYkCgYEAxXyoSm5JVR1ZoBgXY3WWMYQn/3Ts6DkHRpkt4OyS
YsA6iEoxZOKJLH6Wx5dUP9l/8toV/L/6rRGTn6ikUQ8QSNp293GiBv0c/CN+Pjye
DvjJXVzlkZHH9oh4gk31xpx+zgnk2VPdk+JXz/aakG6sFi+1rm2d5SX6XHg0dMQG
aNMCAwEAAaNQME4wHQYDVR0OBBYEFLhtTG9a6v3ihL5DeWKfq6doYI42MB8GA1Ud
IwQYMBaAFLhtTG9a6v3ihL5DeWKfq6doYI42MAwGA1UdEwQFMAMBAf8wDQYJKoZI
hvcNAQEFBQADgYEApTEZX3cgmgdXDJsu7wtkejtq3vuyi6NXBUlHzoYzWaS5wn8P
uDG4G9zd1cwmwrbYA8lS+ANWvkcqjM68gMs1ARMZRS0IrYMCN8bokQw+16sqImZO
THX50Sb5U+9e1IotDWyRBNO10znsoh569BxhJ5WZdIaoKHOJdXEYV+3Y/hg=
-----END CERTIFICATE-----

View File

@ -38,13 +38,15 @@ class HTTPSServer (StoppableHTTPServer):
import ssl
BaseServer.__init__ (self, address, handler)
# step one up because test suite change directory away from $srcdir (don't do that !!!)
CERTFILE = os.path.abspath(os.path.join('..', os.getenv('srcdir', '.'), 'certs', 'wget-cert.pem'))
CERTFILE = os.path.abspath(os.path.join('..', os.getenv('srcdir', '.'), 'certs', 'server-cert.pem'))
KEYFILE = os.path.abspath(os.path.join('..', os.getenv('srcdir', '.'), 'certs', 'server-key.pem'))
fop = open (CERTFILE)
print (fop.readline())
self.socket = ssl.wrap_socket (
sock = socket.socket (self.address_family, self.socket_type),
ssl_version = ssl.PROTOCOL_TLSv1,
certfile = CERTFILE,
keyfile = KEYFILE,
server_side = True
)
self.server_bind()