Skip to content

Commit dfe89fd

Browse files
committed
Dry socket
1 parent 08116a4 commit dfe89fd

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();
@@ -49,14 +61,7 @@ const createServer = (server, options) => {
4961
let bytesRead = 0;
5062
let proxyProtoLength;
5163
let isProxyProto;
52-
socket.setKeepAlive(true); // prevent idle timeout ECONNRESET
53-
if (options.setNoDelay) {
54-
socket.setNoDelay(true); // disable nagle algorithm
55-
}
56-
if (server.timeout) {
57-
socket.setTimeout(server.timeout, () => closeSocket(socket));
58-
}
59-
socket.addListener('error', err => onError(err, 'proxyproto socket', socket));
64+
prepareSocket(socket, 'proxyproto socket');
6065
socket.addListener('data', onData);
6166
function onData(buffer) {
6267
socket.pause();
@@ -113,18 +118,11 @@ const createServer = (server, options) => {
113118
configurable: true
114119
});
115120
});
116-
socket.addListener('error', err => onError(err, 'secure socket', socket));
117-
socket.setKeepAlive(true); // prevent idle timeout ECONNRESET
118-
if (options.setNoDelay) {
119-
socket.setNoDelay(true); // disable nagle algorithm
120-
}
121-
if (server.timeout) {
122-
socket.setTimeout(server.timeout, () => closeSocket(socket));
123-
}
121+
prepareSocket(socket, 'secure socket');
124122
});
125123
} else {
126124
server.on('connection', socket => {
127-
socket.addListener('error', err => onError(err, 'socket'));
125+
prepareSocket(socket, 'socket');
128126
});
129127
}
130128

0 commit comments

Comments
 (0)