diff --git a/src/index.js b/src/index.js index defff75..edb23ee 100644 --- a/src/index.js +++ b/src/index.js @@ -3,6 +3,8 @@ /* eslint-disable no-console */ /* eslint indent: "error" */ const fs = require('fs'); +const os = require('os'); +const path = require('path'); const { spawn } = require('child_process'); @@ -26,7 +28,7 @@ const checkDataTypeCompatibility = (params) => { module.exports = function openssl(params, callback = () => undefined) { const stdout = []; const stderr = []; - const dir = 'openssl/'; + const dir = path.join(os.tmpdir(), 'openssl'); let parameters = params @@ -54,7 +56,7 @@ module.exports = function openssl(params, callback = () => undefined) { fs.mkdirSync(dir); } - const filename = dir + parameters[i].name + const filename =path.join(dir, parameters[i].name) fs.writeFileSync(filename, parameters[i].buffer, (err) => { if (err) { @@ -63,15 +65,14 @@ module.exports = function openssl(params, callback = () => undefined) { }); parameters[i] = parameters[i].name - parameters[i] = dir + parameters[i]; + parameters[i] = path.join(dir, parameters[i]); } if (checkCommandForIO(parameters[i]) && typeof parameters[i + 1] !== 'object') { - parameters[i + 1] = dir + parameters[i + 1]; + parameters[i + 1] = path.join(dir, parameters[i + 1]); } } - const openSSLProcess = spawn('openssl', parameters); openSSLProcess.stdout.on('data', (data) => {