GRAYBYTE WORDPRESS FILE MANAGER9024

Server IP : 198.54.121.189 / Your IP : 216.73.216.140
System : Linux premium69.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64
PHP Version : 7.4.33
Disable Function : NONE
cURL : ON | WGET : ON | Sudo : OFF | Pkexec : OFF
Directory : /opt/alt/python313/lib64/python3.13/
Upload Files :
Current_dir [ Not Writeable ] Document_root [ Writeable ]

Command :


Current File : /opt/alt/python313/lib64/python3.13//_android_support.py
import io
import sys
from threading import RLock
from time import sleep, time

# The maximum length of a log message in bytes, including the level marker and
# tag, is defined as LOGGER_ENTRY_MAX_PAYLOAD at
# https://cs.android.com/android/platform/superproject/+/android-14.0.0_r1:system/logging/liblog/include/log/log.h;l=71.
# Messages longer than this will be truncated by logcat. This limit has already
# been reduced at least once in the history of Android (from 4076 to 4068 between
# API level 23 and 26), so leave some headroom.
MAX_BYTES_PER_WRITE = 4000

# UTF-8 uses a maximum of 4 bytes per character, so limiting text writes to this
# size ensures that we can always avoid exceeding MAX_BYTES_PER_WRITE.
# However, if the actual number of bytes per character is smaller than that,
# then we may still join multiple consecutive text writes into binary
# writes containing a larger number of characters.
MAX_CHARS_PER_WRITE = MAX_BYTES_PER_WRITE // 4


# When embedded in an app on current versions of Android, there's no easy way to
# monitor the C-level stdout and stderr. The testbed comes with a .c file to
# redirect them to the system log using a pipe, but that wouldn't be convenient
# or appropriate for all apps. So we redirect at the Python level instead.
def init_streams(android_log_write, stdout_prio, stderr_prio):
    if sys.executable:
        return  # Not embedded in an app.

    global logcat
    logcat = Logcat(android_log_write)

    sys.stdout = TextLogStream(
        stdout_prio, "python.stdout", sys.stdout.fileno())
    sys.stderr = TextLogStream(
        stderr_prio, "python.stderr", sys.stderr.fileno())


class TextLogStream(io.TextIOWrapper):
    def __init__(self, prio, tag, fileno=None, **kwargs):
        # The default is surrogateescape for stdout and backslashreplace for
        # stderr, but in the context of an Android log, readability is more
        # important than reversibility.
        kwargs.setdefault("encoding", "UTF-8")
        kwargs.setdefault("errors", "backslashreplace")

        super().__init__(BinaryLogStream(prio, tag, fileno), **kwargs)
        self._lock = RLock()
        self._pending_bytes = []
        self._pending_bytes_count = 0

    def __repr__(self):
        return f"<TextLogStream {self.buffer.tag!r}>"

    def write(self, s):
        if not isinstance(s, str):
            raise TypeError(
                f"write() argument must be str, not {type(s).__name__}")

        # In case `s` is a str subclass that writes itself to stdout or stderr
        # when we call its methods, convert it to an actual str.
        s = str.__str__(s)

        # We want to emit one log message per line wherever possible, so split
        # the string into lines first. Note that "".splitlines() == [], so
        # nothing will be logged for an empty string.
        with self._lock:
            for line in s.splitlines(keepends=True):
                while line:
                    chunk = line[:MAX_CHARS_PER_WRITE]
                    line = line[MAX_CHARS_PER_WRITE:]
                    self._write_chunk(chunk)

        return len(s)

    # The size and behavior of TextIOWrapper's buffer is not part of its public
    # API, so we handle buffering ourselves to avoid truncation.
    def _write_chunk(self, s):
        b = s.encode(self.encoding, self.errors)
        if self._pending_bytes_count + len(b) > MAX_BYTES_PER_WRITE:
            self.flush()

        self._pending_bytes.append(b)
        self._pending_bytes_count += len(b)
        if (
            self.write_through
            or b.endswith(b"\n")
            or self._pending_bytes_count > MAX_BYTES_PER_WRITE
        ):
            self.flush()

    def flush(self):
        with self._lock:
            self.buffer.write(b"".join(self._pending_bytes))
            self._pending_bytes.clear()
            self._pending_bytes_count = 0

    # Since this is a line-based logging system, line buffering cannot be turned
    # off, i.e. a newline always causes a flush.
    @property
    def line_buffering(self):
        return True


