!C99Shell v. 1.0 pre-release build #13!

Software: Apache. PHP/5.5.15 

uname -a: Windows NT SVR-DMZ 6.1 build 7600 (Windows Server 2008 R2 Enterprise Edition) i586 

SYSTEM 

Safe-mode: OFF (not secure)

C:\Users\DMZ\Desktop\cumbreclima\wp-content\plugins\w3-total-cache\lib\W3\Cache\   drwxrwxrwx
Free 4.09 GB of 39.52 GB (10.35%)
Detected drives: [ a ] [ c ] [ d ] [ e ] [ f ]
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Feedback    Self remove    Logout    


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

/**
 * PECL Memcached class
 */
if (!defined('W3TC')) {
    die();
}

w3_require_once(W3TC_LIB_W3_DIR '/Cache/Base.php');

/**
 * Class W3_Cache_Memcached
 */
class W3_Cache_Memcached extends W3_Cache_Base {
    
/**
     * Memcache object
     *
     * @var Memcache
     */
    
private $_memcache null;

    
/*
     * Used for faster flushing
     *
     * @var integer $_key_version
     */
    
private $_key_version = array();

    
/**
     * constructor
     *
     * @param array $config
     */
    
function __construct($config) {
        
parent::__construct($config);

        
$this->_memcache = new Memcache();

        if (!empty(
$config['servers'])) {
            
$persistant = isset($config['persistant']) ? (boolean) $config['persistant'] : false;

            foreach ((array) 
$config['servers'] as $server) {
                if (
substr($server05) == 'unix:')
                    
$this->_memcache->addServer(trim($server), 0$persistant);
                else {
                    list(
$ip$port) = explode(':'$server);
                    
$this->_memcache->addServer(trim($ip), (integer) trim($port), $persistant);
                }
            }
        } else {
            return 
false;
        }

        if (!empty(
$config['compress_threshold'])) {
            
$this->_memcache->setCompressThreshold((integer) $config['compress_threshold']);
        }

        return 
true;
    }

    
/**
     * Adds data
     *
     * @param string $key
     * @param mixed $var
     * @param integer $expire
     * @param string $group Used to differentiate between groups of cache values
     * @return boolean
     */
    
function add($key, &$var$expire 0$group '0') {
        return 
$this->set($key$var$expire$group);
    }

    
/**
     * Sets data
     *
     * @param string $key
     * @param mixed $var
     * @param integer $expire
     * @param string $group Used to differentiate between groups of cache values
     * @return boolean
     */
    
function set($key$var$expire 0$group '0') {
        
$key $this->get_item_key($key);

        
$var['key_version'] = $this->_get_key_version($group);

        return @
$this->_memcache->set($key '_' $this->_blog_id$var,
            
false$expire);
    }

    
/**
     * Returns data
     *
     * @param string $key
     * @param string $group Used to differentiate between groups of cache values
     * @return mixed
     */
    
function get_with_old($key$group '0') {
        
$has_old_data false;

        
$key $this->get_item_key($key);

        
$v = @$this->_memcache->get($key '_' $this->_blog_id);
        if (!
is_array($v) || !isset($v['key_version']))
            return array(
null$has_old_data);

        
$key_version $this->_get_key_version($group);
        if (
$v['key_version'] == $key_version)
            return array(
$v$has_old_data);

        if (
$v['key_version'] > $key_version) {
            
$this->_set_key_version($v['key_version'], $group);
            return array(
$v$has_old_data);
        }

        
// key version is old
        
if (!$this->_use_expired_data)
            return array(
null$has_old_data);

        
// if we have expired data - update it for future use and let
        // current process recalculate it
        
$expires_at = isset($v['expires_at']) ? $v['expires_at'] : null;
        if (
$expires_at == null || time() > $expires_at) {
            
$v['expires_at'] = time() + 30;
            @
$this->_memcache->set($key '_' $this->_blog_id$vfalse0);
            
$has_old_data true;

            return array(
null$has_old_data);
        }

        
// return old version
        
return array($v$has_old_data);
    }

    
/**
     * Replaces data
     *
     * @param string $key
     * @param mixed $var
     * @param integer $expire
     * @param string $group Used to differentiate between groups of cache values
     * @return boolean
     */
    
function replace($key, &$var$expire 0$group '0') {
        return 
$this->set($key$var$expire$group);
    }

    
/**
     * Deletes data
     *
     * @param string $key
     * @param string $group
     * @return boolean
     */
    
function delete($key$group '') {
        
$key $this->get_item_key($key);

        if (
$this->_use_expired_data) {
            
$v = @$this->_memcache->get($key '_' $this->_blog_id);
            if (
is_array($v)) {
                
$v['key_version'] = 0;
                @
$this->_memcache->set($key '_' $this->_blog_id$vfalse0);
                return 
true;
            }
        }
        return @
$this->_memcache->delete($key '_' $this->_blog_id0);
    }

    
/**
     * Key to delete, deletes .old and primary if exists.
     * @param $key
     * @return bool
     */
    
function hard_delete($key) {
        
$key $this->get_item_key($key);
        return @
$this->_memcache->delete($key '_' $this->_blog_id0);
    }

    
/**
     * Flushes all data
     *
     * @param string $group Used to differentiate between groups of cache values
     * @return boolean
     */
    
function flush($group '0') {
        
$this->_get_key_version($group);   // initialize $this->_key_version
        
$this->_key_version[$group]++;
        
$this->_set_key_version($this->_key_version[$group], $group);
        return 
true;
    }

    
/**
     * Checks if engine can function properly in this environment
     * @return bool
     */
    
public function available() {
        return 
class_exists('Memcache');
    }

    
/**
     * Returns key version
     *
     * @param string $group Used to differentiate between groups of cache values
     * @return integer
     */
    
private function _get_key_version($group '0') {
        if (!isset(
$this->_key_version[$group]) || $this->_key_version[$group] <= 0) {
            
$v = @$this->_memcache->get($this->_get_key_version_key($group));
            
$v intval($v);
            
$this->_key_version[$group] = ($v $v 1);
        }

        return 
$this->_key_version[$group];
    }

    
/**
     * Sets new key version
     *
     * @param $v
     * @param string $group Used to differentiate between groups of cache values
     * @return boolean
     */
    
private function _set_key_version($v$group '0') {
        @
$this->_memcache->set($this->_get_key_version_key($group), $vfalse0);
    }
}

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ ok ]

:: Make Dir ::
 
[ ok ]
:: Make File ::
 
[ ok ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 1.0 pre-release build #13 powered by Captain Crunch Security Team | http://ccteam.ru | Generation time: 0.0312 ]--