!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/smm.picotech.app/public_html/vendor/facade/flare-client-php/src/Http/   drwxr-xr-x
Free 28.59 GB of 117.98 GB (24.24%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Self remove    Logout    


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

namespace Facade\FlareClient\Http;

use 
Facade\FlareClient\Http\Exceptions\BadResponseCode;
use 
Facade\FlareClient\Http\Exceptions\InvalidData;
use 
Facade\FlareClient\Http\Exceptions\MissingParameter;
use 
Facade\FlareClient\Http\Exceptions\NotFound;

class 
Client
{
    
/** @var null|string */
    
private $apiToken;

    
/** @var null|string */
    
private $apiSecret;

    
/** @var string */
    
private $baseUrl;

    
/** @var int */
    
private $timeout;

    public function 
__construct(
        ?
string $apiToken,
        ?
string $apiSecret,
        
string $baseUrl 'https://reporting.flareapp.io/api',
        
int $timeout 10
    
) {
        
$this->apiToken $apiToken;

        
$this->apiSecret $apiSecret;

        if (! 
$baseUrl) {
            throw 
MissingParameter::create('baseUrl');
        }

        
$this->baseUrl $baseUrl;

        if (! 
$timeout) {
            throw 
MissingParameter::create('timeout');
        }

        
$this->timeout $timeout;
    }

    
/**
     * @param string $url
     * @param array  $arguments
     *
     * @return array|false
     */
    
public function get(string $url, array $arguments = [])
    {
        return 
$this->makeRequest('get'$url$arguments);
    }

    
/**
     * @param string $url
     * @param array  $arguments
     *
     * @return array|false
     */
    
public function post(string $url, array $arguments = [])
    {
        return 
$this->makeRequest('post'$url$arguments);
    }

    
/**
     * @param string $url
     * @param array  $arguments
     *
     * @return array|false
     */
    
public function patch(string $url, array $arguments = [])
    {
        return 
$this->makeRequest('patch'$url$arguments);
    }

    
/**
     * @param string $url
     * @param array  $arguments
     *
     * @return array|false
     */
    
public function put(string $url, array $arguments = [])
    {
        return 
$this->makeRequest('put'$url$arguments);
    }

    
/**
     * @param string $method
     * @param array  $arguments
     *
     * @return array|false
     */
    
public function delete(string $method, array $arguments = [])
    {
        return 
$this->makeRequest('delete'$method$arguments);
    }

    
/**
     * @param string $httpVerb
     * @param string $url
     * @param array $arguments
     *
     * @return array
     */
    
private function makeRequest(string $httpVerbstring $url, array $arguments = [])
    {
        
$queryString http_build_query([
            
'key' => $this->apiToken,
            
'secret' => $this->apiSecret,
        ]);

        
$fullUrl "{$this->baseUrl}/{$url}?{$queryString}";

        
$headers = [
            
'x-api-token: '.$this->apiToken,
        ];

        
$response $this->makeCurlRequest($httpVerb$fullUrl$headers$arguments);

        if (
$response->getHttpResponseCode() === 422) {
            throw 
InvalidData::createForResponse($response);
        }

        if (
$response->getHttpResponseCode() === 404) {
            throw 
NotFound::createForResponse($response);
        }

        if (
$response->getHttpResponseCode() !== 200 && $response->getHttpResponseCode() !== 204) {
            throw 
BadResponseCode::createForResponse($response);
        }

        return 
$response->getBody();
    }

    public function 
makeCurlRequest(string $httpVerbstring $fullUrl, array $headers = [], array $arguments = []): Response
    
{
        
$curlHandle $this->getCurlHandle($fullUrl$headers);

        switch (
$httpVerb) {
            case 
'post':
                
curl_setopt($curlHandleCURLOPT_POSTtrue);
                
$this->attachRequestPayload($curlHandle$arguments);

                break;

            case 
'get':
                
curl_setopt($curlHandleCURLOPT_URL$fullUrl.'&'.http_build_query($arguments));

                break;

            case 
'delete':
                
curl_setopt($curlHandleCURLOPT_CUSTOMREQUEST'DELETE');

                break;

            case 
'patch':
                
curl_setopt($curlHandleCURLOPT_CUSTOMREQUEST'PATCH');
                
$this->attachRequestPayload($curlHandle$arguments);

                break;

            case 
'put':
                
curl_setopt($curlHandleCURLOPT_CUSTOMREQUEST'PUT');
                
$this->attachRequestPayload($curlHandle$arguments);

                break;
        }

        
$body json_decode(curl_exec($curlHandle), true);
        
$headers curl_getinfo($curlHandle);
        
$error curl_error($curlHandle);

        return new 
Response($headers$body$error);
    }

    private function 
attachRequestPayload(&$curlHandle, array $data)
    {
        
$encoded json_encode($data);

        
$this->lastRequest['body'] = $encoded;
        
curl_setopt($curlHandleCURLOPT_POSTFIELDS$encoded);
    }

    
/**
     * @param string $fullUrl
     * @param array $headers
     *
     * @return resource
     */
    
private function getCurlHandle(string $fullUrl, array $headers = [])
    {
        
$curlHandle curl_init();

        
curl_setopt($curlHandleCURLOPT_URL$fullUrl);

        
curl_setopt($curlHandleCURLOPT_HTTPHEADERarray_merge([
            
'Accept: application/json',
            
'Content-Type: application/json',
        ], 
$headers));

        
curl_setopt($curlHandleCURLOPT_USERAGENT'Laravel/Flare API 1.0');
        
curl_setopt($curlHandleCURLOPT_RETURNTRANSFERtrue);
        
curl_setopt($curlHandleCURLOPT_TIMEOUT$this->timeout);
        
curl_setopt($curlHandleCURLOPT_SSL_VERIFYPEERtrue);
        
curl_setopt($curlHandleCURLOPT_HTTP_VERSIONCURL_HTTP_VERSION_1_0);
        
curl_setopt($curlHandleCURLOPT_ENCODING'');
        
curl_setopt($curlHandleCURLINFO_HEADER_OUTtrue);
        
curl_setopt($curlHandleCURLOPT_FOLLOWLOCATIONtrue);
        
curl_setopt($curlHandleCURLOPT_MAXREDIRS1);

        return 
$curlHandle;
    }
}

:: 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.0044 ]--