OXIESEC PANEL
- Current Dir:
/
/
usr
/
lib
/
python3.6
/
lib2to3
/
pgen2
Server IP: 139.59.38.164
Upload:
Create Dir:
Name
Size
Modified
Perms
📁
..
-
05/09/2024 06:58:00 AM
rwxr-xr-x
📄
__init__.py
143 bytes
10/28/2019 04:30:34 PM
rw-r--r--
📁
__pycache__
-
05/09/2024 06:58:00 AM
rwxr-xr-x
📄
conv.py
9.42 KB
10/28/2019 04:30:34 PM
rw-r--r--
📄
driver.py
6.09 KB
10/28/2019 04:30:34 PM
rw-r--r--
📄
grammar.py
6.43 KB
10/28/2019 04:30:34 PM
rw-r--r--
📄
literals.py
1.58 KB
10/28/2019 04:30:34 PM
rw-r--r--
📄
parse.py
7.86 KB
10/28/2019 04:30:34 PM
rw-r--r--
📄
pgen.py
13.49 KB
10/28/2019 04:30:34 PM
rw-r--r--
📄
token.py
1.26 KB
10/28/2019 04:30:34 PM
rwxr-xr-x
📄
tokenize.py
22.08 KB
10/28/2019 04:30:34 PM
rw-r--r--
Editing: literals.py
Close
# Copyright 2004-2005 Elemental Security, Inc. All Rights Reserved. # Licensed to PSF under a Contributor Agreement. """Safely evaluate Python string literals without using eval().""" import re simple_escapes = {"a": "\a", "b": "\b", "f": "\f", "n": "\n", "r": "\r", "t": "\t", "v": "\v", "'": "'", '"': '"', "\\": "\\"} def escape(m): all, tail = m.group(0, 1) assert all.startswith("\\") esc = simple_escapes.get(tail) if esc is not None: return esc if tail.startswith("x"): hexes = tail[1:] if len(hexes) < 2: raise ValueError("invalid hex string escape ('\\%s')" % tail) try: i = int(hexes, 16) except ValueError: raise ValueError("invalid hex string escape ('\\%s')" % tail) else: try: i = int(tail, 8) except ValueError: raise ValueError("invalid octal string escape ('\\%s')" % tail) return chr(i) def evalString(s): assert s.startswith("'") or s.startswith('"'), repr(s[:1]) q = s[0] if s[:3] == q*3: q = q*3 assert s.endswith(q), repr(s[-len(q):]) assert len(s) >= 2*len(q) s = s[len(q):-len(q)] return re.sub(r"\\(\'|\"|\\|[abfnrtv]|x.{0,2}|[0-7]{1,3})", escape, s) def test(): for i in range(256): c = chr(i) s = repr(c) e = evalString(s) if e != c: print(i, c, s, e) if __name__ == "__main__": test()