Kernel : Linux vmw02p.internet-indee.net 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Tue Nov 16 14:42:35 UTC 2021 x86_64
Disable function : NONE
Safe mode : OFF
Host : firofichi.it | Server ip : 5.196.164.15 | Your ip : 3.12.149.221 | Time @ Server : 19 Oct 2024 04:04:12
MySQL : OFF | MSSQL : OFF | cURL : ON | Oracle : OFF | wget : ON | Perl : ON

/home/webmaster/firofichi/www/vendor/magento/framework/Cache/

HOME about upload exec mass file domain root vuln newfile newfolder kill me

File Path : /home/webmaster/firofichi/www/vendor/magento/framework/Cache/LockGuardedCacheLoader.php

<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ namespace Magento\Framework\Cache; use Magento\Framework\Lock\LockManagerInterface; /** * Default mutex that provide concurrent access to cache storage. */ class LockGuardedCacheLoader { /** * @var LockManagerInterface */ private $locker; /** * Lifetime of the lock for write in cache. * * Value of the variable in milliseconds. * * @var int */ private $lockTimeout; /** * Timeout between retrieves to load the configuration from the cache. * * Value of the variable in milliseconds. * * @var int */ private $delayTimeout; /** * @param LockManagerInterface $locker * @param int $lockTimeout * @param int $delayTimeout */ public function __construct( LockManagerInterface $locker, int $lockTimeout = 10000, int $delayTimeout = 20 ) { $this->locker = $locker; $this->lockTimeout = $lockTimeout; $this->delayTimeout = $delayTimeout; } /** * Load data. * * @param string $lockName * @param callable $dataLoader * @param callable $dataCollector * @param callable $dataSaver * @return mixed */ public function lockedLoadData( string $lockName, callable $dataLoader, callable $dataCollector, callable $dataSaver ) { $cachedData = $dataLoader(); //optimistic read while ($cachedData === false && $this->locker->isLocked($lockName)) { usleep($this->delayTimeout * 1000); $cachedData = $dataLoader(); } while ($cachedData === false) { try { if ($this->locker->lock($lockName, $this->lockTimeout / 1000)) { $data = $dataCollector(); $dataSaver($data); $cachedData = $data; } } finally { $this->locker->unlock($lockName); } if ($cachedData === false) { usleep($this->delayTimeout * 1000); $cachedData = $dataLoader(); } } return $cachedData; } /** * Clean data. * * @param string $lockName * @param callable $dataCleaner * @return void */ public function lockedCleanData(string $lockName, callable $dataCleaner) { while ($this->locker->isLocked($lockName)) { usleep($this->delayTimeout * 1000); } try { if ($this->locker->lock($lockName, $this->lockTimeout / 1000)) { $dataCleaner(); } } finally { $this->locker->unlock($lockName); } } }