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

E:\xampp\xampp\php\PEAR\Zend\Tool\Project\Provider\   drwxrwxrwx
Free 7.25 GB of 239.26 GB (3.03%)
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:     Abstract.php (7.72 KB)      -rw-rw-rw-
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
/**
 * Zend Framework
 *
 * LICENSE
 *
 * This source file is subject to the new BSD license that is bundled
 * with this package in the file LICENSE.txt.
 * It is also available through the world-wide-web at this URL:
 * http://framework.zend.com/license/new-bsd
 * If you did not receive a copy of the license and are unable to
 * obtain it through the world-wide-web, please send an email
 * to license@zend.com so we can send you a copy immediately.
 *
 * @category   Zend
 * @package    Zend_Tool
 * @subpackage Framework
 * @copyright  Copyright (c) 2005-2009 Zend Technologies USA Inc. (http://www.zend.com)
 * @license    http://framework.zend.com/license/new-bsd     New BSD License
 * @version    $Id: Abstract.php 18951 2009-11-12 16:26:19Z alexander $
 */

/**
 * @see Zend_Tool_Project_Profile
 */
require_once 'Zend/Tool/Project/Profile.php';

/**
 * @see Zend_Tool_Framework_Provider_Abstract
 */
require_once 'Zend/Tool/Framework/Provider/Abstract.php';

/**
 * @see Zend_Tool_Project_Context_Repository
 */
require_once 'Zend/Tool/Project/Context/Repository.php';

/**
 * @see Zend_Tool_Project_Profile_FileParser_Xml
 */
require_once 'Zend/Tool/Project/Profile/FileParser/Xml.php';

/**
 * @see Zend_Tool_Framework_Registry
 */
require_once 'Zend/Tool/Framework/Registry.php';

/**
 * @category   Zend
 * @package    Zend_Tool
 * @copyright  Copyright (c) 2005-2009 Zend Technologies USA Inc. (http://www.zend.com)
 * @license    http://framework.zend.com/license/new-bsd     New BSD License
 */
abstract class Zend_Tool_Project_Provider_Abstract extends Zend_Tool_Framework_Provider_Abstract
{

    const 
NO_PROFILE_THROW_EXCEPTION true;
    const 
NO_PROFILE_RETURN_FALSE    false;

    
/**
     * @var bool
     */
    
protected static $_isInitialized false;

    protected 
$_projectPath null;

    
/**
     * @var Zend_Tool_Project_Profile
     */
    
protected $_loadedProfile null;

    
/**
     * constructor
     *
     * YOU SHOULD NOT OVERRIDE THIS, unless you know what you are doing
     *
     */
    
public function __construct()
    {
        
// initialize the ZF Contexts (only once per php request)
        
if (!self::$_isInitialized) {
            
$contextRegistry Zend_Tool_Project_Context_Repository::getInstance();
            
$contextRegistry->addContextsFromDirectory(
                
dirname(dirname(__FILE__)) . '/Context/Zf/''Zend_Tool_Project_Context_Zf_'
            
);
            
self::$_isInitialized true;
        }

        
// load up the extending providers required context classes
        
if ($contextClasses $this->getContextClasses()) {
            
$this->_loadContextClassesIntoRegistry($contextClasses);
        }

    }

