Python pty.STDERR_FILENO Examples
The following are 3
code examples of pty.STDERR_FILENO().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
pty
, or try the search function
.
Example #1
Source File: __init__.py From camr with GNU General Public License v2.0 | 5 votes |
def __fork_pty(self): '''This implements a substitute for the forkpty system call. This should be more portable than the pty.fork() function. Specifically, this should work on Solaris. Modified 10.06.05 by Geoff Marshall: Implemented __fork_pty() method to resolve the issue with Python's pty.fork() not supporting Solaris, particularly ssh. Based on patch to posixmodule.c authored by Noah Spurrier:: http://mail.python.org/pipermail/python-dev/2003-May/035281.html ''' parent_fd, child_fd = os.openpty() if parent_fd < 0 or child_fd < 0: raise ExceptionPexpect("Could not open with os.openpty().") pid = os.fork() if pid == pty.CHILD: # Child. os.close(parent_fd) self.__pty_make_controlling_tty(child_fd) os.dup2(child_fd, self.STDIN_FILENO) os.dup2(child_fd, self.STDOUT_FILENO) os.dup2(child_fd, self.STDERR_FILENO) else: # Parent. os.close(child_fd) return pid, parent_fd
Example #2
Source File: sandbox.py From jd4 with GNU Affero General Public License v3.0 | 5 votes |
def _handle_compile(compiler_file, compiler_args, output_file, cgroup_file): pid = fork() if not pid: chdir('/out') os_close(STDIN_FILENO) if output_file: fd = os_open(output_file, O_WRONLY) dup2(fd, STDOUT_FILENO) dup2(fd, STDERR_FILENO) os_close(fd) if cgroup_file: enter_cgroup(cgroup_file) execve(compiler_file, compiler_args, SPAWN_ENV) return wait_and_reap_zombies(pid)
Example #3
Source File: sandbox.py From jd4 with GNU Affero General Public License v3.0 | 5 votes |
def _handle_execute(execute_file, execute_args, stdin_file, stdout_file, stderr_file, extra_file, cgroup_file): pid = fork() if not pid: chdir('/in/package') if stdin_file: fd = os_open(stdin_file, O_RDONLY) dup2(fd, STDIN_FILENO) os_close(fd) if stdout_file: fd = os_open(stdout_file, O_WRONLY) dup2(fd, STDOUT_FILENO) os_close(fd) if stderr_file: fd = os_open(stderr_file, O_WRONLY) dup2(fd, STDERR_FILENO) os_close(fd) if extra_file: fd = os_open(extra_file, O_RDONLY) if fd == EXTRA_FILENO: set_inheritable(fd, True) else: dup2(fd, EXTRA_FILENO) os_close(fd) if cgroup_file: enter_cgroup(cgroup_file) execve(execute_file, execute_args, SPAWN_ENV) return wait_and_reap_zombies(pid)