mirror of
https://github.com/fluencelabs/js-libp2p-tcp
synced 2025-07-02 06:51:47 +00:00
Compare commits
4 Commits
v0.14.4
...
dependabot
Author | SHA1 | Date | |
---|---|---|---|
68a809a678 | |||
562b3adf1f | |||
eac9129bc0 | |||
0fe0815514 |
10
CHANGELOG.md
10
CHANGELOG.md
@ -1,3 +1,13 @@
|
||||
<a name="0.14.5"></a>
|
||||
## [0.14.5](https://github.com/libp2p/js-libp2p-tcp/compare/v0.14.4...v0.14.5) (2020-04-28)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* catch error from maConn.close ([#128](https://github.com/libp2p/js-libp2p-tcp/issues/128)) ([0fe0815](https://github.com/libp2p/js-libp2p-tcp/commit/0fe0815))
|
||||
|
||||
|
||||
|
||||
<a name="0.14.4"></a>
|
||||
## [0.14.4](https://github.com/libp2p/js-libp2p-tcp/compare/v0.14.3...v0.14.4) (2020-02-24)
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "libp2p-tcp",
|
||||
"version": "0.14.4",
|
||||
"version": "0.14.5",
|
||||
"description": "Node.js implementation of the TCP module that libp2p uses, which implements the interface-connection and interface-transport interfaces",
|
||||
"leadMaintainer": "Jacob Heun <jacobheun@gmail.com>",
|
||||
"main": "src/index.js",
|
||||
@ -33,7 +33,7 @@
|
||||
"npm": ">=3.0.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"aegir": "^21.0.2",
|
||||
"aegir": "^22.0.0",
|
||||
"chai": "^4.2.0",
|
||||
"dirty-chai": "^2.0.1",
|
||||
"libp2p-interfaces": "^0.2.0",
|
||||
|
@ -13,6 +13,19 @@ const {
|
||||
multiaddrToNetConfig
|
||||
} = require('./utils')
|
||||
|
||||
/**
|
||||
* Attempts to close the given maConn. If a failure occurs, it will be logged.
|
||||
* @private
|
||||
* @param {MultiaddrConnection} maConn
|
||||
*/
|
||||
async function attemptClose (maConn) {
|
||||
try {
|
||||
maConn && await maConn.close()
|
||||
} catch (err) {
|
||||
log.error('an error occurred closing the connection', err)
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = ({ handler, upgrader }, options) => {
|
||||
const listener = new EventEmitter()
|
||||
|
||||
@ -28,7 +41,7 @@ module.exports = ({ handler, upgrader }, options) => {
|
||||
conn = await upgrader.upgradeInbound(maConn)
|
||||
} catch (err) {
|
||||
log.error('inbound connection failed', err)
|
||||
return maConn && maConn.close()
|
||||
return attemptClose(maConn)
|
||||
}
|
||||
|
||||
log('inbound connection %s upgraded', maConn.remoteAddr)
|
||||
@ -51,7 +64,7 @@ module.exports = ({ handler, upgrader }, options) => {
|
||||
if (!server.listening) return
|
||||
|
||||
return new Promise((resolve, reject) => {
|
||||
server.__connections.forEach(maConn => maConn.close())
|
||||
server.__connections.forEach(maConn => attemptClose(maConn))
|
||||
server.close(err => err ? reject(err) : resolve())
|
||||
})
|
||||
}
|
||||
|
Reference in New Issue
Block a user