✘✘ GRAYBYTE WORDPRESS FILE MANAGER ✘✘

​🇳​​🇦​​🇲​​🇪♯➤ server366.web-hosting.com ​🇻​♯➤ 4.18.0-553.50.1.lve.el8.x86_64 #1 SMP 🇾​♯➤ 2025

𝗛𝗢𝗠𝗘 𝗜𝗗 ♯➤ 67.223.118.204 ♯➤ 𝗔𝗗𝗠𝗜𝗡 𝗜𝗗 216.73.217.86
𝗢𝗣𝗧𝗜𝗢𝗡𝗦 ♯ CRL ♯➤ 𝗢𝗞 ┃ WGT ♯➤ 𝗢𝗞 ┃ SDO ♯➤ 𝗢𝗙𝗙 ┃ PKEX ♯➤ 𝗢𝗙𝗙
𝗗𝗘𝗔𝗖𝗧𝗜𝗩𝗔𝗧𝗘𝗗 ♯➤ 𝗔𝗟𝗟 𝗪𝗢𝗥𝗞𝗜𝗡𝗚....

𝗛𝗢𝗠𝗘
𝗖𝗨𝗥𝗥𝗘𝗡𝗧 𝗙𝗜𝗟𝗘 : /opt/hc_python/lib/python3.12/site-packages/dns//entropy.py
# Copyright (C) Dnspython Contributors, see LICENSE for text of ISC license

# Copyright (C) 2009-2017 Nominum, Inc.
#
# Permission to use, copy, modify, and distribute this software and its
# documentation for any purpose with or without fee is hereby granted,
# provided that the above copyright notice and this permission notice
# appear in all copies.
#
# THE SOFTWARE IS PROVIDED "AS IS" AND NOMINUM DISCLAIMS ALL WARRANTIES
# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL NOMINUM BE LIABLE FOR
# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.

import hashlib
import os
import random
import threading
import time
from typing import Any, Optional


class EntropyPool:
    # This is an entropy pool for Python implementations that do not
    # have a working SystemRandom.  I'm not sure there are any, but
    # leaving this code doesn't hurt anything as the library code
    # is used if present.

    def __init__(self, seed: Optional[bytes] = None):
        self.pool_index = 0
        self.digest: Optional[bytearray] = None
        self.next_byte = 0
        self.lock = threading.Lock()
        self.hash = hashlib.sha1()
        self.hash_len = 20
        self.pool = bytearray(b"\0" * self.hash_len)
        if seed is not None:
            self._stir(seed)
            self.seeded = True
            self.seed_pid = os.getpid()
        else:
            self.seeded = False
            self.seed_pid = 0

    def _stir(self, entropy: bytes) -> None:
        for c in entropy:
            if self.pool_index == self.hash_len:
                self.pool_index = 0
            b = c & 0xFF
            self.pool[self.pool_index] ^= b
            self.pool_index += 1

    def stir(self, entropy: bytes) -> None:
        with self.lock:
            self._stir(entropy)

    def _maybe_seed(self) -> None:
        if not self.seeded or self.seed_pid != os.getpid():
            try:
                seed = os.urandom(16)
            except Exception:  # pragma: no cover
                try:
                    with open("/dev/urandom", "rb", 0) as r:
                        seed = r.read(16)
                except Exception:
                    seed = str(time.time()).encode()
            self.seeded = True
            self.seed_pid = os.getpid()
            self.digest = None
            seed = bytearray(seed)
            self._stir(seed)

    def random_8(self) -> int:
        with self.lock:
            self._maybe_seed()
            if self.digest is None or self.next_byte == self.hash_len:
                self.hash.update(bytes(self.pool))
                self.digest = bytearray(self.hash.digest())
                self._stir(self.digest)
                self.next_byte = 0
            value = self.digest[self.next_byte]
            self.next_byte += 1
        return value

    def random_16(self) -> int:
        return self.random_8() * 256 + self.random_8()

    def random_32(self) -> int:
        return self.random_16() * 65536 + self.random_16()

    def random_between(self, first: int, last: int) -> int:
        size = last - first + 1
        if size > 4294967296:
            raise ValueError("too big")
        if size > 65536:
            rand = self.random_32
            max = 4294967295
        elif size > 256:
            rand = self.random_16
            max = 65535
        else:
            rand = self.random_8
            max = 255
        return first + size * rand() // (max + 1)


pool = EntropyPool()

system_random: Optional[Any]
try:
    system_random = random.SystemRandom()
except Exception:  # pragma: no cover
    system_random = None


def random_16() -> int:
    if system_random is not None:
        return system_random.randrange(0, 65536)
    else:
        return pool.random_16()


def between(first: int, last: int) -> int:
    if system_random is not None:
        return system_random.randrange(first, last + 1)
    else:
        return pool.random_between(first, last)


Current_dir [ 𝗡𝗢𝗧 𝗪𝗥𝗜𝗧𝗘𝗔𝗕𝗟𝗘 ] Document_root [ 𝗪𝗥𝗜𝗧𝗘𝗔𝗕𝗟𝗘 ]


