OXIESEC PANEL
- Current Dir:
/
/
snap
/
core24
/
888
/
usr
/
lib
/
python3.12
/
encodings
Server IP: 139.59.38.164
Upload:
Create Dir:
Name
Size
Modified
Perms
📁
..
-
03/18/2025 08:12:15 AM
rwxr-xr-x
📄
__init__.py
5.75 KB
02/04/2025 02:48:35 PM
rw-r--r--
📁
__pycache__
-
03/18/2025 08:12:15 AM
rwxr-xr-x
📄
aliases.py
15.31 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
ascii.py
1.22 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
base64_codec.py
1.5 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
big5.py
1019 bytes
02/04/2025 02:48:35 PM
rw-r--r--
📄
big5hkscs.py
1.01 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
bz2_codec.py
2.2 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
charmap.py
2.04 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
cp037.py
12.81 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
cp1006.py
13.25 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
cp1026.py
12.81 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
cp1125.py
33.79 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
cp1140.py
12.8 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
cp1250.py
13.37 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
cp1251.py
13.05 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
cp1252.py
13.19 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
cp1253.py
12.79 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
cp1254.py
13.19 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
cp1255.py
12.17 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
cp1256.py
12.51 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
cp1257.py
13.06 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
cp1258.py
13.05 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
cp273.py
13.8 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
cp424.py
11.77 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
cp437.py
33.75 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
cp500.py
12.81 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
cp720.py
13.37 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
cp737.py
33.87 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
cp775.py
33.67 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
cp850.py
33.31 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
cp852.py
34.18 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
cp855.py
33.06 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
cp856.py
12.13 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
cp857.py
33.11 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
cp858.py
33.22 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
cp860.py
33.87 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
cp861.py
33.82 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
cp862.py
32.59 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
cp863.py
33.45 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
cp864.py
32.87 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
cp865.py
33.81 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
cp866.py
33.59 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
cp869.py
32.19 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
cp874.py
12.3 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
cp875.py
12.55 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
cp932.py
1023 bytes
02/04/2025 02:48:35 PM
rw-r--r--
📄
cp949.py
1023 bytes
02/04/2025 02:48:35 PM
rw-r--r--
📄
cp950.py
1023 bytes
02/04/2025 02:48:35 PM
rw-r--r--
📄
euc_jis_2004.py
1.03 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
euc_jisx0213.py
1.03 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
euc_jp.py
1 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
euc_kr.py
1 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
gb18030.py
1.01 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
gb2312.py
1 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
gbk.py
1015 bytes
02/04/2025 02:48:35 PM
rw-r--r--
📄
hex_codec.py
1.47 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
hp_roman8.py
13.16 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
hz.py
1011 bytes
02/04/2025 02:48:35 PM
rw-r--r--
📄
idna.py
9.48 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
iso2022_jp.py
1.03 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
iso2022_jp_1.py
1.04 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
iso2022_jp_2.py
1.04 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
iso2022_jp_2004.py
1.05 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
iso2022_jp_3.py
1.04 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
iso2022_jp_ext.py
1.04 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
iso2022_kr.py
1.03 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
iso8859_1.py
12.87 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
iso8859_10.py
13.27 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
iso8859_11.py
12.05 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
iso8859_13.py
12.96 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
iso8859_14.py
13.33 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
iso8859_15.py
12.9 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
iso8859_16.py
13.24 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
iso8859_2.py
13.09 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
iso8859_3.py
12.78 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
iso8859_4.py
13.06 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
iso8859_5.py
12.71 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
iso8859_6.py
10.58 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
iso8859_7.py
12.54 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
iso8859_8.py
10.78 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
iso8859_9.py
12.85 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
johab.py
1023 bytes
02/04/2025 02:48:35 PM
rw-r--r--
📄
koi8_r.py
13.46 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
koi8_t.py
12.88 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
koi8_u.py
13.44 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
kz1048.py
13.4 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
latin_1.py
1.23 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
mac_arabic.py
35.61 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
mac_croatian.py
13.31 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
mac_cyrillic.py
13.14 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
mac_farsi.py
14.81 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
mac_greek.py
13.4 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
mac_iceland.py
13.18 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
mac_latin2.py
13.79 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
mac_roman.py
13.16 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
mac_romanian.py
13.34 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
mac_turkish.py
13.2 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
mbcs.py
1.18 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
oem.py
1019 bytes
02/04/2025 02:48:35 PM
rw-r--r--
📄
palmos.py
13.2 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
ptcp154.py
13.69 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
punycode.py
6.72 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
quopri_codec.py
1.49 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
raw_unicode_escape.py
1.3 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
rot_13.py
2.39 KB
02/04/2025 02:48:35 PM
rwxr-xr-x
📄
shift_jis.py
1.01 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
shift_jis_2004.py
1.03 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
shift_jisx0213.py
1.03 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
tis_620.py
12.01 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
undefined.py
1.27 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
unicode_escape.py
1.27 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
utf_16.py
5.11 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
utf_16_be.py
1.01 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
utf_16_le.py
1.01 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
utf_32.py
5.01 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
utf_32_be.py
930 bytes
02/04/2025 02:48:35 PM
rw-r--r--
📄
utf_32_le.py
930 bytes
02/04/2025 02:48:35 PM
rw-r--r--
📄
utf_7.py
946 bytes
02/04/2025 02:48:35 PM
rw-r--r--
📄
utf_8.py
1005 bytes
02/04/2025 02:48:35 PM
rw-r--r--
📄
utf_8_sig.py
4.04 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
uu_codec.py
2.78 KB
02/04/2025 02:48:35 PM
rw-r--r--
📄
zlib_codec.py
2.15 KB
02/04/2025 02:48:35 PM
rw-r--r--
Editing: __init__.py
Close
""" Standard "encodings" Package Standard Python encoding modules are stored in this package directory. Codec modules must have names corresponding to normalized encoding names as defined in the normalize_encoding() function below, e.g. 'utf-8' must be implemented by the module 'utf_8.py'. Each codec module must export the following interface: * getregentry() -> codecs.CodecInfo object The getregentry() API must return a CodecInfo object with encoder, decoder, incrementalencoder, incrementaldecoder, streamwriter and streamreader attributes which adhere to the Python Codec Interface Standard. In addition, a module may optionally also define the following APIs which are then used by the package's codec search function: * getaliases() -> sequence of encoding name strings to use as aliases Alias names returned by getaliases() must be normalized encoding names as defined by normalize_encoding(). Written by Marc-Andre Lemburg (mal@lemburg.com). (c) Copyright CNRI, All Rights Reserved. NO WARRANTY. """#" import codecs import sys from . import aliases _cache = {} _unknown = '--unknown--' _import_tail = ['*'] _aliases = aliases.aliases class CodecRegistryError(LookupError, SystemError): pass def normalize_encoding(encoding): """ Normalize an encoding name. Normalization works as follows: all non-alphanumeric characters except the dot used for Python package names are collapsed and replaced with a single underscore, e.g. ' -;#' becomes '_'. Leading and trailing underscores are removed. Note that encoding names should be ASCII only. """ if isinstance(encoding, bytes): encoding = str(encoding, "ascii") chars = [] punct = False for c in encoding: if c.isalnum() or c == '.': if punct and chars: chars.append('_') if c.isascii(): chars.append(c) punct = False else: punct = True return ''.join(chars) def search_function(encoding): # Cache lookup entry = _cache.get(encoding, _unknown) if entry is not _unknown: return entry # Import the module: # # First try to find an alias for the normalized encoding # name and lookup the module using the aliased name, then try to # lookup the module using the standard import scheme, i.e. first # try in the encodings package, then at top-level. # norm_encoding = normalize_encoding(encoding) aliased_encoding = _aliases.get(norm_encoding) or \ _aliases.get(norm_encoding.replace('.', '_')) if aliased_encoding is not None: modnames = [aliased_encoding, norm_encoding] else: modnames = [norm_encoding] for modname in modnames: if not modname or '.' in modname: continue try: # Import is absolute to prevent the possibly malicious import of a # module with side-effects that is not in the 'encodings' package. mod = __import__('encodings.' + modname, fromlist=_import_tail, level=0) except ImportError: # ImportError may occur because 'encodings.(modname)' does not exist, # or because it imports a name that does not exist (see mbcs and oem) pass else: break else: mod = None try: getregentry = mod.getregentry except AttributeError: # Not a codec module mod = None if mod is None: # Cache misses _cache[encoding] = None return None # Now ask the module for the registry entry entry = getregentry() if not isinstance(entry, codecs.CodecInfo): if not 4 <= len(entry) <= 7: raise CodecRegistryError('module "%s" (%s) failed to register' % (mod.__name__, mod.__file__)) if not callable(entry[0]) or not callable(entry[1]) or \ (entry[2] is not None and not callable(entry[2])) or \ (entry[3] is not None and not callable(entry[3])) or \ (len(entry) > 4 and entry[4] is not None and not callable(entry[4])) or \ (len(entry) > 5 and entry[5] is not None and not callable(entry[5])): raise CodecRegistryError('incompatible codecs in module "%s" (%s)' % (mod.__name__, mod.__file__)) if len(entry)<7 or entry[6] is None: entry += (None,)*(6-len(entry)) + (mod.__name__.split(".", 1)[1],) entry = codecs.CodecInfo(*entry) # Cache the codec registry entry _cache[encoding] = entry # Register its aliases (without overwriting previously registered # aliases) try: codecaliases = mod.getaliases() except AttributeError: pass else: for alias in codecaliases: if alias not in _aliases: _aliases[alias] = modname # Return the registry entry return entry # Register the search_function in the Python codec registry codecs.register(search_function) if sys.platform == 'win32': # bpo-671666, bpo-46668: If Python does not implement a codec for current # Windows ANSI code page, use the "mbcs" codec instead: # WideCharToMultiByte() and MultiByteToWideChar() functions with CP_ACP. # Python does not support custom code pages. def _alias_mbcs(encoding): try: import _winapi ansi_code_page = "cp%s" % _winapi.GetACP() if encoding == ansi_code_page: import encodings.mbcs return encodings.mbcs.getregentry() except ImportError: # Imports may fail while we are shutting down pass codecs.register(_alias_mbcs)