| Server IP : 213.136.93.164 / Your IP : 216.73.216.20 Web Server : Apache System : Linux m14200.contabo.net 5.14.0-611.54.1.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Wed May 6 18:03:03 EDT 2026 x86_64 User : ki692510 ( 1047) PHP Version : 7.4.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /proc/thread-self/root/opt/cpanel/ea-wappspector/src/Matchers/ |
Upload File : |
<?php
namespace Plesk\Wappspector\Matchers;
use League\Flysystem\Filesystem;
use League\Flysystem\FilesystemException;
use Plesk\Wappspector\MatchResult\EmptyMatchResult;
use Plesk\Wappspector\MatchResult\MatchResultInterface;
trait UpLevelMatcherTrait
{
abstract protected function doMatch(Filesystem $fs, string $path): MatchResultInterface;
public function match(Filesystem $fs, string $path): MatchResultInterface
{
$matcher = $this->safeScanDir($fs, $path);
if ($matcher instanceof EmptyMatchResult) {
$matcher = $this->safeScanDir($fs, rtrim($path) . '/../');
}
return $matcher;
}
private function safeScanDir(Filesystem $fs, string $path): MatchResultInterface
{
try {
$result = $this->doMatch($fs, $path);
} catch (FilesystemException) {
// skip dir if it is inaccessible
$result = new EmptyMatchResult();
}
return $result;
}
}