[ Back ]
𝗡𝗔𝗠𝗘
𝗦𝗜𝗭𝗘
𝗟𝗔𝗦𝗧 𝗧𝗢𝗨𝗖𝗛
𝗨𝗦𝗘𝗥
𝗦𝗧𝗔𝗧𝗨𝗦
𝗙𝗨𝗡𝗖𝗧𝗜𝗢𝗡𝗦
..
--
11 Jun 2026 5.00 AM
root / root
0755
__pycache__
--
12 May 2025 12.34 PM
root / root
0755
dnssecalgs
--
12 May 2025 12.34 PM
root / root
0755
quic
--
12 May 2025 12.34 PM
root / root
0755
rdtypes
--
12 May 2025 12.34 PM
root / root
0755
__init__.py
1.624 KB
12 May 2025 12.34 PM
root / root
0644
_asyncbackend.py
2.34 KB
12 May 2025 12.34 PM
root / root
0644
_asyncio_backend.py
8.839 KB
12 May 2025 12.34 PM
root / root
0644
_ddr.py
5.124 KB
12 May 2025 12.34 PM
root / root
0644
_features.py
2.434 KB
12 May 2025 12.34 PM
root / root
0644
_immutable_ctx.py
2.401 KB
12 May 2025 12.34 PM
root / root
0644
_trio_backend.py
8.274 KB
12 May 2025 12.34 PM
root / root
0644
asyncbackend.py
2.73 KB
12 May 2025 12.34 PM
root / root
0644
asyncquery.py
30.099 KB
12 May 2025 12.34 PM
root / root
0644
asyncresolver.py
17.434 KB
12 May 2025 12.34 PM
root / root
0644
dnssec.py
40.739 KB
12 May 2025 12.34 PM
root / root
0644
dnssectypes.py
1.757 KB
12 May 2025 12.34 PM
root / root
0644
e164.py
3.885 KB
12 May 2025 12.34 PM
root / root
0644
edns.py
16.688 KB
12 May 2025 12.34 PM
root / root
0644
entropy.py
4.143 KB
12 May 2025 12.34 PM
root / root
0644
enum.py
3.604 KB
12 May 2025 12.34 PM
root / root
0644
exception.py
5.813 KB
12 May 2025 12.34 PM
root / root
0644
flags.py
2.686 KB
12 May 2025 12.34 PM
root / root
0644
grange.py
2.094 KB
12 May 2025 12.34 PM
root / root
0644
immutable.py
1.97 KB
12 May 2025 12.34 PM
root / root
0644
inet.py
5.637 KB
12 May 2025 12.34 PM
root / root
0644
ipv4.py
2.492 KB
12 May 2025 12.34 PM
root / root
0644
ipv6.py
6.4 KB
12 May 2025 12.34 PM
root / root
0644
message.py
66.587 KB
12 May 2025 12.34 PM
root / root
0644
name.py
41.775 KB
12 May 2025 12.34 PM
root / root
0644
namedict.py
3.906 KB
12 May 2025 12.34 PM
root / root
0644
nameserver.py
9.878 KB
12 May 2025 12.34 PM
root / root
0644
node.py
12.366 KB
12 May 2025 12.34 PM
root / root
0644
opcode.py
2.666 KB
12 May 2025 12.34 PM
root / root
0644
py.typed
0 KB
12 May 2025 12.34 PM
root / root
0644
query.py
54.979 KB
12 May 2025 12.34 PM
root / root
0644
rcode.py
4.059 KB
12 May 2025 12.34 PM
root / root
0644
rdata.py
30.295 KB
12 May 2025 12.34 PM
root / root
0644
rdataclass.py
2.914 KB
12 May 2025 12.34 PM
root / root
0644
rdataset.py
16.273 KB
12 May 2025 12.34 PM
root / root
0644
rdatatype.py
7.273 KB
12 May 2025 12.34 PM
root / root
0644
renderer.py
10.99 KB
12 May 2025 12.34 PM
root / root
0644
resolver.py
72.002 KB
12 May 2025 12.34 PM
root / root
0644
reversename.py
3.738 KB
12 May 2025 12.34 PM
root / root
0644
rrset.py
8.955 KB
12 May 2025 12.34 PM
root / root
0644
serial.py
3.521 KB
12 May 2025 12.34 PM
root / root
0644
set.py
8.997 KB
12 May 2025 12.34 PM
root / root
0644
tokenizer.py
23.03 KB
12 May 2025 12.34 PM
root / root
0644
transaction.py
22.06 KB
12 May 2025 12.34 PM
root / root
0644
tsig.py
11.146 KB
12 May 2025 12.34 PM
root / root
0644
tsigkeyring.py
2.571 KB
12 May 2025 12.34 PM
root / root
0644
ttl.py
2.907 KB
12 May 2025 12.34 PM
root / root
0644
update.py
11.956 KB
12 May 2025 12.34 PM
root / root
0644
version.py
1.881 KB
12 May 2025 12.34 PM
root / root
0644
versioned.py
11.489 KB
12 May 2025 12.34 PM
root / root
0644
win32util.py
8.666 KB
12 May 2025 12.34 PM
root / root
0644
wire.py
2.764 KB
12 May 2025 12.34 PM
root / root
0644
xfr.py
12.96 KB
12 May 2025 12.34 PM
root / root
0644
zone.py
50.865 KB
12 May 2025 12.34 PM
root / root
0644
zonefile.py
27.271 KB
12 May 2025 12.34 PM
root / root
0644
zonetypes.py
0.674 KB
12 May 2025 12.34 PM
root / root
0644

✘✘ GRAYBYTE WORDPRESS FILE MANAGER @ 2026 CONTACT ME ✘✘
Static GIF Static GIF