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

Software: Apache. PHP/8.1.30 

uname -a: Linux server1.tuhinhossain.com 5.15.0-151-generic #161-Ubuntu SMP Tue Jul 22 14:25:40 UTC
2025 x86_64
 

uid=1002(picotech) gid=1003(picotech) groups=1003(picotech),0(root)  

Safe-mode: OFF (not secure)

/home/picotech/domains/gwp.picotech.app/public_html/vendor/laravel/framework/src/Illuminate/Process/   drwxr-xr-x
Free 28.61 GB of 117.98 GB (24.25%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Self remove    Logout    


Viewing file:     FakeInvokedProcess.php (7.3 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php

namespace Illuminate\Process;

use 
Illuminate\Contracts\Process\InvokedProcess as InvokedProcessContract;

class 
FakeInvokedProcess implements InvokedProcessContract
{
    
/**
     * The command being faked.
     *
     * @var string
     */
    
protected $command;

    
/**
     * The underlying process description.
     *
     * @var \Illuminate\Process\FakeProcessDescription
     */
    
protected $process;

    
/**
     * The signals that have been received.
     *
     * @var array
     */
    
protected $receivedSignals = [];

    
/**
     * The number of times the process should indicate that it is "running".
     *
     * @var int|null
     */
    
protected $remainingRunIterations;

    
/**
     * The general output handler callback.
     *
     * @var callable|null
     */
    
protected $outputHandler;

    
/**
     * The current output's index.
     *
     * @var int
     */
    
protected $nextOutputIndex 0;

    
/**
     * The current error output's index.
     *
     * @var int
     */
    
protected $nextErrorOutputIndex 0;

    
/**
     * Create a new invoked process instance.
     *
     * @param  string  $command
     * @param  \Illuminate\Process\FakeProcessDescription  $process
     */
    
public function __construct(string $commandFakeProcessDescription $process)
    {
        
$this->command $command;
        
$this->process $process;
    }

    
/**
     * Get the process ID if the process is still running.
     *
     * @return int|null
     */
    
public function id()
    {
        
$this->invokeOutputHandlerWithNextLineOfOutput();

        return 
$this->process->processId;
    }

    
/**
     * Get the command line for the process.
     *
     * @return string
     */
    
public function command()
    {
        return 
$this->command;
    }

    
/**
     * Send a signal to the process.
     *
     * @param  int  $signal
     * @return $this
     */
    
public function signal(int $signal)
    {
        
$this->invokeOutputHandlerWithNextLineOfOutput();

        
$this->receivedSignals[] = $signal;

        return 
$this;
    }

    
/**
     * Determine if the process has received the given signal.
     *
     * @param  int  $signal
     * @return bool
     */
    
public function hasReceivedSignal(int $signal)
    {
        return 
in_array($signal$this->receivedSignals);
    }

    
/**
     * Determine if the process is still running.
     *
     * @return bool
     */
    
public function running()
    {
        
$this->invokeOutputHandlerWithNextLineOfOutput();

        
$this->remainingRunIterations is_null($this->remainingRunIterations)
            ? 
$this->process->runIterations
            
$this->remainingRunIterations;

        if (
$this->remainingRunIterations === 0) {
            while (
$this->invokeOutputHandlerWithNextLineOfOutput()) {
            }

            return 
false;
        }

        
$this->remainingRunIterations $this->remainingRunIterations 1;

        return 
true;
    }

    
/**
     * Invoke the asynchronous output handler with the next single line of output if necessary.
     *
     * @return array|false
     */
    
protected function invokeOutputHandlerWithNextLineOfOutput()
    {
        if (! 
$this->outputHandler) {
            return 
false;
        }

        [
$outputCount$outputStartingPoint] = [
            
count($this->process->output),
            
min($this->nextOutputIndex$this->nextErrorOutputIndex),
        ];

        for (
$i $outputStartingPoint$i $outputCount$i++) {
            
$currentOutput $this->process->output[$i];

            if (
$currentOutput['type'] === 'out' && $i >= $this->nextOutputIndex) {
                
call_user_func($this->outputHandler'out'$currentOutput['buffer']);
                
$this->nextOutputIndex $i 1;

                return 
$currentOutput;
            } elseif (
$currentOutput['type'] === 'err' && $i >= $this->nextErrorOutputIndex) {
                
call_user_func($this->outputHandler'err'$currentOutput['buffer']);
                
$this->nextErrorOutputIndex $i 1;

                return 
$currentOutput;
            }
        }

        return 
false;
    }

    
/**
     * Get the standard output for the process.
     *
     * @return string
     */
    
public function output()
    {
        
$this->latestOutput();

        
$output = [];

        for (
$i 0$i $this->nextOutputIndex$i++) {
            if (
$this->process->output[$i]['type'] === 'out') {
                
$output[] = $this->process->output[$i]['buffer'];
            }
        }

        return 
rtrim(implode(''$output), "\n")."\n";
    }

    
/**
     * Get the error output for the process.
     *
     * @return string
     */
    
public function errorOutput()
    {
        
$this->latestErrorOutput();

        
$output = [];

        for (
$i 0$i $this->nextErrorOutputIndex$i++) {
            if (
$this->process->output[$i]['type'] === 'err') {
                
$output[] = $this->process->output[$i]['buffer'];
            }
        }

        return 
rtrim(implode(''$output), "\n")."\n";
    }

    
/**
     * Get the latest standard output for the process.
     *
     * @return string
     */
    
public function latestOutput()
    {
        
$outputCount count($this->process->output);

        for (
$i $this->nextOutputIndex$i $outputCount$i++) {
            if (
$this->process->output[$i]['type'] === 'out') {
                
$output $this->process->output[$i]['buffer'];
                
$this->nextOutputIndex $i 1;

                break;
            }

            
$this->nextOutputIndex $i 1;
        }

        return 
$output ?? '';
    }

    
/**
     * Get the latest error output for the process.
     *
     * @return string
     */
    
public function latestErrorOutput()
    {
        
$outputCount count($this->process->output);

        for (
$i $this->nextErrorOutputIndex$i $outputCount$i++) {
            if (
$this->process->output[$i]['type'] === 'err') {
                
$output $this->process->output[$i]['buffer'];
                
$this->nextErrorOutputIndex $i 1;

                break;
            }

            
$this->nextErrorOutputIndex $i 1;
        }

        return 
$output ?? '';
    }

    
/**
     * Wait for the process to finish.
     *
     * @param  callable|null  $output
     * @return \Illuminate\Contracts\Process\ProcessResult
     */
    
public function wait(?callable $output null)
    {
        
$this->outputHandler $output ?: $this->outputHandler;

        if (! 
$this->outputHandler) {
            
$this->remainingRunIterations 0;

            return 
$this->predictProcessResult();
        }

        while (
$this->invokeOutputHandlerWithNextLineOfOutput()) {
            
//
        
}

        
$this->remainingRunIterations 0;

        return 
$this->process->toProcessResult($this->command);
    }

    
/**
     * Get the ultimate process result that will be returned by this "process".
     *
     * @return \Illuminate\Contracts\Process\ProcessResult
     */
    
public function predictProcessResult()
    {
        return 
$this->process->toProcessResult($this->command);
    }

    
/**
     * Set the general output handler for the fake invoked process.
     *
     * @param  callable|null  $outputHandler
     * @return $this
     */
    
public function withOutputHandler(?callable $outputHandler)
    {
        
$this->outputHandler $outputHandler;

        return 
$this;
    }
}

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ ok ]

:: Make Dir ::
 
[ ok ]
:: Make File ::
 
[ ok ]

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

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