Skip to content

Commit 6d04dde

Browse files
committed
Dry socket
1 parent c2556c3 commit 6d04dde

File tree

1 file changed

+15
-17
lines changed

1 file changed

+15
-17
lines changed

index.js

+15-17
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,18 @@ const createServer = (server, options) => {
1414
options.handleCommonErrors = true;
1515
}
1616

17+
function prepareSocket(socket, name) {
18+
socket.setKeepAlive(true); // prevent idle timeout ECONNRESET
19+
if (options.setNoDelay) {
20+
socket.setNoDelay(true); // disable nagle algorithm
21+
}
22+
if (server.timeout) {
23+
socket.setTimeout(server.timeout, () => closeSocket(socket));
24+
}
25+
socket.addListener('close', () => closeSocket(socket));
26+
socket.addListener('error', err => onError(err, name, socket));
27+
}
28+
1729
function closeSocket(socket) {
1830
for (let s = socket; s !== null; s = s._parent) {
1931
s.unref();
@@ -53,14 +65,7 @@ const createServer = (server, options) => {
5365
let bytesRead = 0;
5466
let proxyProtoLength;
5567
let isProxyProto;
56-
socket.setKeepAlive(true); // prevent idle timeout ECONNRESET
57-
if (options.setNoDelay) {
58-
socket.setNoDelay(true); // disable nagle algorithm
59-
}
60-
if (server.timeout) {
61-
socket.setTimeout(server.timeout, () => closeSocket(socket));
62-
}
63-
socket.addListener('error', err => onError(err, 'proxyproto socket', socket));
68+
prepareSocket(socket, 'proxyproto socket');
6469
socket.addListener('data', onData);
6570
function onData(buffer) {
6671
socket.pause();
@@ -117,18 +122,11 @@ const createServer = (server, options) => {
117122
configurable: true
118123
});
119124
});
120-
socket.addListener('error', err => onError(err, 'secure socket', socket));
121-
socket.setKeepAlive(true); // prevent idle timeout ECONNRESET
122-
if (options.setNoDelay) {
123-
socket.setNoDelay(true); // disable nagle algorithm
124-
}
125-
if (server.timeout) {
126-
socket.setTimeout(server.timeout, () => closeSocket(socket));
127-
}
125+
prepareSocket(socket, 'secure socket');
128126
});
129127
} else {
130128
server.on('connection', socket => {
131-
socket.addListener('error', err => onError(err, 'socket'));
129+
prepareSocket(socket, 'socket');
132130
});
133131
}
134132

0 commit comments

Comments
 (0)