    public function 
getContextClasses()
    {
        return array();
    }

    
/**
     * _getProject is designed to find if there is project file in the context of where
     * the client has been called from..   The search order is as follows..
     *    - traversing downwards from (PWD) - current working directory
     *    - if an enpoint variable has been registered in teh client registry - key=workingDirectory
     *    - if an ENV variable with the key ZFPROJECT_PATH is found
     *
     * @param $loadProfileFlag bool Whether or not to throw an exception when no profile is found
     * @param $projectDirectory string The project directory to use to search
     * @param $searchParentDirectories bool Whether or not to search upper level direcotries
     * @return Zend_Tool_Project_Profile
     */
    
protected function _loadProfile($loadProfileFlag self::NO_PROFILE_THROW_EXCEPTION$projectDirectory null$searchParentDirectories true)
    {
        
// use the cwd if no directory was provided
        
if ($projectDirectory == null) {
            
$projectDirectory getcwd();
        } elseif (
realpath($projectDirectory) == false) {
            throw new 
Zend_Tool_Project_Provider_Exception('The $projectDirectory supplied does not exist.');
        }

        
$profile = new Zend_Tool_Project_Profile();

        
$parentDirectoriesArray explode(DIRECTORY_SEPARATORltrim($projectDirectoryDIRECTORY_SEPARATOR));
        while (
$parentDirectoriesArray) {
            
$projectDirectoryAssembled implode(DIRECTORY_SEPARATOR$parentDirectoriesArray);

            if (
DIRECTORY_SEPARATOR !== "\\") {
                
$projectDirectoryAssembled DIRECTORY_SEPARATOR $projectDirectoryAssembled;
            }

            
$profile->setAttribute('projectDirectory'$projectDirectoryAssembled);
            if (
$profile->isLoadableFromFile()) {
                
chdir($projectDirectoryAssembled);

                
$profile->loadFromFile();
                
$this->_loadedProfile $profile;
                break;
            }

            
// break after first run if we are not to check upper directories
            
if ($searchParentDirectories == false) {
                break;
            }

            
array_pop($parentDirectoriesArray);
        }

        if (
$this->_loadedProfile == null) {
            if (
$loadProfileFlag == self::NO_PROFILE_THROW_EXCEPTION) {
                throw new 
Zend_Tool_Project_Provider_Exception('A project profile was not found.');
            } elseif (
$loadProfileFlag == self::NO_PROFILE_RETURN_FALSE) {
                return 
false;
            }
        }

        return 
$profile;
    }

    
/**
     * Load the project profile from the current working directory, if not throw exception
     *
     * @return Zend_Tool_Project_Profile
     */
    
protected function _loadProfileRequired()
    {
        
$profile $this->_loadProfile();
        if (
$profile === false) {
            require_once 
'Zend/Tool/Project/Provider/Exception.php';
            throw new 
Zend_Tool_Project_Provider_Exception('A project profile was not found in the current working directory.');
        }
        return 
$profile;
    }

    
/**
     * Return the currently loaded profile
     *
     * @return Zend_Tool_Project_Profile
     */
    
protected function _getProfile($loadProfileFlag self::NO_PROFILE_THROW_EXCEPTION)
    {
        if (!
$this->_loadedProfile) {
            if ((
$this->_loadProfile($loadProfileFlag) === false) && ($loadProfileFlag === self::NO_PROFILE_RETURN_FALSE)) {
                return 
false;
            }
        }

        return 
$this->_loadedProfile;
    }

    
/**
     * _storeProfile()
     *
     * This method will store the profile into its proper location
     *
     */
    
protected function _storeProfile()
    {
        
$projectProfileFile $this->_loadedProfile->search('ProjectProfileFile');

        
$name $projectProfileFile->getContext()->getPath();

        
$this->_registry->getResponse()->appendContent('Updating project profile \'' $name '\'');

        
$projectProfileFile->getContext()->save();
    }

    protected function 
_getContentForContext(Zend_Tool_Project_Context_Interface $context$methodName$parameters)
    {
        
$storage $this->_registry->getStorage();
        if (!
$storage->isEnabled()) {
            return 
false;
        }

        if (!
class_exists('Zend_Tool_Project_Context_Content_Engine')) {
            require_once 
'Zend/Tool/Project/Context/Content/Engine.php';
        }

        
$engine = new Zend_Tool_Project_Context_Content_Engine($storage);
        return 
$engine->getContent($context$methodName$parameters);
    }

    
/**
     * _loadContextClassesIntoRegistry() - This is called by the constructor
     * so that child providers can provide a list of contexts to load into the
     * context repository
     *
     * @param array $contextClasses
     */
    
private function _loadContextClassesIntoRegistry($contextClasses)
    {
        
$registry Zend_Tool_Project_Context_Repository::getInstance();

        foreach (
$contextClasses as $contextClass) {
            
$registry->addContextClass($contextClass);
        }
    }
}

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