Linux anchor 4.4.0-210-generic #242-Ubuntu SMP Fri Apr 16 09:57:56 UTC 2021 x86_64
Apache/2.4.18 (Ubuntu)
Server IP : 10.10.100.4 & Your IP : 216.73.217.150
Domains :
Cant Read [ /etc/named.conf ]
User : www-data
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
var /
www /
wiki.bernardino.org /
includes /
libs /
Delete
Unzip
Name
Size
Permission
Date
Action
composer
[ DIR ]
drwxr-xr-x
2016-11-28 20:20
eventrelayer
[ DIR ]
drwxr-xr-x
2016-11-28 20:20
filebackend
[ DIR ]
drwxr-xr-x
2016-11-28 20:20
iterators
[ DIR ]
drwxr-xr-x
2016-11-28 20:20
lockmanager
[ DIR ]
drwxr-xr-x
2016-11-28 20:20
mime
[ DIR ]
drwxr-xr-x
2016-11-28 20:20
objectcache
[ DIR ]
drwxr-xr-x
2016-11-28 20:20
rdbms
[ DIR ]
drwxr-xr-x
2016-11-28 20:20
redis
[ DIR ]
drwxr-xr-x
2016-11-28 20:20
replacers
[ DIR ]
drwxr-xr-x
2016-11-28 20:20
stats
[ DIR ]
drwxr-xr-x
2016-11-28 20:20
time
[ DIR ]
drwxr-xr-x
2016-11-28 20:20
virtualrest
[ DIR ]
drwxr-xr-x
2016-11-28 20:20
xmp
[ DIR ]
drwxr-xr-x
2016-11-28 20:20
APACHE-LICENSE-2.0.txt
11.09
KB
-rw-r--r--
2016-11-28 20:20
ArrayUtils.php
5.44
KB
-rw-r--r--
2016-11-28 20:20
CSSJanus.php
12.62
KB
-rw-r--r--
2010-09-21 22:11
CSSMin.php
15.02
KB
-rw-r--r--
2016-11-28 20:20
Cookie.php
5.41
KB
-rw-r--r--
2016-11-28 20:20
CookieJar.php
2.74
KB
-rw-r--r--
2016-11-28 20:20
CryptHKDF.php
8.78
KB
-rw-r--r--
2016-11-28 20:20
CryptRand.php
14.37
KB
-rw-r--r--
2016-11-28 20:20
DeferredStringifier.php
1.59
KB
-rw-r--r--
2016-11-28 20:20
ExplodeIterator.php
2.78
KB
-rw-r--r--
2016-11-28 20:20
GenericArrayObject.php
5.57
KB
-rw-r--r--
2016-11-28 20:20
HashRing.php
6.94
KB
-rw-r--r--
2016-11-28 20:20
HtmlArmor.php
1.39
KB
-rw-r--r--
2016-11-28 20:20
HttpStatus.php
3.14
KB
-rw-r--r--
2016-11-28 20:20
IEContentAnalyzer.php
25.06
KB
-rw-r--r--
2010-08-27 01:22
IEUrlExtension.php
9.02
KB
-rw-r--r--
2016-11-28 20:20
IP.php
22.32
KB
-rw-r--r--
2016-11-28 20:20
JavaScriptMinifier.php
22.24
KB
-rw-r--r--
2016-11-28 20:20
MWCryptHash.php
3.58
KB
-rw-r--r--
2016-11-28 20:20
MWMessagePack.php
5.63
KB
-rw-r--r--
2016-11-28 20:20
MapCacheLRU.php
3.88
KB
-rw-r--r--
2016-11-28 20:20
MappedIterator.php
3.3
KB
-rw-r--r--
2016-11-28 20:20
MemoizedCallable.php
4.68
KB
-rw-r--r--
2016-11-28 20:20
MessageSpecifier.php
1.21
KB
-rw-r--r--
2016-11-28 20:20
MultiHttpClient.php
15.25
KB
-rw-r--r--
2016-11-28 20:20
ObjectFactory.php
6.52
KB
-rw-r--r--
2016-11-28 20:20
ProcessCacheLRU.php
4.14
KB
-rw-r--r--
2016-11-28 20:20
README
237
B
-rw-r--r--
2016-11-28 20:20
ReplacementArray.php
2.22
KB
-rw-r--r--
2016-11-28 20:20
ReverseArrayIterator.php
2.01
KB
-rw-r--r--
2016-11-28 20:20
RiffExtractor.php
2.62
KB
-rw-r--r--
2016-11-28 20:20
StatusValue.php
8.84
KB
-rw-r--r--
2016-11-28 20:20
StringUtils.php
9.55
KB
-rw-r--r--
2016-11-28 20:20
Timing.php
5.91
KB
-rw-r--r--
2016-11-28 20:20
UDPTransport.php
3.07
KB
-rw-r--r--
2016-11-28 20:20
Xhprof.php
1.69
KB
-rw-r--r--
2016-11-28 20:20
XhprofData.php
10.68
KB
-rw-r--r--
2016-11-28 20:20
jsminplus.php
53.57
KB
-rw-r--r--
2016-11-28 20:20
Save
Rename
<?php /** * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License along * with this program; if not, write to the Free Software Foundation, Inc., * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * http://www.gnu.org/copyleft/gpl.html * * @file */ /** * Generic operation result class * Has warning/error list, boolean status and arbitrary value * * "Good" means the operation was completed with no warnings or errors. * * "OK" means the operation was partially or wholly completed. * * An operation which is not OK should have errors so that the user can be * informed as to what went wrong. Calling the fatal() function sets an error * message and simultaneously switches off the OK flag. * * The recommended pattern for Status objects is to return a StatusValue * unconditionally, i.e. both on success and on failure -- so that the * developer of the calling code is reminded that the function can fail, and * so that a lack of error-handling will be explicit. * * The use of Message objects should be avoided when serializability is needed. * * @since 1.25 */ class StatusValue { /** @var bool */ protected $ok = true; /** @var array */ protected $errors = []; /** @var mixed */ public $value; /** @var array Map of (key => bool) to indicate success of each part of batch operations */ public $success = []; /** @var int Counter for batch operations */ public $successCount = 0; /** @var int Counter for batch operations */ public $failCount = 0; /** * Factory function for fatal errors * * @param string|MessageSpecifier $message Message key or object * @return static */ public static function newFatal( $message /*, parameters...*/ ) { $params = func_get_args(); $result = new static(); call_user_func_array( [ &$result, 'fatal' ], $params ); return $result; } /** * Factory function for good results * * @param mixed $value * @return static */ public static function newGood( $value = null ) { $result = new static(); $result->value = $value; return $result; } /** * Splits this StatusValue object into two new StatusValue objects, one which contains only * the error messages, and one that contains the warnings, only. The returned array is * defined as: * [ * 0 => object(StatusValue) # the StatusValue with error messages, only * 1 => object(StatusValue) # The StatusValue with warning messages, only * ] * * @return StatusValue[] */ public function splitByErrorType() { $errorsOnlyStatusValue = clone $this; $warningsOnlyStatusValue = clone $this; $warningsOnlyStatusValue->ok = true; $errorsOnlyStatusValue->errors = $warningsOnlyStatusValue->errors = []; foreach ( $this->errors as $item ) { if ( $item['type'] === 'warning' ) { $warningsOnlyStatusValue->errors[] = $item; } else { $errorsOnlyStatusValue->errors[] = $item; } }; return [ $errorsOnlyStatusValue, $warningsOnlyStatusValue ]; } /** * Returns whether the operation completed and didn't have any error or * warnings * * @return bool */ public function isGood() { return $this->ok && !$this->errors; } /** * Returns whether the operation completed * * @return bool */ public function isOK() { return $this->ok; } /** * @return mixed */ public function getValue() { return $this->value; } /** * Get the list of errors * * Each error is a (message:string or MessageSpecifier,params:array) map * * @return array */ public function getErrors() { return $this->errors; } /** * Change operation status * * @param bool $ok */ public function setOK( $ok ) { $this->ok = $ok; } /** * Change operation resuklt * * @param bool $ok Whether the operation completed * @param mixed $value */ public function setResult( $ok, $value = null ) { $this->ok = (bool)$ok; $this->value = $value; } /** * Add a new warning * * @param string|MessageSpecifier $message Message key or object */ public function warning( $message /*, parameters... */ ) { $this->errors[] = [ 'type' => 'warning', 'message' => $message, 'params' => array_slice( func_get_args(), 1 ) ]; } /** * Add an error, do not set fatal flag * This can be used for non-fatal errors * * @param string|MessageSpecifier $message Message key or object */ public function error( $message /*, parameters... */ ) { $this->errors[] = [ 'type' => 'error', 'message' => $message, 'params' => array_slice( func_get_args(), 1 ) ]; } /** * Add an error and set OK to false, indicating that the operation * as a whole was fatal * * @param string|MessageSpecifier $message Message key or object */ public function fatal( $message /*, parameters... */ ) { $this->errors[] = [ 'type' => 'error', 'message' => $message, 'params' => array_slice( func_get_args(), 1 ) ]; $this->ok = false; } /** * Merge another status object into this one * * @param StatusValue $other Other StatusValue object * @param bool $overwriteValue Whether to override the "value" member */ public function merge( $other, $overwriteValue = false ) { $this->errors = array_merge( $this->errors, $other->errors ); $this->ok = $this->ok && $other->ok; if ( $overwriteValue ) { $this->value = $other->value; } $this->successCount += $other->successCount; $this->failCount += $other->failCount; } /** * Returns a list of status messages of the given type * * Each entry is a map of: * - message: string message key or MessageSpecifier * - params: array list of parameters * * @param string $type * @return array */ public function getErrorsByType( $type ) { $result = []; foreach ( $this->errors as $error ) { if ( $error['type'] === $type ) { $result[] = $error; } } return $result; } /** * Returns true if the specified message is present as a warning or error * * @param string|MessageSpecifier $message Message key or object to search for * * @return bool */ public function hasMessage( $message ) { if ( $message instanceof MessageSpecifier ) { $message = $message->getKey(); } foreach ( $this->errors as $error ) { if ( $error['message'] instanceof MessageSpecifier && $error['message']->getKey() === $message ) { return true; } elseif ( $error['message'] === $message ) { return true; } } return false; } /** * If the specified source message exists, replace it with the specified * destination message, but keep the same parameters as in the original error. * * Note, due to the lack of tools for comparing IStatusMessage objects, this * function will not work when using such an object as the search parameter. * * @param MessageSpecifier|string $source Message key or object to search for * @param MessageSpecifier|string $dest Replacement message key or object * @return bool Return true if the replacement was done, false otherwise. */ public function replaceMessage( $source, $dest ) { $replaced = false; foreach ( $this->errors as $index => $error ) { if ( $error['message'] === $source ) { $this->errors[$index]['message'] = $dest; $replaced = true; } } return $replaced; } /** * @return string */ public function __toString() { $status = $this->isOK() ? "OK" : "Error"; if ( count( $this->errors ) ) { $errorcount = "collected " . ( count( $this->errors ) ) . " error(s) on the way"; } else { $errorcount = "no errors detected"; } if ( isset( $this->value ) ) { $valstr = gettype( $this->value ) . " value set"; if ( is_object( $this->value ) ) { $valstr .= "\"" . get_class( $this->value ) . "\" instance"; } } else { $valstr = "no value set"; } $out = sprintf( "<%s, %s, %s>", $status, $errorcount, $valstr ); if ( count( $this->errors ) > 0 ) { $hdr = sprintf( "+-%'-4s-+-%'-25s-+-%'-40s-+\n", "", "", "" ); $i = 1; $out .= "\n"; $out .= $hdr; foreach ( $this->errors as $error ) { if ( $error['message'] instanceof MessageSpecifier ) { $key = $error['message']->getKey(); $params = $error['message']->getParams(); } elseif ( $error['params'] ) { $key = $error['message']; $params = $error['params']; } else { $key = $error['message']; $params = []; } $out .= sprintf( "| %4d | %-25.25s | %-40.40s |\n", $i, $key, implode( " ", $params ) ); $i += 1; } $out .= $hdr; } return $out; } }