Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix TLS bug for TLS over TLS proxy #65

Merged
merged 19 commits into from May 2, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
5 changes: 4 additions & 1 deletion .github/workflows/build.yml
Expand Up @@ -2,6 +2,9 @@ name: build

on: [push, pull_request]

env:
NODE_EXTRA_CA_CERTS: test/fixtures/certs_unit_test.pem

jobs:
test:
name: Test
Expand All @@ -26,4 +29,4 @@ jobs:

- name: Test
run: |
npm test
npm run test-ci
109 changes: 109 additions & 0 deletions .npmignore
@@ -0,0 +1,109 @@
# Logs
logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
lerna-debug.log*

# Diagnostic reports (https://nodejs.org/api/report.html)
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json

# Runtime data
pids
*.pid
*.seed
*.pid.lock

# Directory for instrumented libs generated by jscoverage/JSCover
lib-cov

# Coverage directory used by tools like istanbul
coverage
*.lcov

# nyc test coverage
.nyc_output

# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
.grunt

# Bower dependency directory (https://bower.io/)
bower_components

# node-waf configuration
.lock-wscript

# Compiled binary addons (https://nodejs.org/api/addons.html)
build/Release

# Dependency directories
node_modules/
jspm_packages/

# TypeScript v1 declaration files
typings/

# TypeScript cache
*.tsbuildinfo

# Optional npm cache directory
.npm

# Optional eslint cache
.eslintcache

# Microbundle cache
.rpt2_cache/
.rts2_cache_cjs/
.rts2_cache_es/
.rts2_cache_umd/

# Optional REPL history
.node_repl_history

# Output of 'npm pack'
*.tgz

# Yarn Integrity file
.yarn-integrity

# dotenv environment variables file
.env
.env.test

# parcel-bundler cache (https://parceljs.org/)
.cache

# Next.js build output
.next

# Nuxt.js build / generate output
.nuxt
dist

# Gatsby files
.cache/
# Comment in the public line in if your project uses Gatsby and *not* Next.js
# https://nextjs.org/blog/next-9-1#public-directory-support
# public

# vuepress build output
.vuepress/dist

# Serverless directories
.serverless/

# FuseBox cache
.fusebox/

# DynamoDB Local files
.dynamodb/

# TernJS port file
.tern-port

.DS_Store

# Skip the self signed SSL certs / keys for testing
test/fixtures/
9 changes: 9 additions & 0 deletions index.js
Expand Up @@ -29,6 +29,10 @@ class HttpProxyAgent extends http.Agent {
requestOptions.headers['proxy-authorization'] = `Basic ${base64}`
}

if (this.proxy.protocol === 'https:') {
requestOptions.servername = this.proxy.hostname
}

