2016-02-07 10:23:23 +00:00
|
|
|
'use strict'
|
2015-06-09 15:41:40 +00:00
|
|
|
|
2016-05-10 19:19:24 +00:00
|
|
|
const crypto = require('crypto')
|
|
|
|
|
2016-03-16 21:29:27 +00:00
|
|
|
const logger = require('./logger')
|
2015-06-09 15:41:40 +00:00
|
|
|
|
2016-03-16 21:29:27 +00:00
|
|
|
const utils = {
|
2016-10-02 10:19:02 +00:00
|
|
|
cleanForExit,
|
|
|
|
generateRandomString
|
2016-05-10 19:19:24 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
function generateRandomString (size, callback) {
|
|
|
|
crypto.pseudoRandomBytes(size, function (err, raw) {
|
|
|
|
if (err) return callback(err)
|
|
|
|
|
|
|
|
callback(null, raw.toString('hex'))
|
|
|
|
})
|
2016-02-07 10:23:23 +00:00
|
|
|
}
|
2015-06-09 15:41:40 +00:00
|
|
|
|
2016-05-11 19:19:34 +00:00
|
|
|
function cleanForExit (webtorrentProcess) {
|
2016-02-07 10:23:23 +00:00
|
|
|
logger.info('Gracefully exiting.')
|
2016-05-11 19:19:34 +00:00
|
|
|
process.kill(-webtorrentProcess.pid)
|
2016-02-07 10:23:23 +00:00
|
|
|
}
|
2015-11-02 21:19:39 +00:00
|
|
|
|
2016-02-07 10:23:23 +00:00
|
|
|
// ---------------------------------------------------------------------------
|
2016-01-31 10:23:52 +00:00
|
|
|
|
2016-02-07 10:23:23 +00:00
|
|
|
module.exports = utils
|