Skip to content

Commit 5cab0dd

Browse files
committed
Better exports; fix socket closing issues.
1 parent 76b391b commit 5cab0dd

6 files changed

Lines changed: 85 additions & 48 deletions

File tree

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
"mocha": "^6.0.2",
2121
"mssql": "^4.3.2",
2222
"node-fetch": "^2.3.0",
23-
"proxy": "^0.2.4",
23+
"proxy": "^1.0.1",
2424
"ts-node": "^8.0.2",
2525
"typescript": "3.2.4"
2626
},
Lines changed: 4 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,9 @@ import * as fs from 'fs';
44
import * as http from 'http';
55
import * as https from 'https';
66
import * as assert from 'assert';
7-
import * as url from 'url';
87

98
import { HttpsProxySocket, HttpsProxyConfig } from './HttpsProxySocket';
10-
import { agent as proxyAgent } from './HttpsProxyAgent';
9+
import { agent as proxyAgent } from './agent';
1110
import { ConnectionOptions } from 'tls';
1211
import { AddressInfo } from 'net';
1312

@@ -70,24 +69,15 @@ describe('HttpsProxyAgent', function() {
7069

7170
// shut down test HTTP server
7271
after(function(done) {
73-
server.once('close', function() {
74-
done();
75-
});
76-
server.close();
72+
server.close(done);
7773
});
7874

7975
after(function(done) {
80-
sslServer.once('close', function() {
81-
done();
82-
});
83-
sslServer.close();
76+
sslServer.close(done);
8477
});
8578

8679
after(function(done) {
87-
sslProxy.once('close', function() {
88-
done();
89-
});
90-
sslProxy.close();
80+
sslProxy.close(done);
9181
});
9282

9383
describe('constructor', function() {
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ export function agent(proxy: HttpsProxySocket, options?: tls.ConnectionOptions)
2626
const tlsSocket = tls.connect(tlsOptions);
2727
return tlsSocket;
2828
} else {
29+
socket.resume();
2930
return socket;
3031
}
3132
});

src/index.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,3 @@
11
export * from './HttpsProxySocket';
2+
export * from './tediousPatch';
3+
export * from './agent';
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ const debug = require('debug')('https-proxy');
88
*
99
* @param proxy - the proxy to use
1010
*/
11-
export function useProxy(proxy: HttpsProxySocket) {
11+
export function useProxyForTedious(proxy: HttpsProxySocket) {
1212
const { Connector } = require('tedious/lib/connector');
1313
Connector.prototype.execute = async function(cb: any) {
1414
debug(`opening sql connection to ${this.options.host}:${this.options.port}`);

yarn.lock

Lines changed: 76 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -143,6 +143,11 @@ ansi-regex@^4.0.0:
143143
resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.0.0.tgz#70de791edf021404c3fd615aa89118ae0432e5a9"
144144
integrity sha512-iB5Dda8t/UqpPI/IjsejXu5jOGDrzn41wJyljwPH65VCIbk6+1BzFIMJGFwTNrYXT1CrD+B4l19U7awiQ8rk7w==
145145

146+
ansi-styles@^2.2.1:
147+
version "2.2.1"
148+
resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe"
149+
integrity sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=
150+
146151
ansi-styles@^3.2.1:
147152
version "3.2.1"
148153
resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d"
@@ -162,6 +167,17 @@ argparse@^1.0.7:
162167
dependencies:
163168
sprintf-js "~1.0.2"
164169

170+
args@3.0.2:
171+
version "3.0.2"
172+
resolved "https://registry.yarnpkg.com/args/-/args-3.0.2.tgz#850bb8e881f3139203a5e4cb176431092b562c2d"
173+
integrity sha1-hQu46IHzE5IDpeTLF2QxCStWLC0=
174+
dependencies:
175+
camelcase "4.1.0"
176+
chalk "1.1.3"
177+
minimist "1.2.0"
178+
pkginfo "0.4.0"
179+
string-similarity "1.1.0"
180+
165181
arr-diff@^4.0.0:
166182
version "4.0.0"
167183
resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520"
@@ -326,6 +342,11 @@ cache-base@^1.0.1:
326342
union-value "^1.0.0"
327343
unset-value "^1.0.0"
328344

345+
camelcase@4.1.0:
346+
version "4.1.0"
347+
resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-4.1.0.tgz#d545635be1e33c542649c69173e5de6acfae34dd"
348+
integrity sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=
349+
329350
camelcase@^5.0.0:
330351
version "5.2.0"
331352
resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.2.0.tgz#e7522abda5ed94cc0489e1b8466610e88404cf45"
@@ -336,6 +357,17 @@ caseless@~0.12.0:
336357
resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc"
337358
integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=
338359

360+
chalk@1.1.3:
361+
version "1.1.3"
362+
resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98"
363+
integrity sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=
364+
dependencies:
365+
ansi-styles "^2.2.1"
366+
escape-string-regexp "^1.0.2"
367+
has-ansi "^2.0.0"
368+
strip-ansi "^3.0.0"
369+
supports-color "^2.0.0"
370+
339371
chalk@^2.0.1, chalk@^2.4.1, chalk@^2.4.2:
340372
version "2.4.2"
341373
resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424"
@@ -413,13 +445,6 @@ combined-stream@^1.0.6, combined-stream@~1.0.6:
413445
dependencies:
414446
delayed-stream "~1.0.0"
415447

416-
commander@2.9.0:
417-
version "2.9.0"
418-
resolved "https://registry.yarnpkg.com/commander/-/commander-2.9.0.tgz#9c99094176e12240cb22d6c5146098400fe0f7d4"
419-
integrity sha1-nJkJQXbhIkDLItbFFGCYQA/g99Q=
420-
dependencies:
421-
graceful-readlink ">= 1.0.0"
422-
423448
component-emitter@^1.2.1:
424449
version "1.2.1"
425450
resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.2.1.tgz#137918d6d78283f7df7a6b7c5a63e140e69425e6"
@@ -463,13 +488,6 @@ dashdash@^1.12.0:
463488
dependencies:
464489
assert-plus "^1.0.0"
465490

466-
debug@2.2.0:
467-
version "2.2.0"
468-
resolved "https://registry.yarnpkg.com/debug/-/debug-2.2.0.tgz#f87057e995b1a1f6ae6a4960664137bc56f039da"
469-
integrity sha1-+HBX6ZWxofauaklgZkE3vFbwOdo=
470-
dependencies:
471-
ms "0.7.1"
472-
473491
debug@3.2.6, debug@^3.2.6:
474492
version "3.2.6"
475493
resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b"
@@ -484,6 +502,13 @@ debug@^2.2.0, debug@^2.3.3:
484502
dependencies:
485503
ms "2.0.0"
486504

505+
debug@^4.1.1:
506+
version "4.1.1"
507+
resolved "https://registry.yarnpkg.com/debug/-/debug-4.1.1.tgz#3b72260255109c6b589cee050f1d516139664791"
508+
integrity sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==
509+
dependencies:
510+
ms "^2.1.1"
511+
487512
decamelize@^1.2.0:
488513
version "1.2.0"
489514
resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290"
@@ -591,7 +616,7 @@ es6-promisify@^5.0.0:
591616
dependencies:
592617
es6-promise "^4.0.3"
593618

594-
escape-string-regexp@1.0.5, escape-string-regexp@^1.0.5:
619+
escape-string-regexp@1.0.5, escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5:
595620
version "1.0.5"
596621
resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"
597622
integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=
@@ -849,11 +874,6 @@ graceful-fs@^4.1.2, graceful-fs@^4.1.6:
849874
resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.15.tgz#ffb703e1066e8a0eeaa4c8b80ba9253eeefbfb00"
850875
integrity sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==
851876

852-
"graceful-readlink@>= 1.0.0":
853-
version "1.0.1"
854-
resolved "https://registry.yarnpkg.com/graceful-readlink/-/graceful-readlink-1.0.1.tgz#4cafad76bc62f02fa039b2f94e9a3dd3a391a725"
855-
integrity sha1-TK+tdrxi8C+gObL5Tpo906ORpyU=
856-
857877
growl@1.10.5:
858878
version "1.10.5"
859879
resolved "https://registry.yarnpkg.com/growl/-/growl-1.10.5.tgz#f2735dc2283674fa67478b10181059355c369e5e"
@@ -872,6 +892,13 @@ har-validator@~5.1.0:
872892
ajv "^6.5.5"
873893
har-schema "^2.0.0"
874894

895+
has-ansi@^2.0.0:
896+
version "2.0.0"
897+
resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91"
898+
integrity sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=
899+
dependencies:
900+
ansi-regex "^2.0.0"
901+
875902
has-flag@^3.0.0:
876903
version "3.0.0"
877904
resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd"
@@ -1268,6 +1295,11 @@ locate-path@^3.0.0:
12681295
p-locate "^3.0.0"
12691296
path-exists "^3.0.0"
12701297

1298+
lodash@^4.13.1:
1299+
version "4.17.15"
1300+
resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.15.tgz#b447f6670a0455bbfeedd11392eff330ea097548"
1301+
integrity sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==
1302+
12711303
lodash@^4.17.11:
12721304
version "4.17.11"
12731305
resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.11.tgz#b39ea6229ef607ecd89e2c8df12536891cac9b8d"
@@ -1361,7 +1393,7 @@ minimist@0.0.8:
13611393
resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d"
13621394
integrity sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=
13631395

1364-
minimist@^1.2.0:
1396+
minimist@1.2.0, minimist@^1.2.0:
13651397
version "1.2.0"
13661398
resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284"
13671399
integrity sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=
@@ -1410,11 +1442,6 @@ mocha@^6.0.2:
14101442
yargs-parser "11.1.1"
14111443
yargs-unparser "1.5.0"
14121444

1413-
ms@0.7.1:
1414-
version "0.7.1"
1415-
resolved "https://registry.yarnpkg.com/ms/-/ms-0.7.1.tgz#9cd13c03adbff25b65effde7ce864ee952017098"
1416-
integrity sha1-nNE8A62/8ltl7/3nzoZO6VIBcJg=
1417-
14181445
ms@2.0.0:
14191446
version "2.0.0"
14201447
resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8"
@@ -1633,6 +1660,11 @@ performance-now@^2.1.0:
16331660
resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b"
16341661
integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=
16351662

1663+
pkginfo@0.4.0:
1664+
version "0.4.0"
1665+
resolved "https://registry.yarnpkg.com/pkginfo/-/pkginfo-0.4.0.tgz#349dbb7ffd38081fcadc0853df687f0c7744cd65"
1666+
integrity sha1-NJ27f/04CB/K3AhT32h/DHdEzWU=
1667+
16361668
posix-character-classes@^0.1.0:
16371669
version "0.1.1"
16381670
resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab"
@@ -1648,14 +1680,14 @@ process-nextick-args@~2.0.0:
16481680
resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.0.tgz#a37d732f4271b4ab1ad070d35508e8290788ffaa"
16491681
integrity sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==
16501682

1651-
proxy@^0.2.4:
1652-
version "0.2.4"
1653-
resolved "https://registry.yarnpkg.com/proxy/-/proxy-0.2.4.tgz#bdd80e5efff3c33b2bf0bf2a10ce469bbb7d5e3e"
1654-
integrity sha1-vdgOXv/zwzsr8L8qEM5Gm7t9Xj4=
1683+
proxy@^1.0.1:
1684+
version "1.0.1"
1685+
resolved "https://registry.yarnpkg.com/proxy/-/proxy-1.0.1.tgz#10f770c41be35e3e4b56c958e4e37349b84d3466"
1686+
integrity sha512-mM9Hl6Mbw2Iiw4WLzjtPObtxX3xdsv0Fr07Kqm+GXg0eVObKBD7mc+TMQwkv2zztk5EtyLdv0+eFNXhBfPiU8A==
16551687
dependencies:
1688+
args "3.0.2"
16561689
basic-auth-parser "0.0.2"
1657-
commander "2.9.0"
1658-
debug "2.2.0"
1690+
debug "^4.1.1"
16591691

16601692
psl@^1.1.24:
16611693
version "1.1.31"
@@ -1965,6 +1997,13 @@ static-extend@^0.1.1:
19651997
define-property "^0.2.5"
19661998
object-copy "^0.1.0"
19671999

2000+
string-similarity@1.1.0:
2001+
version "1.1.0"
2002+
resolved "https://registry.yarnpkg.com/string-similarity/-/string-similarity-1.1.0.tgz#3c66498858a465ec7c40c7d81739bbd995904914"
2003+
integrity sha1-PGZJiFikZex8QMfYFzm72ZWQSRQ=
2004+
dependencies:
2005+
lodash "^4.13.1"
2006+
19682007
string-width@^1.0.1:
19692008
version "1.0.2"
19702009
resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3"
@@ -2027,6 +2066,11 @@ supports-color@6.0.0:
20272066
dependencies:
20282067
has-flag "^3.0.0"
20292068

2069+
supports-color@^2.0.0:
2070+
version "2.0.0"
2071+
resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7"
2072+
integrity sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=
2073+
20302074
supports-color@^5.3.0:
20312075
version "5.5.0"
20322076
resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f"

0 commit comments

Comments
 (0)