!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)

/uploads/script/vendor/laravel/framework/src/Illuminate/Broadcasting/Broadcasters/   drwxr-xr-x
Free 13.1 GB of 57.97 GB (22.6%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Self remove    Logout    


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

namespace Illuminate\Broadcasting\Broadcasters;

use 
Illuminate\Broadcasting\BroadcastException;
use 
Illuminate\Support\Arr;
use 
Illuminate\Support\Str;
use 
Pusher\ApiErrorException;
use 
Pusher\Pusher;
use 
Symfony\Component\HttpKernel\Exception\AccessDeniedHttpException;

class 
PusherBroadcaster extends Broadcaster
{
    use 
UsePusherChannelConventions;

    
/**
     * The Pusher SDK instance.
     *
     * @var \Pusher\Pusher
     */
    
protected $pusher;

    
/**
     * Create a new broadcaster instance.
     *
     * @param  \Pusher\Pusher  $pusher
     * @return void
     */
    
public function __construct(Pusher $pusher)
    {
        
$this->pusher $pusher;
    }

    
/**
     * Authenticate the incoming request for a given channel.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return mixed
     *
     * @throws \Symfony\Component\HttpKernel\Exception\AccessDeniedHttpException
     */
    
public function auth($request)
    {
        
$channelName $this->normalizeChannelName($request->channel_name);

        if (empty(
$request->channel_name) ||
            (
$this->isGuardedChannel($request->channel_name) &&
            ! 
$this->retrieveUser($request$channelName))) {
            throw new 
AccessDeniedHttpException;
        }

        return 
parent::verifyUserCanAccessChannel(
            
$request$channelName
        
);
    }

    
/**
     * Return the valid authentication response.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  mixed  $result
     * @return mixed
     */
    
public function validAuthenticationResponse($request$result)
    {
        if (
Str::startsWith($request->channel_name'private')) {
            return 
$this->decodePusherResponse(
                
$request$this->pusher->socket_auth($request->channel_name$request->socket_id)
            );
        }

        
$channelName $this->normalizeChannelName($request->channel_name);

        return 
$this->decodePusherResponse(
            
$request,
            
$this->pusher->presence_auth(
                
$request->channel_name$request->socket_id,
                
$this->retrieveUser($request$channelName)->getAuthIdentifier(), $result
            
)
        );
    }

    
/**
     * Decode the given Pusher response.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  mixed  $response
     * @return array
     */
    
protected function decodePusherResponse($request$response)
    {
        if (! 
$request->input('callback'false)) {
            return 
json_decode($responsetrue);
        }

        return 
response()->json(json_decode($responsetrue))
                    ->
withCallback($request->callback);
    }

    
/**
     * Broadcast the given event.
     *
     * @param  array  $channels
     * @param  string  $event
     * @param  array  $payload
     * @return void
     *
     * @throws \Illuminate\Broadcasting\BroadcastException
     */
    
public function broadcast(array $channels$event, array $payload = [])
    {
        
$socket Arr::pull($payload'socket');

        if (
$this->pusherServerIsVersionFiveOrGreater()) {
            
$parameters $socket !== null ? ['socket_id' => $socket] : [];

            try {
                
$this->pusher->trigger(
                    
$this->formatChannels($channels), $event$payload$parameters
                
);
            } catch (
ApiErrorException $e) {
                throw new 
BroadcastException(
                    
sprintf('Pusher error: %s.'$e->getMessage())
                );
            }
        } else {
            
$response $this->pusher->trigger(
                
$this->formatChannels($channels), $event$payload$sockettrue
            
);

            if ((
is_array($response) && $response['status'] >= 200 && $response['status'] <= 299)
                || 
$response === true) {
                return;
            }

            throw new 
BroadcastException(
                ! empty(
$response['body'])
                    ? 
sprintf('Pusher error: %s.'$response['body'])
                    : 
'Failed to connect to Pusher.'
            
);
        }
    }

    
/**
     * Determine if the Pusher PHP server is version 5.0 or greater.
     *
     * @return bool
     */
    
protected function pusherServerIsVersionFiveOrGreater()
    {
        return 
class_exists(ApiErrorException::class);
    }

    
/**
     * Get the Pusher SDK instance.
     *
     * @return \Pusher\Pusher
     */
    
public function getPusher()
    {
        return 
$this->pusher;
    }

    
/**
     * Set the Pusher SDK instance.
     *
     * @param \Pusher\Pusher $pusher
     * @return void
     */
    
public function setPusher($pusher)
    {
        
$this->pusher $pusher;
    }
}

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