function PharMetaDataInterceptor::baseFileDoesNotHaveMetaDataIssues
Parameters
string $path:
Return value
bool
1 call to PharMetaDataInterceptor::baseFileDoesNotHaveMetaDataIssues()
- PharMetaDataInterceptor::assert in misc/
typo3/ phar-stream-wrapper/ src/ Interceptor/ PharMetaDataInterceptor.php - Determines whether the according Phar archive contains (potential insecure) serialized objects.
File
-
misc/
typo3/ phar-stream-wrapper/ src/ Interceptor/ PharMetaDataInterceptor.php, line 53
Class
- PharMetaDataInterceptor
- @internal Experimental implementation of checking against serialized objects in Phar meta-data @internal This functionality has not been 100% pentested...
Namespace
TYPO3\PharStreamWrapper\InterceptorCode
private function baseFileDoesNotHaveMetaDataIssues($path) {
$invocation = Manager::instance()->resolve($path);
if ($invocation === null) {
return false;
}
// directly return in case invocation was checked before
if ($invocation->getVariable(__CLASS__) === true) {
return true;
}
// otherwise analyze meta-data
try {
$reader = new Reader($invocation->getBaseName());
$reader->resolveContainer()
->getManifest()
->deserializeMetaData();
$invocation->setVariable(__CLASS__, true);
} catch (DeserializationException $exception) {
return false;
}
return true;
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.