net: don't suppress ECONNRESET
Let ECONNRESET network errors bubble up so clients can detect them. Commit c4454d2e suppressed and turned them into regular end-of-stream events to fix the then-failing simple/test-regress-GH-1531 test. See also issue #1571 for (scant) details. It turns out that special handling is no longer necessary. Remove the special casing and let the error bubble up naturally. pummel/test-https-ci-reneg-attack and pummel/test-tls-ci-reneg-attack are updated because they expected an EPIPE error code that is now an ECONNRESET. Suppression of the ECONNRESET prevented the test from detecting that the connection has been severed whereupon the next write would fail with an EPIPE. Fixes #1776.
This commit is contained in:
parent
c7b84a1d01
commit
14a4245051
@ -505,11 +505,7 @@ function onread(buffer, offset, length) {
|
||||
} else {
|
||||
debug('error', errno);
|
||||
// Error
|
||||
if (errno == 'ECONNRESET') {
|
||||
self._destroy();
|
||||
} else {
|
||||
self._destroy(errnoException(errno, 'read'));
|
||||
}
|
||||
self._destroy(errnoException(errno, 'read'));
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -89,7 +89,7 @@ function test(next) {
|
||||
|
||||
var closed = false;
|
||||
child.stdin.on('error', function(err) {
|
||||
assert.equal(err.code, 'EPIPE');
|
||||
assert.equal(err.code, 'ECONNRESET');
|
||||
closed = true;
|
||||
});
|
||||
child.stdin.on('close', function() {
|
||||
|
@ -87,7 +87,7 @@ function test(next) {
|
||||
|
||||
var closed = false;
|
||||
child.stdin.on('error', function(err) {
|
||||
assert.equal(err.code, 'EPIPE');
|
||||
assert.equal(err.code, 'ECONNRESET');
|
||||
closed = true;
|
||||
});
|
||||
child.stdin.on('close', function() {
|
||||
|
Loading…
x
Reference in New Issue
Block a user