tty.open() returns stream instead of slaveFD
Also is run in its own session.
This commit is contained in:
parent
202dd8387f
commit
1f38046b51
15
lib/tty.js
15
lib/tty.js
@ -10,17 +10,26 @@ exports.getColumns = binding.getColumns;
|
|||||||
exports.open = function(path, args) {
|
exports.open = function(path, args) {
|
||||||
var fds = binding.openpty();
|
var fds = binding.openpty();
|
||||||
|
|
||||||
var masterFD = fds[1];
|
|
||||||
var slaveFD = fds[0];
|
var slaveFD = fds[0];
|
||||||
|
var masterFD = fds[1];
|
||||||
|
|
||||||
var env = { TERM: 'vt100' };
|
var env = { TERM: 'vt100' };
|
||||||
for (var k in process.env) {
|
for (var k in process.env) {
|
||||||
env[k] = process.env[k];
|
env[k] = process.env[k];
|
||||||
}
|
}
|
||||||
|
|
||||||
child = spawn(path, args, env, [masterFD, masterFD, masterFD]);
|
var stream = require('net').Stream(slaveFD);
|
||||||
|
stream.readable = stream.writable = true;
|
||||||
|
stream.resume();
|
||||||
|
|
||||||
return [slaveFD, child];
|
|
||||||
|
child = spawn(path, args, {
|
||||||
|
env: env,
|
||||||
|
customFds: [masterFD, masterFD, masterFD],
|
||||||
|
setuid: true
|
||||||
|
});
|
||||||
|
|
||||||
|
return [stream, child];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user