Ghost Exploiter Team Official
Mass Deface
Directory >>
/
var
/
www
/
html
/
back
/
vendor
/
symfony
/
console
/
SignalRegistry
/
Mass Deface Auto Detect Domain
/*Ubah Ke document_root untuk mass deface*/
File / Folder
Size
Action
.
-
type
file
dir
+File/Dir
SignalMap.php
0.904KB
edt
ren
SignalRegistry.php
2.973KB
edt
ren
<?php /* * This file is part of the Symfony package. * * (c) Fabien Potencier <fabien@symfony.com> * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Component\Console\SignalRegistry; final class SignalRegistry { /** * @var array<int, array<callable>> */ private array $signalHandlers = []; /** * @var array<array<int, array<callable>>> */ private array $stack = []; /** * @var array<int, callable|int|string> */ private array $originalHandlers = []; public function __construct() { if (\function_exists('pcntl_async_signals')) { pcntl_async_signals(true); } } public function register(int $signal, callable $signalHandler): void { $previous = pcntl_signal_get_handler($signal); if (!isset($this->originalHandlers[$signal])) { $this->originalHandlers[$signal] = $previous; } if (!isset($this->signalHandlers[$signal])) { if (\is_callable($previous) && [$this, 'handle'] !== $previous) { $this->signalHandlers[$signal][] = $previous; } } $this->signalHandlers[$signal][] = $signalHandler; pcntl_signal($signal, [$this, 'handle']); } public static function isSupported(): bool { return \function_exists('pcntl_signal'); } /** * @internal */ public function handle(int $signal): void { $count = \count($this->signalHandlers[$signal]); foreach ($this->signalHandlers[$signal] as $i => $signalHandler) { $hasNext = $i !== $count - 1; $signalHandler($signal, $hasNext); } } /** * Pushes the current active handlers onto the stack and clears the active list. * * This prepares the registry for a new set of handlers within a specific scope. * * @internal */ public function pushCurrentHandlers(): void { $this->stack[] = $this->signalHandlers; $this->signalHandlers = []; } /** * Restores the previous handlers from the stack, making them active. * * This also restores the original OS-level signal handler if no * more handlers are registered for a signal that was just popped. * * @internal */ public function popPreviousHandlers(): void { $popped = $this->signalHandlers; $this->signalHandlers = array_pop($this->stack) ?? []; // Restore OS handler if no more Symfony handlers for this signal foreach ($popped as $signal => $handlers) { if (!($this->signalHandlers[$signal] ?? false) && isset($this->originalHandlers[$signal])) { pcntl_signal($signal, $this->originalHandlers[$signal]); } } } /** * @internal */ public function scheduleAlarm(int $seconds): void { pcntl_alarm($seconds); } }
<=Back
Liking