class BinaryLogStream(io.RawIOBase):
    def __init__(self, prio, tag, fileno=None):
        self.prio = prio
        self.tag = tag
        self._fileno = fileno

    def __repr__(self):
        return f"<BinaryLogStream {self.tag!r}>"

    def writable(self):
        return True

    def write(self, b):
        if type(b) is not bytes:
            try:
                b = bytes(memoryview(b))
            except TypeError:
                raise TypeError(
                    f"write() argument must be bytes-like, not {type(b).__name__}"
                ) from None

        # Writing an empty string to the stream should have no effect.
        if b:
            logcat.write(self.prio, self.tag, b)
        return len(b)

    # This is needed by the test suite --timeout option, which uses faulthandler.
    def fileno(self):
        if self._fileno is None:
            raise io.UnsupportedOperation("fileno")
        return self._fileno


# When a large volume of data is written to logcat at once, e.g. when a test
# module fails in --verbose3 mode, there's a risk of overflowing logcat's own
# buffer and losing messages. We avoid this by imposing a rate limit using the
# token bucket algorithm, based on a conservative estimate of how fast `adb
# logcat` can consume data.
MAX_BYTES_PER_SECOND = 1024 * 1024

# The logcat buffer size of a device can be determined by running `logcat -g`.
# We set the token bucket size to half of the buffer size of our current minimum
# API level, because other things on the system will be producing messages as
# well.
BUCKET_SIZE = 128 * 1024

# https://cs.android.com/android/platform/superproject/+/android-14.0.0_r1:system/logging/liblog/include/log/log_read.h;l=39
PER_MESSAGE_OVERHEAD = 28


class Logcat:
    def __init__(self, android_log_write):
        self.android_log_write = android_log_write
        self._lock = RLock()
        self._bucket_level = 0
        self._prev_write_time = time()

    def write(self, prio, tag, message):
        # Encode null bytes using "modified UTF-8" to avoid them truncating the
        # message.
        message = message.replace(b"\x00", b"\xc0\x80")

        with self._lock:
            now = time()
            self._bucket_level += (
                (now - self._prev_write_time) * MAX_BYTES_PER_SECOND)

            # If the bucket level is still below zero, the clock must have gone
            # backwards, so reset it to zero and continue.
            self._bucket_level = max(0, min(self._bucket_level, BUCKET_SIZE))
            self._prev_write_time = now

            self._bucket_level -= PER_MESSAGE_OVERHEAD + len(tag) + len(message)
            if self._bucket_level < 0:
                sleep(-self._bucket_level / MAX_BYTES_PER_SECOND)

            self.android_log_write(prio, tag, message)

