Browse Source

tls: fix test-https-client-reject fails

Fixes #2417.
v0.7.4-release
koichik 13 years ago
parent
commit
b962ff35dd
  1. 38
      lib/tls.js

38
lib/tls.js

@ -719,31 +719,33 @@ SecurePair.prototype.maybeInitFinished = function() {
SecurePair.prototype.destroy = function() { SecurePair.prototype.destroy = function() {
if (this._doneFlag) {
return;
}
var self = this; var self = this;
var error = this.ssl.error; var error = this.ssl.error;
if (!this._doneFlag) { this._doneFlag = true;
this._doneFlag = true; this.ssl.error = null;
this.ssl.error = null; this.ssl.close();
this.ssl.close(); this.ssl = null;
this.ssl = null;
self.encrypted.writable = self.encrypted.readable = false; self.encrypted.writable = self.encrypted.readable = false;
self.cleartext.writable = self.cleartext.readable = false; self.cleartext.writable = self.cleartext.readable = false;
process.nextTick(function() { process.nextTick(function() {
self.cleartext.emit('end'); self.cleartext.emit('end');
self.encrypted.emit('close'); self.encrypted.emit('close');
self.cleartext.emit('close'); self.cleartext.emit('close');
}); });
if (!this._secureEstablished) { if (!this._secureEstablished) {
if (!error) { if (!error) {
error = new Error('socket hang up'); error = new Error('socket hang up');
error.code = 'ECONNRESET'; error.code = 'ECONNRESET';
}
this.emit('error', error);
} }
this.emit('error', error);
} }
}; };

Loading…
Cancel
Save