Linux webserver 6.8.0-49-generic #49~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Wed Nov 6 17:42:15 UTC 2 x86_64
Apache/2.4.52 (Ubuntu)
Server IP : 192.168.1.1 & Your IP : 3.17.65.43
Domains :
Cant Read [ /etc/named.conf ]
User : www-data
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
usr /
lib /
python3 /
dist-packages /
twisted /
internet /
Delete
Unzip
Name
Size
Permission
Date
Action
__pycache__
[ DIR ]
drwxr-xr-x
2024-11-28 06:59
iocpreactor
[ DIR ]
drwxr-xr-x
2024-11-28 06:59
test
[ DIR ]
drwxr-xr-x
2024-11-28 06:59
__init__.py
521
B
-rw-r--r--
2022-02-07 13:12
_baseprocess.py
1.96
KB
-rw-r--r--
2022-02-07 13:12
_dumbwin32proc.py
12.48
KB
-rw-r--r--
2022-02-07 13:12
_glibbase.py
12.41
KB
-rw-r--r--
2022-02-07 13:12
_idna.py
1.39
KB
-rw-r--r--
2022-02-07 13:12
_newtls.py
8.94
KB
-rw-r--r--
2022-02-07 13:12
_pollingfile.py
8.58
KB
-rw-r--r--
2022-02-07 13:12
_posixserialport.py
2.03
KB
-rw-r--r--
2022-02-07 13:12
_posixstdio.py
4.88
KB
-rw-r--r--
2022-02-07 13:12
_producer_helpers.py
3.82
KB
-rw-r--r--
2022-02-07 13:12
_resolver.py
8.27
KB
-rw-r--r--
2022-02-07 13:12
_signals.py
2.61
KB
-rw-r--r--
2022-02-07 13:12
_sslverify.py
71.09
KB
-rw-r--r--
2022-02-07 13:12
_threadedselect.py
11.31
KB
-rw-r--r--
2022-02-07 13:12
_win32serialport.py
4.8
KB
-rw-r--r--
2022-02-07 13:12
_win32stdio.py
3.07
KB
-rw-r--r--
2022-02-07 13:12
abstract.py
18.84
KB
-rw-r--r--
2022-02-07 13:12
address.py
5.12
KB
-rw-r--r--
2024-11-22 17:49
asyncioreactor.py
10.87
KB
-rw-r--r--
2022-02-07 13:12
base.py
46.28
KB
-rw-r--r--
2022-02-07 13:12
cfreactor.py
17.09
KB
-rw-r--r--
2022-02-07 13:12
default.py
1.85
KB
-rw-r--r--
2022-02-07 13:12
defer.py
83.65
KB
-rw-r--r--
2024-11-22 17:49
endpoints.py
75.63
KB
-rw-r--r--
2022-02-07 13:12
epollreactor.py
8.73
KB
-rw-r--r--
2022-02-07 13:12
error.py
13.17
KB
-rw-r--r--
2022-02-07 13:12
fdesc.py
3.16
KB
-rw-r--r--
2022-02-07 13:12
gireactor.py
4.51
KB
-rw-r--r--
2022-02-07 13:12
glib2reactor.py
1.09
KB
-rw-r--r--
2022-02-07 13:12
gtk2reactor.py
3.55
KB
-rw-r--r--
2022-02-07 13:12
gtk3reactor.py
1.49
KB
-rw-r--r--
2022-02-07 13:12
inotify.py
14.06
KB
-rw-r--r--
2022-02-07 13:12
interfaces.py
95.75
KB
-rw-r--r--
2022-02-07 13:12
kqreactor.py
10.56
KB
-rw-r--r--
2022-02-07 13:12
main.py
1006
B
-rw-r--r--
2022-02-07 13:12
pollreactor.py
5.83
KB
-rw-r--r--
2022-02-07 13:12
posixbase.py
26.96
KB
-rw-r--r--
2022-02-07 13:12
process.py
37.61
KB
-rw-r--r--
2022-02-07 13:12
protocol.py
26.75
KB
-rw-r--r--
2022-02-07 13:12
pyuisupport.py
843
B
-rw-r--r--
2022-02-07 13:12
reactor.py
1.77
KB
-rw-r--r--
2022-02-07 13:12
selectreactor.py
5.96
KB
-rw-r--r--
2022-02-07 13:12
serialport.py
2.22
KB
-rw-r--r--
2022-02-07 13:12
ssl.py
8.44
KB
-rw-r--r--
2022-02-07 13:12
stdio.py
1000
B
-rw-r--r--
2022-02-07 13:12
task.py
32.82
KB
-rw-r--r--
2022-02-07 13:12
tcp.py
53.69
KB
-rw-r--r--
2024-11-22 17:49
testing.py
28.55
KB
-rw-r--r--
2022-02-07 13:12
threads.py
3.72
KB
-rw-r--r--
2022-02-07 13:12
tksupport.py
1.92
KB
-rw-r--r--
2022-02-07 13:12
udp.py
18.18
KB
-rw-r--r--
2022-02-07 13:12
unix.py
21.98
KB
-rw-r--r--
2022-02-07 13:12
utils.py
8.48
KB
-rw-r--r--
2022-02-07 13:12
win32eventreactor.py
14.91
KB
-rw-r--r--
2022-02-07 13:12
wxreactor.py
5.19
KB
-rw-r--r--
2022-02-07 13:12
wxsupport.py
1.27
KB
-rw-r--r--
2022-02-07 13:12
Save
Rename
# Copyright (c) Twisted Matrix Laboratories. # See LICENSE for details. """ A poll() based implementation of the twisted main loop. To install the event loop (and you should do this before any connections, listeners or connectors are added):: from twisted.internet import pollreactor pollreactor.install() """ # System imports import errno from select import ( POLLERR, POLLHUP, POLLIN, POLLNVAL, POLLOUT, error as SelectError, poll, ) from zope.interface import implementer from twisted.internet import posixbase from twisted.internet.interfaces import IReactorFDSet # Twisted imports from twisted.python import log @implementer(IReactorFDSet) class PollReactor(posixbase.PosixReactorBase, posixbase._PollLikeMixin): """ A reactor that uses poll(2). @ivar _poller: A L{select.poll} which will be used to check for I/O readiness. @ivar _selectables: A dictionary mapping integer file descriptors to instances of L{FileDescriptor} which have been registered with the reactor. All L{FileDescriptor}s which are currently receiving read or write readiness notifications will be present as values in this dictionary. @ivar _reads: A dictionary mapping integer file descriptors to arbitrary values (this is essentially a set). Keys in this dictionary will be registered with C{_poller} for read readiness notifications which will be dispatched to the corresponding L{FileDescriptor} instances in C{_selectables}. @ivar _writes: A dictionary mapping integer file descriptors to arbitrary values (this is essentially a set). Keys in this dictionary will be registered with C{_poller} for write readiness notifications which will be dispatched to the corresponding L{FileDescriptor} instances in C{_selectables}. """ _POLL_DISCONNECTED = POLLHUP | POLLERR | POLLNVAL _POLL_IN = POLLIN _POLL_OUT = POLLOUT def __init__(self): """ Initialize polling object, file descriptor tracking dictionaries, and the base class. """ self._poller = poll() self._selectables = {} self._reads = {} self._writes = {} posixbase.PosixReactorBase.__init__(self) def _updateRegistration(self, fd): """Register/unregister an fd with the poller.""" try: self._poller.unregister(fd) except KeyError: pass mask = 0 if fd in self._reads: mask = mask | POLLIN if fd in self._writes: mask = mask | POLLOUT if mask != 0: self._poller.register(fd, mask) else: if fd in self._selectables: del self._selectables[fd] def _dictRemove(self, selectable, mdict): try: # the easy way fd = selectable.fileno() # make sure the fd is actually real. In some situations we can get # -1 here. mdict[fd] except BaseException: # the hard way: necessary because fileno() may disappear at any # moment, thanks to python's underlying sockets impl for fd, fdes in self._selectables.items(): if selectable is fdes: break else: # Hmm, maybe not the right course of action? This method can't # fail, because it happens inside error detection... return if fd in mdict: del mdict[fd] self._updateRegistration(fd) def addReader(self, reader): """Add a FileDescriptor for notification of data available to read.""" fd = reader.fileno() if fd not in self._reads: self._selectables[fd] = reader self._reads[fd] = 1 self._updateRegistration(fd) def addWriter(self, writer): """Add a FileDescriptor for notification of data available to write.""" fd = writer.fileno() if fd not in self._writes: self._selectables[fd] = writer self._writes[fd] = 1 self._updateRegistration(fd) def removeReader(self, reader): """Remove a Selectable for notification of data available to read.""" return self._dictRemove(reader, self._reads) def removeWriter(self, writer): """Remove a Selectable for notification of data available to write.""" return self._dictRemove(writer, self._writes) def removeAll(self): """ Remove all selectables, and return a list of them. """ return self._removeAll( [self._selectables[fd] for fd in self._reads], [self._selectables[fd] for fd in self._writes], ) def doPoll(self, timeout): """Poll the poller for new events.""" if timeout is not None: timeout = int(timeout * 1000) # convert seconds to milliseconds try: l = self._poller.poll(timeout) except SelectError as e: if e.args[0] == errno.EINTR: return else: raise _drdw = self._doReadOrWrite for fd, event in l: try: selectable = self._selectables[fd] except KeyError: # Handles the infrequent case where one selectable's # handler disconnects another. continue log.callWithLogger(selectable, _drdw, selectable, fd, event) doIteration = doPoll def getReaders(self): return [self._selectables[fd] for fd in self._reads] def getWriters(self): return [self._selectables[fd] for fd in self._writes] def install(): """Install the poll() reactor.""" p = PollReactor() from twisted.internet.main import installReactor installReactor(p) __all__ = ["PollReactor", "install"]