[ Back ]
Name
Size
Last Modified
Owner / Group
Permissions
Options
..
--
May 13 2025 08:38:47
root / root
0755
__pycache__
--
May 13 2025 08:36:33
root / linksafe
0755
_pyrepl
--
May 13 2025 08:36:33
root / linksafe
0755
asyncio
--
May 13 2025 08:36:33
root / linksafe
0755
collections
--
May 13 2025 08:36:33
root / linksafe
0755
concurrent
--
May 13 2025 08:36:33
root / linksafe
0755
config-3.13-x86_64-linux-gnu
--
May 13 2025 08:38:47
root / linksafe
0755
ctypes
--
May 13 2025 08:36:33
root / linksafe
0755
curses
--
May 13 2025 08:36:33
root / linksafe
0755
dbm
--
May 13 2025 08:36:33
root / linksafe
0755
email
--
May 13 2025 08:36:33
root / linksafe
0755
encodings
--
May 13 2025 08:36:33
root / linksafe
0755
ensurepip
--
May 13 2025 08:36:33
root / linksafe
0755
html
--
May 13 2025 08:36:33
root / linksafe
0755
http
--
May 13 2025 08:36:33
root / linksafe
0755
importlib
--
May 13 2025 08:36:33
root / linksafe
0755
json
--
May 13 2025 08:36:33
root / linksafe
0755
lib-dynload
--
May 13 2025 08:36:33
root / linksafe
0755
logging
--
May 13 2025 08:36:33
root / linksafe
0755
multiprocessing
--
May 13 2025 08:36:33
root / linksafe
0755
pathlib
--
May 13 2025 08:36:33
root / linksafe
0755
pydoc_data
--
May 13 2025 08:36:33
root / linksafe
0755
re
--
May 13 2025 08:36:33
root / linksafe
0755
site-packages
--
May 13 2025 08:36:33
root / linksafe
0755
sqlite3
--
May 13 2025 08:36:33
root / linksafe
0755
sysconfig
--
May 13 2025 08:36:33
root / linksafe
0755
tomllib
--
May 13 2025 08:36:33
root / linksafe
0755
unittest
--
May 13 2025 08:36:33
root / linksafe
0755
urllib
--
May 13 2025 08:36:33
root / linksafe
0755
venv
--
May 13 2025 08:36:33
root / linksafe
0755
wsgiref
--
May 13 2025 08:36:33
root / linksafe
0755
xml
--
May 13 2025 08:36:33
root / linksafe
0755
xmlrpc
--
May 13 2025 08:36:33
root / linksafe
0755
zipfile
--
May 13 2025 08:36:33
root / linksafe
0755
zoneinfo
--
May 13 2025 08:36:33
root / linksafe
0755
LICENSE.txt
13.485 KB
April 08 2025 13:54:08
root / linksafe
0644
__future__.py
5.096 KB
April 25 2025 15:04:28
root / linksafe
0644
__hello__.py
0.222 KB
April 25 2025 15:04:28
root / linksafe
0644
_aix_support.py
3.927 KB
April 25 2025 15:04:26
root / linksafe
0644
_android_support.py
6.733 KB
April 25 2025 15:04:20
root / linksafe
0644
_apple_support.py
2.203 KB
April 25 2025 15:04:26
root / linksafe
0644
_collections_abc.py
31.508 KB
April 25 2025 15:04:21
root / linksafe
0644
_colorize.py
2.781 KB
April 25 2025 15:04:20
root / linksafe
0644
_compat_pickle.py
8.53 KB
April 25 2025 15:04:26
root / linksafe
0644
_compression.py
5.548 KB
April 25 2025 15:04:21
root / linksafe
0644
_ios_support.py
2.609 KB
April 25 2025 15:04:26
root / linksafe
0644
_markupbase.py
14.31 KB
April 25 2025 15:04:21
root / linksafe
0644
_opcode_metadata.py
9.048 KB
April 25 2025 15:04:26
root / linksafe
0644
_osx_support.py
21.507 KB
April 25 2025 15:04:26
root / linksafe
0644
_py_abc.py
6.044 KB
April 25 2025 15:04:27
root / linksafe
0644
_pydatetime.py
89.831 KB
April 25 2025 15:04:28
root / linksafe
0644
_pydecimal.py
221.956 KB
April 25 2025 15:04:19
root / linksafe
0644
_pyio.py
91.1 KB
April 25 2025 15:04:21
root / linksafe
0644
_pylong.py
11.553 KB
April 25 2025 15:04:21
root / linksafe
0644
_sitebuiltins.py
3.055 KB
April 25 2025 15:04:21
root / linksafe
0644
_strptime.py
28.693 KB
April 25 2025 15:04:27
root / linksafe
0644
_sysconfigdata__linux_x86_64-linux-gnu.py
65.617 KB
April 25 2025 15:09:38
root / linksafe
0644
_sysconfigdata_d_linux_x86_64-linux-gnu.py
65.6 KB
April 25 2025 15:05:28
root / linksafe
0644
_threading_local.py
7.051 KB
April 25 2025 15:04:20
root / linksafe
0644
_weakrefset.py
5.755 KB
April 25 2025 15:04:20
root / linksafe
0644
abc.py
6.385 KB
April 25 2025 15:04:20
root / linksafe
0644
antigravity.py
0.488 KB
April 25 2025 15:04:21
root / linksafe
0644
argparse.py
99.266 KB
April 25 2025 15:04:26
root / linksafe
0644
ast.py
63.912 KB
April 25 2025 15:04:26
root / linksafe
0644
base64.py
21.136 KB
April 25 2025 15:04:21
root / linksafe
0755
bdb.py
34.515 KB
April 25 2025 15:04:25
root / linksafe
0644
bisect.py
3.343 KB
April 25 2025 15:04:19
root / linksafe
0644
bz2.py
11.688 KB
April 25 2025 15:04:26
root / linksafe
0644
cProfile.py
6.481 KB
April 25 2025 15:04:19
root / linksafe
0755
calendar.py
25.466 KB
April 25 2025 15:04:26
root / linksafe
0644
cmd.py
14.957 KB
April 25 2025 15:04:19
root / linksafe
0644
code.py
12.861 KB
April 25 2025 15:04:21
root / linksafe
0644
codecs.py
36.063 KB
April 25 2025 15:04:21
root / linksafe
0644
codeop.py
5.691 KB
April 25 2025 15:04:20
root / linksafe
0644
colorsys.py
3.967 KB
April 25 2025 15:04:20
root / linksafe
0644
compileall.py
20.181 KB
April 25 2025 15:04:20
root / linksafe
0644
configparser.py
52.512 KB
April 25 2025 15:04:20
root / linksafe
0644
contextlib.py
27.149 KB
April 25 2025 15:04:20
root / linksafe
0644
contextvars.py
0.126 KB
April 25 2025 15:04:26
root / linksafe
0644
copy.py
8.765 KB
April 25 2025 15:04:20
root / linksafe
0644
copyreg.py
7.436 KB
April 25 2025 15:04:26
root / linksafe
0644
csv.py
18.729 KB
April 25 2025 15:04:21
root / linksafe
0644
dataclasses.py
63.032 KB
April 25 2025 15:04:26
root / linksafe
0644
datetime.py
0.262 KB
April 25 2025 15:04:28
root / linksafe
0644
decimal.py
2.732 KB
April 25 2025 15:04:26
root / linksafe
0644
difflib.py
81.414 KB
April 25 2025 15:04:21
root / linksafe
0644
dis.py
40.002 KB
April 25 2025 15:04:21
root / linksafe
0644
doctest.py
106.771 KB
April 25 2025 15:04:21
root / linksafe
0644
enum.py
83.481 KB
April 25 2025 15:04:21
root / linksafe
0644
filecmp.py
10.402 KB
April 25 2025 15:04:20
root / linksafe
0644
fileinput.py
15.349 KB
April 25 2025 15:04:21
root / linksafe
0644
fnmatch.py
6.035 KB
April 25 2025 15:04:20
root / linksafe
0644
fractions.py
39.083 KB
April 25 2025 15:04:19
root / linksafe
0644
ftplib.py
33.921 KB
April 25 2025 15:04:20
root / linksafe
0644
functools.py
38.206 KB
April 25 2025 15:04:28
root / linksafe
0644
genericpath.py
5.836 KB
April 25 2025 15:04:28
root / linksafe
0644
getopt.py
7.313 KB
April 25 2025 15:04:26
root / linksafe
0644
getpass.py
6.087 KB
April 25 2025 15:04:19
root / linksafe
0644
gettext.py
21.029 KB
April 25 2025 15:04:26
root / linksafe
0644
glob.py
19.258 KB
April 25 2025 15:04:20
root / linksafe
0644
graphlib.py
9.422 KB
April 25 2025 15:04:19
root / linksafe
0644
gzip.py
24.056 KB
April 25 2025 15:04:26
root / linksafe
0644
hashlib.py
9.13 KB
April 25 2025 15:04:28
root / linksafe
0644
heapq.py
22.484 KB
April 25 2025 15:04:19
root / linksafe
0644
hmac.py
7.535 KB
April 25 2025 15:04:21
root / linksafe
0644
imaplib.py
52.773 KB
April 25 2025 15:04:26
root / linksafe
0644
inspect.py
124.36 KB
April 25 2025 15:04:25
root / linksafe
0644
io.py
3.498 KB
April 25 2025 15:04:21
root / linksafe
0644
ipaddress.py
79.232 KB
April 25 2025 15:04:26
root / linksafe
0644
keyword.py
1.048 KB
April 25 2025 15:04:26
root / linksafe
0644
linecache.py
7.113 KB
April 25 2025 15:04:21
root / linksafe
0644
locale.py
77.13 KB
April 25 2025 15:04:26
root / linksafe
0644
lzma.py
13.085 KB
April 25 2025 15:04:27
root / linksafe
0644
mailbox.py
79.73 KB
April 25 2025 15:04:25
root / linksafe
0644
mimetypes.py
23.292 KB
April 25 2025 15:04:26
root / linksafe
0644
modulefinder.py
23.234 KB
April 25 2025 15:04:20
root / linksafe
0644
netrc.py
6.76 KB
April 25 2025 15:04:21
root / linksafe
0644
ntpath.py
31.542 KB
April 25 2025 15:04:20
root / linksafe
0644
nturl2path.py
2.318 KB
April 25 2025 15:04:26
root / linksafe
0644
numbers.py
11.198 KB
April 25 2025 15:04:28
root / linksafe
0644
opcode.py
2.759 KB
April 25 2025 15:04:28
root / linksafe
0644
operator.py
10.723 KB
April 25 2025 15:04:26
root / linksafe
0644
optparse.py
58.954 KB
April 25 2025 15:04:26
root / linksafe
0644
os.py
40.623 KB
April 25 2025 15:04:20
root / linksafe
0644
pdb.py
88.807 KB
April 25 2025 15:04:21
root / linksafe
0755
pickle.py
65.388 KB
April 25 2025 15:04:21
root / linksafe
0644
pickletools.py
91.848 KB
April 25 2025 15:04:20
root / linksafe
0644
pkgutil.py
17.853 KB
April 25 2025 15:04:21
root / linksafe
0644
platform.py
46.249 KB
April 25 2025 15:04:21
root / linksafe
0755
plistlib.py
29.096 KB
April 25 2025 15:04:19
root / linksafe
0644
poplib.py
14.262 KB
April 25 2025 15:04:19
root / linksafe
0644
posixpath.py
17.529 KB
April 25 2025 15:04:21
root / linksafe
0644
pprint.py
23.592 KB
April 25 2025 15:04:21
root / linksafe
0644
profile.py
22.61 KB
April 25 2025 15:04:21
root / linksafe
0755
pstats.py
28.609 KB
April 25 2025 15:04:20
root / linksafe
0644
pty.py
5.993 KB
April 25 2025 15:04:19
root / linksafe
0644
py_compile.py
7.653 KB
April 25 2025 15:04:26
root / linksafe
0644
pyclbr.py
11.129 KB
April 25 2025 15:04:19
root / linksafe
0644
pydoc.py
107.493 KB
April 25 2025 15:04:21
root / linksafe
0755
queue.py
13.165 KB
April 25 2025 15:04:26
root / linksafe
0644
quopri.py
7.028 KB
April 25 2025 15:04:26
root / linksafe
0755
random.py
36.139 KB
April 25 2025 15:04:19
root / linksafe
0644
reprlib.py
7.023 KB
April 25 2025 15:04:21
root / linksafe
0644
rlcompleter.py
7.732 KB
April 25 2025 15:04:28
root / linksafe
0644
runpy.py
12.583 KB
April 25 2025 15:04:19
root / linksafe
0644
sched.py
6.202 KB
April 25 2025 15:04:26
root / linksafe
0644
secrets.py
1.938 KB
April 25 2025 15:04:21
root / linksafe
0644
selectors.py
19.001 KB
April 25 2025 15:04:21
root / linksafe
0644
shelve.py
8.604 KB
April 25 2025 15:04:26
root / linksafe
0644
shlex.py
13.04 KB
April 25 2025 15:04:28
root / linksafe
0644
shutil.py
56.116 KB
April 25 2025 15:04:26
root / linksafe
0644
signal.py
2.437 KB
April 25 2025 15:04:26
root / linksafe
0644
site.py
24.791 KB
April 25 2025 15:04:25
root / linksafe
0644
smtplib.py
42.524 KB
April 25 2025 15:04:20
root / linksafe
0755
socket.py
36.874 KB
April 25 2025 15:04:27
root / linksafe
0644
socketserver.py
27.407 KB
April 25 2025 15:04:28
root / linksafe
0644
sre_compile.py
0.226 KB
April 25 2025 15:04:20
root / linksafe
0644
sre_constants.py
0.227 KB
April 25 2025 15:04:20
root / linksafe
0644
sre_parse.py
0.224 KB
April 25 2025 15:04:21
root / linksafe
0644
ssl.py
51.471 KB
April 25 2025 15:04:26
root / linksafe
0644
stat.py
6.003 KB
April 25 2025 15:04:26
root / linksafe
0644
statistics.py
60.382 KB
April 25 2025 15:04:21
root / linksafe
0644
string.py
11.51 KB
April 25 2025 15:04:26
root / linksafe
0644
stringprep.py
12.614 KB
April 25 2025 15:04:21
root / linksafe
0644
struct.py
0.251 KB
April 25 2025 15:04:21
root / linksafe
0644
subprocess.py
87.146 KB
April 25 2025 15:04:19
root / linksafe
0644
symtable.py
13.874 KB
April 25 2025 15:04:26
root / linksafe
0644
tabnanny.py
11.274 KB
April 25 2025 15:04:26
root / linksafe
0755
tarfile.py
107.496 KB
April 25 2025 15:04:21
root / linksafe
0755
tempfile.py
31.607 KB
April 25 2025 15:04:19
root / linksafe
0644
textwrap.py
19.472 KB
April 25 2025 15:04:20
root / linksafe
0644
this.py
0.979 KB
April 25 2025 15:04:21
root / linksafe
0644
threading.py
53.874 KB
April 25 2025 15:04:26
root / linksafe
0644
timeit.py
13.161 KB
April 25 2025 15:04:21
root / linksafe
0755
token.py
2.431 KB
April 25 2025 15:04:20
root / linksafe
0644
tokenize.py
21.063 KB
April 25 2025 15:04:26
root / linksafe
0644
trace.py
29.031 KB
April 25 2025 15:04:19
root / linksafe
0755
traceback.py
64.313 KB
April 25 2025 15:04:26
root / linksafe
0644
tracemalloc.py
17.624 KB
April 25 2025 15:04:26
root / linksafe
0644
tty.py
1.987 KB
April 25 2025 15:04:19
root / linksafe
0644
types.py
10.944 KB
April 25 2025 15:04:19
root / linksafe
0644
typing.py
129.607 KB
April 25 2025 15:04:26
root / linksafe
0644
uuid.py
28.458 KB
April 25 2025 15:04:21
root / linksafe
0644
warnings.py
26.316 KB
April 25 2025 15:04:21
root / linksafe
0644
wave.py
22.691 KB
April 25 2025 15:04:20
root / linksafe
0644
weakref.py
21.009 KB
April 25 2025 15:04:26
root / linksafe
0644
webbrowser.py
23.729 KB
April 25 2025 15:04:26
root / linksafe
0755
zipapp.py
8.416 KB
April 25 2025 15:04:21
root / linksafe
0644
zipimport.py
32.119 KB
April 25 2025 15:04:26
root / linksafe
0644

GRAYBYTE WORDPRESS FILE MANAGER @ 2025
CONTACT ME
Static GIF