| Server IP : 8.134.250.228 / Your IP : 216.73.216.82 Web Server : Apache System : Linux iZ7xv33p9e9ivk7yhmj7ibZ 5.10.134-18.al8.x86_64 #1 SMP Fri Dec 13 16:56:53 CST 2024 x86_64 User : www ( 1000) PHP Version : 8.0.26 Disable Function : passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /www/wwwroot/www.gobluemade.com/wp-content/plugins/wordfence/lib/ |
Upload File : |
<?php
require_once __DIR__ . '/wfFileUtils.php';
require_once __DIR__ . '/wfScanFile.php';
require_once __DIR__ . '/wfScanFileLink.php';
class wfScanPath {
private $baseDirectory;
private $path;
private $realPath;
private $wordpressPath;
private $expectedFiles;
public function __construct($baseDirectory, $path, $wordpressPath = null, $expectedFiles = null) {
$this->baseDirectory = $baseDirectory;
$this->path = $path;
$this->realPath = wfFileUtils::realPath($path);
$this->wordpressPath = $wordpressPath;
$this->expectedFiles = is_array($expectedFiles) ? array_flip($expectedFiles) : null;
}
public function getPath() {
return $this->path;
}
public function getRealPath() {
return $this->realPath;
}
public function getWordpressPath() {
return $this->wordpressPath;
}
public function hasExpectedFiles() {
return $this->expectedFiles !== null && !empty($this->expectedFiles);
}
public function expectsFile($name) {
return array_key_exists($name, $this->expectedFiles);
}
public function isBaseDirectory() {
return $this->path === $this->baseDirectory;
}
public function isBelowBaseDirectory() {
return wfFileUtils::belongsTo($this->path, $this->baseDirectory);
}
public function getContents() {
return wfFileUtils::getContents($this->realPath);
}
public function createScanFile($relativePath) {
$path = wfFileUtils::joinPaths($this->realPath, $relativePath);
$realPath = wfFileUtils::realPath($path);
$wordpressPath = wfFileUtils::trimSeparators(wfFileUtils::joinPaths($this->wordpressPath, $relativePath), true, false);
if (is_link($path)) {
return new wfScanFileLink($path, $realPath, $wordpressPath);
}
else {
return new wfScanFile($realPath, $wordpressPath);
}
}
public function __toString() {
return $this->realPath;
}
}