OXIESEC PANEL
- Current Dir:
/
/
snap
/
core24
/
988
/
usr
/
lib
/
python3.12
/
encodings
Server IP: 139.59.38.164
Upload:
Create Dir:
Name
Size
Modified
Perms
📁
..
-
05/04/2025 04:37:50 PM
rwxr-xr-x
📄
__init__.py
5.75 KB
02/04/2025 02:48:35 PM
rw-r--r--
📁
__pycache__
-
05/04/2025 04:37:50 PM
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: utf_8_sig.py
Close
""" Python 'utf-8-sig' Codec This work similar to UTF-8 with the following changes: * On encoding/writing a UTF-8 encoded BOM will be prepended/written as the first three bytes. * On decoding/reading if the first three bytes are a UTF-8 encoded BOM, these bytes will be skipped. """ import codecs ### Codec APIs def encode(input, errors='strict'): return (codecs.BOM_UTF8 + codecs.utf_8_encode(input, errors)[0], len(input)) def decode(input, errors='strict'): prefix = 0 if input[:3] == codecs.BOM_UTF8: input = input[3:] prefix = 3 (output, consumed) = codecs.utf_8_decode(input, errors, True) return (output, consumed+prefix) class IncrementalEncoder(codecs.IncrementalEncoder): def __init__(self, errors='strict'): codecs.IncrementalEncoder.__init__(self, errors) self.first = 1 def encode(self, input, final=False): if self.first: self.first = 0 return codecs.BOM_UTF8 + \ codecs.utf_8_encode(input, self.errors)[0] else: return codecs.utf_8_encode(input, self.errors)[0] def reset(self): codecs.IncrementalEncoder.reset(self) self.first = 1 def getstate(self): return self.first def setstate(self, state): self.first = state class IncrementalDecoder(codecs.BufferedIncrementalDecoder): def __init__(self, errors='strict'): codecs.BufferedIncrementalDecoder.__init__(self, errors) self.first = 1 def _buffer_decode(self, input, errors, final): if self.first: if len(input) < 3: if codecs.BOM_UTF8.startswith(input): # not enough data to decide if this really is a BOM # => try again on the next call return ("", 0) else: self.first = 0 else: self.first = 0 if input[:3] == codecs.BOM_UTF8: (output, consumed) = \ codecs.utf_8_decode(input[3:], errors, final) return (output, consumed+3) return codecs.utf_8_decode(input, errors, final) def reset(self): codecs.BufferedIncrementalDecoder.reset(self) self.first = 1 def getstate(self): state = codecs.BufferedIncrementalDecoder.getstate(self) # state[1] must be 0 here, as it isn't passed along to the caller return (state[0], self.first) def setstate(self, state): # state[1] will be ignored by BufferedIncrementalDecoder.setstate() codecs.BufferedIncrementalDecoder.setstate(self, state) self.first = state[1] class StreamWriter(codecs.StreamWriter): def reset(self): codecs.StreamWriter.reset(self) try: del self.encode except AttributeError: pass def encode(self, input, errors='strict'): self.encode = codecs.utf_8_encode return encode(input, errors) class StreamReader(codecs.StreamReader): def reset(self): codecs.StreamReader.reset(self) try: del self.decode except AttributeError: pass def decode(self, input, errors='strict'): if len(input) < 3: if codecs.BOM_UTF8.startswith(input): # not enough data to decide if this is a BOM # => try again on the next call return ("", 0) elif input[:3] == codecs.BOM_UTF8: self.decode = codecs.utf_8_decode (output, consumed) = codecs.utf_8_decode(input[3:],errors) return (output, consumed+3) # (else) no BOM present self.decode = codecs.utf_8_decode return codecs.utf_8_decode(input, errors) ### encodings module API def getregentry(): return codecs.CodecInfo( name='utf-8-sig', encode=encode, decode=decode, incrementalencoder=IncrementalEncoder, incrementaldecoder=IncrementalDecoder, streamreader=StreamReader, streamwriter=StreamWriter, )