Spamworldpro Mini Shell
Spamworldpro


Server : Apache
System : Linux pod-100823:apache2_74:v0.5.7 5.4.0-1138-gcp #147~18.04.1-Ubuntu SMP Mon Oct 7 21:46:26 UTC 2024 x86_64
User : www-data ( 33)
PHP Version : 7.4.33.7
Disable Function : apache_child_terminate,apache_get_modules,apache_get_version,apache_getenv,apache_note,apache_setenv,disk_free_space,disk_total_space,diskfreespace,dl,exec,fastcgi_finish_request,link,opcache_compile_file,opcache_get_configuration,opcache_invalidate,opcache_is_script_cached,opcache_reset,passthru,pclose,pcntl_exec,popen,posix_getpid,posix_getppid,posix_getpwuid,posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,posix_setgid,posix_setpgid,posix_setsid,posix_setuid,posix_uname,proc_close,proc_get_status,proc_nice,proc_open,proc_terminate,realpath_cache_get,shell_exec,show_source,symlink,system
Directory :  /nas/content/live/attorneyexperi/wp-content/plugins/ugslot/MWP/Stream/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /nas/content/live/attorneyexperi/wp-content/plugins/ugslot/MWP/Stream/Callable.php
<?php
/*
 * This file is part of the ManageWP Worker plugin.
 *
 * (c) ManageWP LLC <contact@managewp.com>
 *
 * For the full copyright and license information, please view the LICENSE
 * file that was distributed with this source code.
 */

class MWP_Stream_Callable implements MWP_Stream_Interface
{

    /** @var callable */
    private $source;

    /** @var int */
    private $tellPos = 0;

    /** @var MWP_Stream_Buffer */
    private $buffer;

    /** @var array */
    private $arguments;

    /**
     * @param callable $source  Source of the stream data. The callable MAY
     *                          accept an integer argument used to control the
     *                          amount of data to return. The callable MUST
     *                          return a string when called, or false on error
     *                          or EOF.
     * @param array    $arguments
     */
    public function __construct($source, array $arguments = array())
    {
        $this->source    = $source;
        $this->buffer    = new MWP_Stream_Buffer();
        $this->arguments = $arguments;
    }

    public function close()
    {
        $this->tellPos   = false;
        $this->source    = null;
        $this->arguments = array();
    }

    public function tell()
    {
        return $this->tellPos;
    }

    public function eof()
    {
        if ($this->source !== null) {
            return false;
        }

        if ($this->source === null && $this->buffer !== null) {
            return $this->buffer->eof();
        }

        return true;
    }

    public function isSeekable()
    {
        return false;
    }

    public function seek($offset, $whence = SEEK_SET)
    {
        return false;
    }

    public function read($length)
    {
        $data    = $this->buffer->read($length);
        $readLen = strlen($data);
        $this->tellPos += $readLen;
        $remaining = $length - $readLen;

        if ($remaining) {
            $this->pump($remaining);
            $data .= $this->buffer->read($remaining);
            $this->tellPos += strlen($data) - $readLen;
        }

        return $data;
    }

    public function __toString()
    {
        $buffer = '';

        while (!$this->eof()) {
            $buffer .= $this->read(1048576);
        }

        return $buffer;
    }

    private function pump($length)
    {
        if ($this->source) {
            do {
                $data = call_user_func_array($this->source, array_merge(array($length), $this->arguments));
                if ($data === false || $data === null) {
                    $this->source = null;

                    return;
                }
                if ($data instanceof MWP_Stream_Interface) {
                    $this->source = null;
                    $this->buffer = $data;

                    return;
                }
                $this->buffer->write($data);
                $length -= strlen($data);
            } while ($length > 0);
        }
    }
}

Spamworldpro Mini