GeezerVison is showing github.com — tls: avoid throw in onerror for bad TLSSocket obj · nodejs/node@c498a72
File tree
Expand file treeCollapse file tree
Open diff view settings
Expand file treeCollapse file tree
Open diff view settings
Collapse file
Copy file name to clipboardExpand all lines: lib/_tls_wrap.js +5-3Lines changed: 5 additions & 3 deletions | Original file line number | Diff line number | Diff line change |
|---|
@@ -408,8 +408,10 @@ function onocspresponse(resp) { |
408 | 408 | function onerror(err) { |
409 | 409 | const owner = this[owner_symbol]; |
410 | 410 | debug('%s onerror %s had? %j', |
411 | | - owner._tlsOptions.isServer ? 'server' : 'client', err, |
412 | | - owner._hadError); |
| 411 | + (typeof owner._tlsOptions === 'object' && owner._tlsOptions !== null) ? |
| 412 | + owner._tlsOptions.isServer ? 'server' : 'client' : |
| 413 | + 'unknown', |
| 414 | + err, owner._hadError); |
413 | 415 |
|
414 | 416 | if (owner._hadError) |
415 | 417 | return; |
@@ -421,7 +423,7 @@ function onerror(err) { |
421 | 423 | // When handshake fails control is not yet released, |
422 | 424 | // so self._tlsError will return null instead of actual error |
423 | 425 | owner.destroy(err); |
424 | | - } else if (owner._tlsOptions.isServer && |
| 426 | + } else if (owner._tlsOptions?.isServer && |
425 | 427 | owner._rejectUnauthorized && |
426 | 428 | RegExpPrototypeTest(/peer did not return a certificate/, |
427 | 429 | err.message)) { |
|