const request = (this.proxy.protocol === 'http:' ? http : https).request(requestOptions)
request.once('connect', (response, socket, head) => {
request.removeAllListeners()
Expand Down Expand Up @@ -74,6 +78,11 @@ class HttpsProxyAgent extends https.Agent {
requestOptions.headers['proxy-authorization'] = `Basic ${base64}`
}

// Necessary for the TLS check with the proxy to succeed.
if (this.proxy.protocol === 'https:') {
requestOptions.servername = this.proxy.hostname
}

const request = (this.proxy.protocol === 'http:' ? http : https).request(requestOptions)
request.once('connect', (response, socket, head) => {
request.removeAllListeners()
Expand Down
3 changes: 2 additions & 1 deletion package.json
Expand Up @@ -12,7 +12,8 @@
"./": "./"
},
"scripts": {
"test": "standard && ava -v test/*.test.js && tsd"
"test": "standard && NODE_EXTRA_CA_CERTS=test/fixtures/certs_unit_test.pem ava -v test/*.test.js && tsd",
"test-ci": "standard && ava -v test/*.test.js && tsd"
},
"repository": {
"type": "git",
Expand Down
25 changes: 25 additions & 0 deletions test/fixtures/cert_proxy.pem
@@ -0,0 +1,25 @@
-----BEGIN CERTIFICATE-----
MIIERzCCAy+gAwIBAgIUQD0nJ3V7h98ZMrCxv5vFhUs6swwwDQYJKoZIhvcNAQEL
BQAwgbIxCzAJBgNVBAYTAkhLMQswCQYDVQQIDAJISzESMBAGA1UEBwwJSG9uZyBL
b25nMRowGAYDVQQKDBFIcGFnZW50IFVuaXQgVGVzdDEaMBgGA1UECwwRSHBhZ2Vu
dCBVbml0IFRlc3QxJDAiBgNVBAMMG3Byb3h5LmhwYWdlbnQtdW5pdC10ZXN0LmNv
bTEkMCIGCSqGSIb3DQEJARYVZmFrZS1lbWFpbEBkb21haW4uY29tMB4XDTIyMDUw
MjA1MTcwN1oXDTMyMDQyOTA1MTcwN1owgbIxCzAJBgNVBAYTAkhLMQswCQYDVQQI
DAJISzESMBAGA1UEBwwJSG9uZyBLb25nMRowGAYDVQQKDBFIcGFnZW50IFVuaXQg
VGVzdDEaMBgGA1UECwwRSHBhZ2VudCBVbml0IFRlc3QxJDAiBgNVBAMMG3Byb3h5
LmhwYWdlbnQtdW5pdC10ZXN0LmNvbTEkMCIGCSqGSIb3DQEJARYVZmFrZS1lbWFp
bEBkb21haW4uY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxJXt
0aN6mIhYAyrA1/M4Rvhyyg3LSsf3tFW3OZg3dSFJz2nQmVc/+KwjyGZ6/XjgE8Cy
n5L3hMIuU1+wtHwSHSKFubaluMGBDRJjCJLye5x8nESrPEXfq5gS5Aj6o8cYrYMM
lgONXysiahhDGAMX8ftxfJmc2FpKfz3FwcR9VQOfZGyDrlDL+9zMwtR+YZb3EVPA
mxPvs5ZB3pBL1Q77/PWSb1ixd2k2qadWDxhWiSrsQ/n2SlWiNb5SYQn1gu3NrUuV
ncXGMSUBG7K0bqv8DTrctJuaX2pRiPtGMSHKS9uzHjonrhTbl8hWj3fw5hS5MsqC
fciwGFFxfKHzIEix+wIDAQABo1MwUTAdBgNVHQ4EFgQUMeEK6ngZr+3GIgrdtoJd
AMCpM8gwHwYDVR0jBBgwFoAUMeEK6ngZr+3GIgrdtoJdAMCpM8gwDwYDVR0TAQH/
BAUwAwEB/zANBgkqhkiG9w0BAQsFAAOCAQEAEqLwNTWgLGAUw0jB2j8ZX2oPk3KV
EugXnmmAnXfT3lCaP3MFyCN/IIBAsHTL2p1TxXAwEUXmGHhsEGH69o1+V7uz/GKW
9yr+su7RpSua6YVjnaGnPDGIhYRh2PBvujeYDFyb3Facjn/AkzxJITWtTQSJoYhW
YRhjuMZWIjetlCSieUFIPQ/E/ZD5fIq4ZrFC1IXciK7LqLljvwzfhGmTe8Ve/uz7
S8Aep3Vgo3xsjti0RKjHf0Lcf5kxxDcptdphInm7NZcxghrTlC7/29AY+fe9wPCX
6Zis1At4XACkrFcD8nSL3hw0AbzNtzoONi+06Ragdm8K+uFGPjDvgMjhUg==
-----END CERTIFICATE-----
25 changes: 25 additions & 0 deletions test/fixtures/cert_server.pem
@@ -0,0 +1,25 @@
-----BEGIN CERTIFICATE-----
MIIESTCCAzGgAwIBAgIUf4sUokGui8gK0SABNivmlSRhcp0wDQYJKoZIhvcNAQEL
BQAwgbMxCzAJBgNVBAYTAkhLMQswCQYDVQQIDAJISzESMBAGA1UEBwwJSG9uZyBL
b25nMRowGAYDVQQKDBFIcGFnZW50IFVuaXQgVGVzdDEaMBgGA1UECwwRSHBhZ2Vu
dCBVbml0IFRlc3QxJTAjBgNVBAMMHHNlcnZlci5ocGFnZW50LXVuaXQtdGVzdC5j
b20xJDAiBgkqhkiG9w0BCQEWFWZha2UtZW1haWxAZG9tYWluLmNvbTAeFw0yMjA1
MDIwNTE2MThaFw0zMjA0MjkwNTE2MThaMIGzMQswCQYDVQQGEwJISzELMAkGA1UE
CAwCSEsxEjAQBgNVBAcMCUhvbmcgS29uZzEaMBgGA1UECgwRSHBhZ2VudCBVbml0
IFRlc3QxGjAYBgNVBAsMEUhwYWdlbnQgVW5pdCBUZXN0MSUwIwYDVQQDDBxzZXJ2
ZXIuaHBhZ2VudC11bml0LXRlc3QuY29tMSQwIgYJKoZIhvcNAQkBFhVmYWtlLWVt
YWlsQGRvbWFpbi5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDm
z2AKeJ7OeWvJRBSTjDwp3OgdPIg91IgFYPaEarCoLyf2fyk1houXAENpewrKDG9n
IKuNF1hFIi1P7X/rAf5T/GqQ20VHY+wpAc0fKoXfECqyrLLJ5GmpdElRSCfNUJQR
ZlCYUsE5oLCxKxR5qoS1fKUC4mmIMO5xd+E2yqijHsstFcTAaqJ5rkpjH/1bAGI6
Z5oNf1ML+09o2y8DpxmnW3NyqqJ5De9yZr4vejaiVVer56K3Nnl32y42wjgBxc7O
iouIXL8D6o5KV0BbIZMc+YPMZUy1zpFfBbFy4FpldQl76eEmTW264UwGF3ttmhfC
Ex83GtnTKW3hi+br2JC3AgMBAAGjUzBRMB0GA1UdDgQWBBTpGNtxuuUfjk3+/1Db
lxLgUmxCTDAfBgNVHSMEGDAWgBTpGNtxuuUfjk3+/1DblxLgUmxCTDAPBgNVHRMB
Af8EBTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQAQ0n/t+KkpaKoxgclsRD8vL8tk
Ni6w04gWCTro+x4NOCU5VClY/ryYzY64KVbHWiLBw9l3lz2UnV2Moc497wxpFCIL
accfqZVPABx7pG8CxQ4aEwpHP8wtxe6J9t+im17eGy7QaE/jv888fdgCENEdEfY7
pG17kb0q9+6uOWnUxVeYecQW016iogezvWJH7Y7KXSVidEY8EoTTbORwfU+DU828
6gcL4st94FthmHuE6JwOmiMDss8P21+/DF4/jyAjsKyakPVMdZuqyGgpe0gryi1s
lM/xDOAPSsbbOONdYvNNp19eIqllNl2vfPt2p3qzmeZ5fGw8MefjR4TwoMef
-----END CERTIFICATE-----
50 changes: 50 additions & 0 deletions test/fixtures/certs_unit_test.pem
@@ -0,0 +1,50 @@
-----BEGIN CERTIFICATE-----
MIIERzCCAy+gAwIBAgIUQD0nJ3V7h98ZMrCxv5vFhUs6swwwDQYJKoZIhvcNAQEL
BQAwgbIxCzAJBgNVBAYTAkhLMQswCQYDVQQIDAJISzESMBAGA1UEBwwJSG9uZyBL
b25nMRowGAYDVQQKDBFIcGFnZW50IFVuaXQgVGVzdDEaMBgGA1UECwwRSHBhZ2Vu
dCBVbml0IFRlc3QxJDAiBgNVBAMMG3Byb3h5LmhwYWdlbnQtdW5pdC10ZXN0LmNv
bTEkMCIGCSqGSIb3DQEJARYVZmFrZS1lbWFpbEBkb21haW4uY29tMB4XDTIyMDUw
MjA1MTcwN1oXDTMyMDQyOTA1MTcwN1owgbIxCzAJBgNVBAYTAkhLMQswCQYDVQQI
DAJISzESMBAGA1UEBwwJSG9uZyBLb25nMRowGAYDVQQKDBFIcGFnZW50IFVuaXQg
VGVzdDEaMBgGA1UECwwRSHBhZ2VudCBVbml0IFRlc3QxJDAiBgNVBAMMG3Byb3h5
LmhwYWdlbnQtdW5pdC10ZXN0LmNvbTEkMCIGCSqGSIb3DQEJARYVZmFrZS1lbWFp
bEBkb21haW4uY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxJXt
0aN6mIhYAyrA1/M4Rvhyyg3LSsf3tFW3OZg3dSFJz2nQmVc/+KwjyGZ6/XjgE8Cy
n5L3hMIuU1+wtHwSHSKFubaluMGBDRJjCJLye5x8nESrPEXfq5gS5Aj6o8cYrYMM
lgONXysiahhDGAMX8ftxfJmc2FpKfz3FwcR9VQOfZGyDrlDL+9zMwtR+YZb3EVPA
mxPvs5ZB3pBL1Q77/PWSb1ixd2k2qadWDxhWiSrsQ/n2SlWiNb5SYQn1gu3NrUuV
ncXGMSUBG7K0bqv8DTrctJuaX2pRiPtGMSHKS9uzHjonrhTbl8hWj3fw5hS5MsqC
fciwGFFxfKHzIEix+wIDAQABo1MwUTAdBgNVHQ4EFgQUMeEK6ngZr+3GIgrdtoJd
AMCpM8gwHwYDVR0jBBgwFoAUMeEK6ngZr+3GIgrdtoJdAMCpM8gwDwYDVR0TAQH/
BAUwAwEB/zANBgkqhkiG9w0BAQsFAAOCAQEAEqLwNTWgLGAUw0jB2j8ZX2oPk3KV
EugXnmmAnXfT3lCaP3MFyCN/IIBAsHTL2p1TxXAwEUXmGHhsEGH69o1+V7uz/GKW
9yr+su7RpSua6YVjnaGnPDGIhYRh2PBvujeYDFyb3Facjn/AkzxJITWtTQSJoYhW
YRhjuMZWIjetlCSieUFIPQ/E/ZD5fIq4ZrFC1IXciK7LqLljvwzfhGmTe8Ve/uz7
S8Aep3Vgo3xsjti0RKjHf0Lcf5kxxDcptdphInm7NZcxghrTlC7/29AY+fe9wPCX
6Zis1At4XACkrFcD8nSL3hw0AbzNtzoONi+06Ragdm8K+uFGPjDvgMjhUg==
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIESTCCAzGgAwIBAgIUf4sUokGui8gK0SABNivmlSRhcp0wDQYJKoZIhvcNAQEL
BQAwgbMxCzAJBgNVBAYTAkhLMQswCQYDVQQIDAJISzESMBAGA1UEBwwJSG9uZyBL
b25nMRowGAYDVQQKDBFIcGFnZW50IFVuaXQgVGVzdDEaMBgGA1UECwwRSHBhZ2Vu
dCBVbml0IFRlc3QxJTAjBgNVBAMMHHNlcnZlci5ocGFnZW50LXVuaXQtdGVzdC5j
b20xJDAiBgkqhkiG9w0BCQEWFWZha2UtZW1haWxAZG9tYWluLmNvbTAeFw0yMjA1
MDIwNTE2MThaFw0zMjA0MjkwNTE2MThaMIGzMQswCQYDVQQGEwJISzELMAkGA1UE
CAwCSEsxEjAQBgNVBAcMCUhvbmcgS29uZzEaMBgGA1UECgwRSHBhZ2VudCBVbml0
IFRlc3QxGjAYBgNVBAsMEUhwYWdlbnQgVW5pdCBUZXN0MSUwIwYDVQQDDBxzZXJ2
ZXIuaHBhZ2VudC11bml0LXRlc3QuY29tMSQwIgYJKoZIhvcNAQkBFhVmYWtlLWVt
YWlsQGRvbWFpbi5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDm
z2AKeJ7OeWvJRBSTjDwp3OgdPIg91IgFYPaEarCoLyf2fyk1houXAENpewrKDG9n
IKuNF1hFIi1P7X/rAf5T/GqQ20VHY+wpAc0fKoXfECqyrLLJ5GmpdElRSCfNUJQR
ZlCYUsE5oLCxKxR5qoS1fKUC4mmIMO5xd+E2yqijHsstFcTAaqJ5rkpjH/1bAGI6
Z5oNf1ML+09o2y8DpxmnW3NyqqJ5De9yZr4vejaiVVer56K3Nnl32y42wjgBxc7O
iouIXL8D6o5KV0BbIZMc+YPMZUy1zpFfBbFy4FpldQl76eEmTW264UwGF3ttmhfC
Ex83GtnTKW3hi+br2JC3AgMBAAGjUzBRMB0GA1UdDgQWBBTpGNtxuuUfjk3+/1Db
lxLgUmxCTDAfBgNVHSMEGDAWgBTpGNtxuuUfjk3+/1DblxLgUmxCTDAPBgNVHRMB
Af8EBTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQAQ0n/t+KkpaKoxgclsRD8vL8tk
Ni6w04gWCTro+x4NOCU5VClY/ryYzY64KVbHWiLBw9l3lz2UnV2Moc497wxpFCIL
accfqZVPABx7pG8CxQ4aEwpHP8wtxe6J9t+im17eGy7QaE/jv888fdgCENEdEfY7
pG17kb0q9+6uOWnUxVeYecQW016iogezvWJH7Y7KXSVidEY8EoTTbORwfU+DU828
6gcL4st94FthmHuE6JwOmiMDss8P21+/DF4/jyAjsKyakPVMdZuqyGgpe0gryi1s
lM/xDOAPSsbbOONdYvNNp19eIqllNl2vfPt2p3qzmeZ5fGw8MefjR4TwoMef
-----END CERTIFICATE-----
28 changes: 28 additions & 0 deletions test/fixtures/key_proxy.pem
@@ -0,0 +1,28 @@
-----BEGIN PRIVATE KEY-----
MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQDEle3Ro3qYiFgD
KsDX8zhG+HLKDctKx/e0Vbc5mDd1IUnPadCZVz/4rCPIZnr9eOATwLKfkveEwi5T
X7C0fBIdIoW5tqW4wYENEmMIkvJ7nHycRKs8Rd+rmBLkCPqjxxitgwyWA41fKyJq
GEMYAxfx+3F8mZzYWkp/PcXBxH1VA59kbIOuUMv73MzC1H5hlvcRU8CbE++zlkHe
kEvVDvv89ZJvWLF3aTapp1YPGFaJKuxD+fZKVaI1vlJhCfWC7c2tS5WdxcYxJQEb
srRuq/wNOty0m5pfalGI+0YxIcpL27MeOieuFNuXyFaPd/DmFLkyyoJ9yLAYUXF8
ofMgSLH7AgMBAAECggEALlKyBotCMT03mA9z/68FXNvgmLIlbEqwmOL12PGAZ+5f
KSvjBq8jmOJfUDKt2pqoGp92t9l2z+a96dGLnwv5bLoczsU2SdH3KfBiO7v8vZoD
VwNrYjmI2jNsiCWBgiRBMWnHBnZx0rIkWuG6tabM9q1scZL0/ZpRIaiZt+4oJmbZ
WoeHgpGzUsbw3L2TnFX/xlsdvjP5N7lpMfzPpjSO0SVVuN0SMlMW0Nn2ScFYIQyt
2FT8ITb6KmnfVpvNgDUCFarG1CAdpsjuEf/e8MEbVs61vkBdaC1orDKUjphACKxe
7xN3S9s0VuQX4YSLk4c/13lM1E/Aex568bTbPfzB8QKBgQDndj9cUN8lgMccETsO
nAZDoxlBJsI4Z9sURgJdYPZAIuMRj0UaUl7ZIowOfApg+0IrRip7jZmwuiHdHaYh
w4Ciw/ZiyTBSvoRlx7xHJgBmmaMGUFvv2yC9t3BiEZPiwFGqK/mYUeorZ0loiwz+
gBzGAl5h9RSPvxdLwyw/YiR2KQKBgQDZbSipJTpAX+TX799JYXIyfPNlp7Z/a2IL
X8tbCH3FUoCYFHarsZfIPEgAlFZJdgZYgYBupjRA5a/08tbriSUE8FBmSY17KGKx
l5kdjeU4hZQU+IMsdKAHiHutanxnvKq/gJwPMnvQMr49zypC8fcINqcrbnxQkszN
x6cvgofDgwKBgCJYtKxBP+uzwVgT4nyXgIJ26F93neh62NKYVO+AXOpFgwZvCSUP
xg1YiAn6NBwSDM6ZGeK9r2m/JRlHtghal3MPuzcLfcU5ijIEQpcYN4UCFWPxdsMP
9DrSxrV2wEgsm7Gx1tbYiPQp3oXJ5IK7hgmH/nNwx71Q8OcILj+1k42JAoGAKI0a
W0mtLppz9O4xB9+by9zQDHKWL/eYJqTsKYNQ6b90amjOpUEPHPJZP3prCXJwxosI
qBppfn0YLygne3Btrhkf9aPcNk8W8SZkEUYIrV0EfFDJLj5mJmGHJ5XHtBVVBzh2
YsM4omEEaES+DhRQzYBb91a46tImTm7hOJQwu/8CgYBZxh/19uga8Y7ufuiJ3tFx
kOwt0Ajj6GvgjATvK6s8fEIOGQILLdGsZVUAwMF6oI2LqUmTQDBM3jSfiCbSubhq
Jwoa2xY5CCW6DYf9rfWWgOLkZTRMDYQEyHXX4aIVuIe+kzvlJcr3b4xYoGNnWnb1
pk0N6M/ck2cZ3Aq3Osnobg==
-----END PRIVATE KEY-----
28 changes: 28 additions & 0 deletions test/fixtures/key_server.pem
@@ -0,0 +1,28 @@
-----BEGIN PRIVATE KEY-----
MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQDmz2AKeJ7OeWvJ
RBSTjDwp3OgdPIg91IgFYPaEarCoLyf2fyk1houXAENpewrKDG9nIKuNF1hFIi1P
7X/rAf5T/GqQ20VHY+wpAc0fKoXfECqyrLLJ5GmpdElRSCfNUJQRZlCYUsE5oLCx
KxR5qoS1fKUC4mmIMO5xd+E2yqijHsstFcTAaqJ5rkpjH/1bAGI6Z5oNf1ML+09o
2y8DpxmnW3NyqqJ5De9yZr4vejaiVVer56K3Nnl32y42wjgBxc7OiouIXL8D6o5K
V0BbIZMc+YPMZUy1zpFfBbFy4FpldQl76eEmTW264UwGF3ttmhfCEx83GtnTKW3h
i+br2JC3AgMBAAECggEBAIls3eU+LmgHmarLc2jqrYPLeRS3TvNpkNeLBRyQncB1
21iEHBg3lPOCf6DVVvY4czg3Fo26YZ9AGzSk124o0LJW72hydgxsrVc5MFWnLvBC
ovmhpA5bhqITj/fqe3Be0tqNTd10IIJcb/f9C4LpiXy5y1ItVuJ1J/O9igXioogE
Ewi1sD8OlxDXcTJeNTYj2Fksvz4a5sSUAkHRWF2qlUognFy5MPPJibOgYfqMiDfp
ipUPiX83B6wTobhEXtzKNsMTneFmzFxCcJqdMpq/FMeRg3N+0+XCjegsaRMnxStt
tUn84fj9G2MtBVnH+ocxNVM1c5mqgiHvqGzDmAwnAKECgYEA/QRLCQpFBNarfId+
1Ps642Gjmf0/R2zm9cEL07L3EdB21Wr3tTK469feMHl7tXyLXC3o3mjrbnidnZfI
YUGKg9O8nC0O4BbPkp3IUSgyzX2llvJZycPyA1LWNJtuuc0acLvhdEFfcuYSAsjP
7J3DZwVA8aZf+qShhzEv6uhRZ2cCgYEA6YgNoAcPPKLKhv3s71+jz3F2Vw0RPj1X
cj01u7JKICXy1LJ120yFpPW0gWJROm2mA5w2XtyCfLDmExJw/bg6Ktt0nqKh/6FY
YmYr2UEUUI0iKcQ+C4TUFl1qmMXUagybpYaKoG9YD89lAgnvMQcDxxzqRrYUHda+
yNQ4IdSgSjECgYAmnkghqhqcwXNNP5UhRvNXD2kcMOY+raWW7w8yEcfaRTpOGtSS
KJrHDJzSQ0iZi9ftiuhXQiZlJy3PhwJDrfBJbMEGCW6Sz4iBNWoE0SDn8nyazITd
4fWHglZFk0/UNjUJ7fNcfjnmXK11FVd/IxlXGRsvhxhxNj2dV+mbbjg2kwKBgQCl
jpOCOJ7/sLT9oHThep8KCHkJ27S2uAwPa/908j+ErQKK8X2GG6i/OoVeGFJXprZD
5vHQrGlBdrOVH8TEyl9KVMxHTiqkrECZea9qVK3PMU7f50TJK8CjnlRcvBsLl6ac
YVZTyLvYcYI9QMe2rS9rcD9SI/D8+mnEvFaS/UcpcQKBgQDWfIMOqCS740M8Ddkv
Ng/G9yMHPB6y1dS2ig4HULb1zeU+KsF89ujkJK1XqRFmeu+1NT9LoPrV4PVO3Whx
3PBFB52OAUU9GJ4K81g2lV3iBQJtMIsqg7Jr74P2gF1zamFqnZPQfl7ZJO6Y0BuZ
drwLCgb52cR9ooD41834W/rv0A==
-----END PRIVATE KEY-----
12 changes: 7 additions & 5 deletions test/got.test.js
Expand Up @@ -6,7 +6,9 @@ const {
createServer,
createSecureServer,
createProxy,
createSecureProxy
createSecureProxy,
PROXY_HOSTNAME,
SERVER_HOSTNAME
} = require('./utils')
const { HttpProxyAgent, HttpsProxyAgent } = require('../')

Expand Down Expand Up @@ -48,7 +50,7 @@ test('https to http', async t => {
maxSockets: 256,
maxFreeSockets: 256,
scheduling: 'lifo',
proxy: `https://${proxy.address().address}:${proxy.address().port}`
proxy: `https://${PROXY_HOSTNAME}:${proxy.address().port}`
})
}
})
Expand All @@ -65,7 +67,7 @@ test('http to https', async t => {
const proxy = await createProxy()
server.on('request', (req, res) => res.end('ok'))

const response = await got(`https://${server.address().address}:${server.address().port}`, {
const response = await got(`https://${SERVER_HOSTNAME}:${server.address().port}`, {
agent: {
http: new HttpsProxyAgent({
keepAlive: true,
Expand All @@ -90,15 +92,15 @@ test('https to https', async t => {
const proxy = await createSecureProxy()
server.on('request', (req, res) => res.end('ok'))

const response = await got(`https://${server.address().address}:${server.address().port}`, {
const response = await got(`https://${SERVER_HOSTNAME}:${server.address().port}`, {
agent: {
http: new HttpsProxyAgent({
keepAlive: true,
keepAliveMsecs: 1000,
maxSockets: 256,
maxFreeSockets: 256,
scheduling: 'lifo',
proxy: `https://${proxy.address().address}:${proxy.address().port}`
proxy: `https://${PROXY_HOSTNAME}:${proxy.address().port}`
})
}
})
Expand Down