OXIESEC PANEL
- Current Dir:
/
/
opt
/
alt
/
python37
/
lib
/
python3.7
/
site-packages
/
exabgp
/
reactor
Server IP: 2a02:4780:11:1084:0:327f:3464:10
Upload:
Create Dir:
Name
Size
Modified
Perms
📁
..
-
03/16/2023 12:55:54 PM
rwxr-xr-x
📄
__init__.py
0 bytes
03/13/2021 04:30:48 PM
rw-r--r--
📁
__pycache__
-
03/16/2023 12:55:54 PM
rwxr-xr-x
📁
api
-
03/16/2023 12:55:54 PM
rwxr-xr-x
📄
asynchronous.py
1.83 KB
03/13/2021 04:30:48 PM
rw-r--r--
📄
daemon.py
6.46 KB
03/13/2021 04:30:48 PM
rw-r--r--
📄
delay.py
648 bytes
03/13/2021 04:30:48 PM
rw-r--r--
📄
interrupt.py
2.62 KB
03/13/2021 04:30:48 PM
rw-r--r--
📄
keepalive.py
1.65 KB
03/13/2021 04:30:48 PM
rw-r--r--
📄
listener.py
9.93 KB
03/13/2021 04:30:48 PM
rw-r--r--
📄
loop.py
19.4 KB
03/13/2021 04:30:48 PM
rw-r--r--
📁
network
-
03/16/2023 12:55:54 PM
rwxr-xr-x
📄
peer.py
27.95 KB
03/13/2021 04:30:48 PM
rw-r--r--
📄
protocol.py
15.65 KB
03/13/2021 04:30:48 PM
rw-r--r--
Editing: interrupt.py
Close
# encoding: utf-8 """ reactor/interrupt.py Created by Thomas Mangin on 2017-07-01. Copyright (c) 2009-2017 Exa Networks. All rights reserved. License: 3-clause BSD. (See the COPYRIGHT file) """ import signal from exabgp.logger import Logger class Signal(object): NONE = 0 SHUTDOWN = 1 RESTART = 2 RELOAD = 4 FULL_RELOAD = 8 def __init__(self): self.logger = Logger() self.received = self.NONE self.number = 0 self.rearm() def rearm(self): self.received = Signal.NONE self.number = 0 signal.signal(signal.SIGTERM, self.sigterm) signal.signal(signal.SIGHUP, self.sighup) signal.signal(signal.SIGALRM, self.sigalrm) signal.signal(signal.SIGUSR1, self.sigusr1) signal.signal(signal.SIGUSR2, self.sigusr2) def sigterm(self, signum, frame): self.logger.critical('SIGTERM received', 'reactor') if self.received: self.logger.critical('ignoring - still handling previous signal', 'reactor') return self.logger.critical('scheduling shutdown', 'reactor') self.received = self.SHUTDOWN self.number = signum def sighup(self, signum, frame): self.logger.critical('SIGHUP received', 'reactor') if self.received: self.logger.critical('ignoring - still handling previous signal', 'reactor') return self.logger.critical('scheduling shutdown', 'reactor') self.received = self.SHUTDOWN self.number = signum def sigalrm(self, signum, frame): self.logger.critical('SIGALRM received', 'reactor') if self.received: self.logger.critical('ignoring - still handling previous signal', 'reactor') return self.logger.critical('scheduling restart', 'reactor') self.received = self.RESTART self.number = signum def sigusr1(self, signum, frame): self.logger.critical('SIGUSR1 received', 'reactor') if self.received: self.logger.critical('ignoring - still handling previous signal', 'reactor') return self.logger.critical('scheduling reload of configuration', 'reactor') self.received = self.RELOAD self.number = signum def sigusr2(self, signum, frame): self.logger.critical('SIGUSR2 received', 'reactor') if self.received: self.logger.critical('ignoring - still handling previous signal', 'reactor') return self.logger.critical('scheduling reload of configuration and processes', 'reactor') self.received = self.FULL_RELOAD self.number = signum