!C99Shell v. 2.5 [PHP 8 Update] [24.05.2025]!

Software: Apache/2.4.41 (Ubuntu). PHP/8.0.30 

uname -a: Linux apirnd 5.4.0-204-generic #224-Ubuntu SMP Thu Dec 5 13:38:28 UTC 2024 x86_64 

uid=33(www-data) gid=33(www-data) groups=33(www-data) 

Safe-mode: OFF (not secure)

/usr/local/lib/node_modules/pm2/node_modules/tx2/src/   drwxr-xr-x
Free 13.04 GB of 57.97 GB (22.49%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Self remove    Logout    


Viewing file:     actions.js (2.02 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
module.exports = {
  /**
   * Expose an action/function triggerable via PM2 or PM2.io
   * @memberof TX2
   * @param {string} action_name Name of the action
   * @param {object} [opts] Optional parameter
   * @param {function} fn Function to be called
   *
   * @example <caption>Action without arguments</caption>
   * tx2.action('run_query', (cb) => {
   *   cb({ success: true })
   * })
   * @example <caption>Action with arguments</caption>
   * tx2.action('run_query', arg1, (cb) => {
   *   cb({ success: arg1 })
   * })
   */
  action(action_name, opts, fn) {
    if (!fn) {
      fn = opts
      opts = null
    }

    if (!action_name)
      return console.error('[PMX] action.action_name is missing')
    if (!fn)
      return console.error('[PMX] emit.data is mission')

    // Notify the action
    this.send({
      type : 'axm:action',
      data : {
        action_name : action_name,
        opts        : opts,
        arity       : fn.length
      }
    })

    let reply = (data) => {
      if (data.length) {
        data._length = data.length
        delete data.length
      }

      this.send({
        type        : 'axm:reply',
        data        : {
          return      : data,
          action_name : action_name
        }
      })
    }

    process.on('message', function(data) {
      if (!data) return false

      // In case 2 arguments has been set but no options has been transmitted
      if (fn.length === 2 && typeof(data) === 'string' && data === action_name)
        return fn({}, reply)

      // In case 1 arguments has been set but options has been transmitted
      if (fn.length === 1 && typeof(data) === 'object' && data.msg === action_name)
        return fn(reply)

      /**
       * Classical call
       */
      if (typeof(data) === 'string' && data === action_name)
        return fn(reply)

      /**
       * If data is an object == v2 protocol
       * Pass the opts as first argument
       */
      if (typeof(data) === 'object' && data.msg === action_name)
        return fn(data.opts, reply)
    })
  }
}

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ Read-Only ]

:: Make Dir ::
 
[ Read-Only ]
:: Make File ::
 
[ Read-Only ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 2.5 [PHP 8 Update] [24.05.2025] | Generation time: 0.0046 ]--