Bug 10464 – Please add forkpty() to std.process

Status
RESOLVED
Resolution
INVALID
Severity
enhancement
Priority
P2
Component
phobos
Product
D
Version
D2
Platform
All
OS
Linux
Creation time
2013-06-24T12:21:00Z
Last change time
2014-11-04T10:18:25Z
Assigned to
bugzilla
Creator
kevin.lamonte

Comments

Comment #0 by kevin.lamonte — 2013-06-24T12:21:48Z
None of the shell primitives in std.process allocate a TTY, making it sometimes difficult to automate some applications or to implement a terminal emulator. Potential API solutions: 1. Add Redirect.TTY: when set, use forkpty() instead of fork() in the existing pipeProcess()/pipeShell(). 2. Add pipeTTY().
Comment #1 by bugzilla — 2013-07-28T07:19:42Z
forkpty() is a BSD function, not a standard POSIX function, so I don't see how this can be done in a cross-platform manner.
Comment #2 by kevin.lamonte — 2014-08-25T12:02:24Z
It may be a BSD function, but it is supported in glibc (with -lutil). Every POSIX platform in the DMD downloads page (FreeBSD, Mac, Linux) has forkpty. Which other ones should we be concerned about?
Comment #3 by kevin.lamonte — 2014-11-04T10:18:25Z
Cancelling this request.