Server IP : 66.29.132.122 / Your IP : 3.139.239.135 Web Server : LiteSpeed System : Linux business142.web-hosting.com 4.18.0-553.lve.el8.x86_64 #1 SMP Mon May 27 15:27:34 UTC 2024 x86_64 User : admazpex ( 531) PHP Version : 7.2.34 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /proc/self/root/opt/alt/alt-nodejs11/root/lib/node_modules/npm/node_modules/cacache/lib/util/ |
Upload File : |
'use strict' const BB = require('bluebird') const chownr = BB.promisify(require('chownr')) const mkdirp = BB.promisify(require('mkdirp')) const inflight = require('promise-inflight') module.exports.chownr = fixOwner function fixOwner (filepath, uid, gid) { if (!process.getuid) { // This platform doesn't need ownership fixing return BB.resolve() } if (typeof uid !== 'number' && typeof gid !== 'number') { // There's no permissions override. Nothing to do here. return BB.resolve() } if ((typeof uid === 'number' && process.getuid() === uid) && (typeof gid === 'number' && process.getgid() === gid)) { // No need to override if it's already what we used. return BB.resolve() } return inflight( 'fixOwner: fixing ownership on ' + filepath, () => chownr( filepath, typeof uid === 'number' ? uid : process.getuid(), typeof gid === 'number' ? gid : process.getgid() ).catch({code: 'ENOENT'}, () => null) ) } module.exports.chownr.sync = fixOwnerSync function fixOwnerSync (filepath, uid, gid) { if (!process.getuid) { // This platform doesn't need ownership fixing return } if (typeof uid !== 'number' && typeof gid !== 'number') { // There's no permissions override. Nothing to do here. return } if ((typeof uid === 'number' && process.getuid() === uid) && (typeof gid === 'number' && process.getgid() === gid)) { // No need to override if it's already what we used. return } try { chownr.sync( filepath, typeof uid === 'number' ? uid : process.getuid(), typeof gid === 'number' ? gid : process.getgid() ) } catch (err) { if (err.code === 'ENOENT') { return null } } } module.exports.mkdirfix = mkdirfix function mkdirfix (p, uid, gid, cb) { return mkdirp(p).then(made => { if (made) { return fixOwner(made, uid, gid).then(() => made) } }).catch({code: 'EEXIST'}, () => { // There's a race in mkdirp! return fixOwner(p, uid, gid).then(() => null) }) } module.exports.mkdirfix.sync = mkdirfixSync function mkdirfixSync (p, uid, gid) { try { const made = mkdirp.sync(p) if (made) { fixOwnerSync(made, uid, gid) return made } } catch (err) { if (err.code === 'EEXIST') { fixOwnerSync(p, uid, gid) return null } else { throw err } } }