✘✘ 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.216.52
𝗢𝗣𝗧𝗜𝗢𝗡𝗦 ♯ CRL ♯➤ 𝗢𝗞 ┃ WGT ♯➤ 𝗢𝗞 ┃ SDO ♯➤ 𝗢𝗙𝗙 ┃ PKEX ♯➤ 𝗢𝗙𝗙
𝗗𝗘𝗔𝗖𝗧𝗜𝗩𝗔𝗧𝗘𝗗 ♯➤ 𝗔𝗟𝗟 𝗪𝗢𝗥𝗞𝗜𝗡𝗚....

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

import importlib.metadata
import itertools
import string
from typing import Dict, List, Tuple


def _tuple_from_text(version: str) -> Tuple:
    text_parts = version.split(".")
    int_parts = []
    for text_part in text_parts:
        digit_prefix = "".join(
            itertools.takewhile(lambda x: x in string.digits, text_part)
        )
        try:
            int_parts.append(int(digit_prefix))
        except Exception:
            break
    return tuple(int_parts)


def _version_check(
    requirement: str,
) -> bool:
    """Is the requirement fulfilled?

    The requirement must be of the form

        package>=version
    """
    package, minimum = requirement.split(">=")
    try:
        version = importlib.metadata.version(package)
        # This shouldn't happen, but it apparently can.
        if version is None:
            return False
    except Exception:
        return False
    t_version = _tuple_from_text(version)
    t_minimum = _tuple_from_text(minimum)
    if t_version < t_minimum:
        return False
    return True


_cache: Dict[str, bool] = {}


def have(feature: str) -> bool:
    """Is *feature* available?

    This tests if all optional packages needed for the
    feature are available and recent enough.

    Returns ``True`` if the feature is available,
    and ``False`` if it is not or if metadata is
    missing.
    """
    value = _cache.get(feature)
    if value is not None:
        return value
    requirements = _requirements.get(feature)
    if requirements is None:
        # we make a cache entry here for consistency not performance
        _cache[feature] = False
        return False
    ok = True
    for requirement in requirements:
        if not _version_check(requirement):
            ok = False
            break
    _cache[feature] = ok
    return ok


def force(feature: str, enabled: bool) -> None:
    """Force the status of *feature* to be *enabled*.

    This method is provided as a workaround for any cases
    where importlib.metadata is ineffective, or for testing.
    """
    _cache[feature] = enabled


_requirements: Dict[str, List[str]] = {
    ### BEGIN generated requirements
    "dnssec": ["cryptography>=43"],
    "doh": ["httpcore>=1.0.0", "httpx>=0.26.0", "h2>=4.1.0"],
    "doq": ["aioquic>=1.0.0"],
    "idna": ["idna>=3.7"],
    "trio": ["trio>=0.23"],
    "wmi": ["wmi>=1.5.1"],
    ### END generated requirements
}


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