History log of /libuv/src/unix/tty.c (Results 26 – 50 of 66)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
Revision tags: v1.7.4, v1.7.3, v1.7.2, v1.7.1, v1.7.0
# 60fca017 29-Jun-2015 Saúl Ibarra Corretgé

tty: cleanup handle if uv_tty_init fails

Once we are past uv__stream_init, the handle has been added to
loop->handle_queue, it needs to be undone in case of failure.

PR-URL: htt

tty: cleanup handle if uv_tty_init fails

Once we are past uv__stream_init, the handle has been added to
loop->handle_queue, it needs to be undone in case of failure.

PR-URL: https://github.com/libuv/libuv/pull/414
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>

show more ...

Revision tags: v1.6.1, v1.6.0, v1.5.0
# fc9e66e5 11-Mar-2015 Ben Noordhuis

unix: reject non-tty fds in uv_tty_init()

Reject file descriptors that correspond to regular files or char/block
devices. Such file descriptors are incompatible with epoll and trigger

unix: reject non-tty fds in uv_tty_init()

Reject file descriptors that correspond to regular files or char/block
devices. Such file descriptors are incompatible with epoll and trigger
a run-time assert.

Fixes: https://github.com/libuv/libuv/issues/255
PR-URL: https://github.com/libuv/libuv/pull/259
Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>

show more ...

# 1df46fe4 11-Mar-2015 Ben Noordhuis

unix: don't clobber errno in uv_tty_reset_mode()

uv_tty_reset_mode() is designed to be async signal-safe and is therefore
not allowed to clobber errno.

PR-URL: https://github.co

unix: don't clobber errno in uv_tty_reset_mode()

uv_tty_reset_mode() is designed to be async signal-safe and is therefore
not allowed to clobber errno.

PR-URL: https://github.com/libuv/libuv/pull/259
Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>

show more ...

Revision tags: v0.10.36, v1.4.2, v0.10.35, v1.4.1, v0.10.34
# 672b2047 17-Feb-2015 Julien Gilli

tty: fix build for SmartOS

On Solaris derivatives, cfmakeraw is not available. Instead, set the
termios flags manually. The set of flags to use so that the behavior of
the terminal i

tty: fix build for SmartOS

On Solaris derivatives, cfmakeraw is not available. Instead, set the
termios flags manually. The set of flags to use so that the behavior of
the terminal is similar to what it is after a call to cfmakeraw was
taken from
http://www.perkin.org.uk/posts/solaris-portability-cfmakeraw.html.

PR-URL: https://github.com/libuv/libuv/pull/210
Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>

show more ...

Revision tags: v1.4.0, v1.3.0, v0.10.33, v1.2.1
# bb5f5d10 13-Jan-2015 Ben Noordhuis

unix: fix -Wsign-compare warning in tty.c

The mode argument is an enum now and the signedness of an enum is
implementation-defined when it doesn't have negative members.

Cast it

unix: fix -Wsign-compare warning in tty.c

The mode argument is an enum now and the signedness of an enum is
implementation-defined when it doesn't have negative members.

Cast it to int in the comparison to tty->mode because the latter is
still an int.

PR: https://github.com/libuv/libuv/pull/134
Reviewed-by: Saúl Ibarra Corretgé <saghul@gmail.com>

show more ...

# 550147fd 12-Jan-2015 Saúl Ibarra Corretgé

unix: make setting the tty mode to the same value a no-op

Closes #131

PR-URL: https://github.com/libuv/libuv/pull/132
Reviewed-By: Bert Belder <bertbelder@gmail.com>

Revision tags: v1.2.0, v0.10.32
# 025602da 27-Dec-2014 Yuri D'Elia

tty: implement binary I/O terminal mode

Introduce a uv_tty_mode_t enum for uv_tty_set_mode(), with backward
compatible values. Add a new mode UV_TTY_MODE_IO, which uses
cfmakeraw()

tty: implement binary I/O terminal mode

Introduce a uv_tty_mode_t enum for uv_tty_set_mode(), with backward
compatible values. Add a new mode UV_TTY_MODE_IO, which uses
cfmakeraw() internally.

PR-URL: https://github.com/libuv/libuv/pull/86
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>

show more ...

Revision tags: v1.1.0, v0.10.31, v1.0.2, v0.10.30
# 484a3a92 04-Dec-2014 Ben Noordhuis

Revert "unix: use cfmakeraw() for setting raw TTY mode"

This reverts commit 0f25560c8aed4fb9f40120750d0832ac415ce092.

This change was introduced to make it possible to use the TTY f

Revert "unix: use cfmakeraw() for setting raw TTY mode"

This reverts commit 0f25560c8aed4fb9f40120750d0832ac415ce092.

This change was introduced to make it possible to use the TTY for binary
I/O but unfortunately it breaks libuv users that depend on the OPOST and
ONLCR flags, like node.js.

There is no point in adding those flags after the call to cfmakeraw()
because that would once again make the TTY unsuitable for binary I/O.
Let's revert it for now and revisit it again later.

Fixes libuv/libuv#32, reverts joyent/libuv#1567.

PR-URL: https://github.com/libuv/libuv/pull/33
Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>

show more ...

Revision tags: v1.0.1, v1.0.0
# 0f25560c 28-Oct-2014 Yuri D'Elia

unix: use cfmakeraw() for setting raw TTY mode

Revision tags: v0.10.29, v1.0.0-rc2, v1.0.0-rc1, v0.11.29, v0.11.28, v0.11.27, v0.10.28, v0.11.26, v0.10.27, v0.11.25, v0.11.24, v0.11.23, v0.10.26
# 342e8c0d 21-Mar-2014 Saúl Ibarra Corretgé

unix: fallback to blocking writes if reopening a tty fails

In case reopening the file descriptor fails, fallback to the old
behavior where we do blocking writes, to avoid disrupting othe

unix: fallback to blocking writes if reopening a tty fails

In case reopening the file descriptor fails, fallback to the old
behavior where we do blocking writes, to avoid disrupting other
processes potentially using the file descriptor.

show more ...

# 15140ceb 20-Mar-2014 Saúl Ibarra Corretgé

unix: fix handling uv__open_cloexec failure

Revision tags: v0.11.22
# b1975153 07-Mar-2014 Saúl Ibarra Corretgé

unix: reopen tty as /dev/tty

Reopen the file descriptor when it refers to a tty. This lets us put the
tty in non-blocking mode without affecting other processes that share it
with us

unix: reopen tty as /dev/tty

Reopen the file descriptor when it refers to a tty. This lets us put the
tty in non-blocking mode without affecting other processes that share it
with us.

This brings back commit 31f9fbc, which was reverted in 20bb1bf. The OSX
select trick is working now.

Original patch by @bnoordhuis

show more ...

Revision tags: v0.11.21, v0.11.20, v0.10.25, v0.11.19, v0.10.24, v0.11.18, v0.10.23, v0.10.22, v0.11.17, v0.10.21, v0.11.16, v0.10.20, v0.11.15, v0.10.19, v0.11.14, v0.10.18
# 777019b7 18-Oct-2013 Ben Noordhuis

unix: make uv_tty_reset_mode() async signal-safe

Make it possible to call uv_tty_reset_mode() from inside a signal
handler. The primary motivation is to make it possible to restore

unix: make uv_tty_reset_mode() async signal-safe

Make it possible to call uv_tty_reset_mode() from inside a signal
handler. The primary motivation is to make it possible to restore
the TTY from inside a SIGINT or SIGTERM signal handler.

Fixes #954.

show more ...

# 372e9229 18-Oct-2013 Ben Noordhuis

unix: clean up uv_tty_set_mode() a little

Revision tags: v0.10.17, v0.10.16, v0.11.13, v0.11.12, v0.11.11, v0.11.10, v0.10.15, v0.11.9, v0.10.14, v0.11.8, v0.11.7, v0.10.13, v0.11.6, v0.10.12, v0.11.5, v0.10.11
# 3ee4d3f1 06-Jun-2013 Ben Noordhuis

unix, windows: return error codes directly

This commit changes the libuv API to return error codes directly rather
than storing them in a loop-global field.

A code snippet like

unix, windows: return error codes directly

This commit changes the libuv API to return error codes directly rather
than storing them in a loop-global field.

A code snippet like this one:

if (uv_foo(loop) < 0) {
uv_err_t err = uv_last_error(loop);
fprintf(stderr, "%s\n", uv_strerror(err));
}

Should be rewritten like this:

int err = uv_foo(loop);
if (err < 0)
fprintf(stderr, "%s\n", uv_strerror(err));

The rationale for this change is that it should make creating bindings
for other languages a lot easier: dealing with struct return values is
painful with most FFIs and often downright buggy.

show more ...

Revision tags: v0.10.10, v0.11.4, v0.10.9, v0.10.8, v0.11.3, v0.10.7, v0.10.6, v0.11.2, v0.10.5, v0.10.4, v0.11.1, node-v0.11.0, v0.10.2, node-v0.7.3, node-v0.7.7, node-v0.7.5, node-v0.5.3, node-v0.10.1
# b45a74fa 15-Mar-2013 Fedor Indutny

stream: run try_select only for pipes and ttys

Its not necesary for TCP and other streams, since fd is always working
with kqueue there.

# 7b66ea18 14-Mar-2013 Ben Noordhuis

unix: improve uv_guess_handle() implementation

Make it understand FIFOs, character devices and sockets.

Revision tags: node-v0.10.0, node-v0.9.12, node-v0.9.11, node-v0.8.21, node-v0.8.19, node-v0.9.10, node-v0.9.7, node-v0.9.6
# 9aab5d48 11-Jan-2013 Ben Noordhuis

Revert "unix: improve uv_guess_handle() implementation"

This reverts commit 98bcddc8dddb4b85425d846f546e81e8ccf633f8.

It's making a lot of tests in the node.js test suite fail.

Revision tags: node-v0.9.4, node-v0.8.17
# 98bcddc8 09-Dec-2012 Ben Leslie

unix: improve uv_guess_handle() implementation

uv_guess_handle is currently squelching both fifo and all
sockets on to the UV_NAMED_PIPE type. Rather than treating
all sockets as UV_

unix: improve uv_guess_handle() implementation

uv_guess_handle is currently squelching both fifo and all
sockets on to the UV_NAMED_PIPE type. Rather than treating
all sockets as UV_NAMED_PIPE, use getsockopt() and
getsockaddr() to determine if the socket is an AF_UNIX
stream (in which case return UV_NAMED_PIPE), or an AF_INET
stream (in which case return UV_TCP), or an AF_INET datagram
socket (in which case return UV_UDP).

Additionally, currently all other file descriptor types are
squelched to the UV_FILE type. Instead, only file descriptors
that are marked as regular files are treated as UV_FILE. All
other types (such as directories, character and block devices)
are now treated as UV_UNKNOWN_HANDLE.

show more ...

# 5b632858 06-Jan-2013 Ben Noordhuis

unix, windows: ANSI-fy uv_tty_reset_mode() prototype

Revision tags: node-v0.8.15, node-v0.9.3, node-v0.8.12, node-v0.8.10, node-v0.9.2, node-v0.8.9, node-v0.9.1, node-v0.8.8
# 731adaca 16-Aug-2012 Fedor Indutny

unix: use select() for specific fds on OS X

kqueue(2) on osx doesn't work (emits EINVAL error) with specific fds
(i.e. /dev/tty, /dev/null, etc). When given such descriptors - start

unix: use select() for specific fds on OS X

kqueue(2) on osx doesn't work (emits EINVAL error) with specific fds
(i.e. /dev/tty, /dev/null, etc). When given such descriptors - start
select(2) watcher thread that will emit io events.

show more ...

# 1282d648 22-Aug-2012 Ben Noordhuis

unix: remove dependency on libev

# 20bb1bfd 04-Nov-2012 Ben Noordhuis

Revert "unix: reopen tty as /dev/tty"

This reverts commit 31f9fbce6321e2a26ab6d6c2d404aba1a7f161a7.

The reverted commit depends on commit 5da380a ("use select() for specific fds

Revert "unix: reopen tty as /dev/tty"

This reverts commit 31f9fbce6321e2a26ab6d6c2d404aba1a7f161a7.

The reverted commit depends on commit 5da380a ("use select() for specific fds
on OS X") which polls /dev/tty file descriptors in a separate thread to work
around deficiencies in the kqueue API on OS X.

Unfortunately, 5da380a has a bug that effectively makes the select() thread
busy-loop. Revert this commit for now.

show more ...

# 31f9fbce 24-Oct-2012 Ben Noordhuis

unix: reopen tty as /dev/tty

Reopen the file descriptor when it refers to a tty. This lets us put the tty in
non-blocking mode without affecting other processes that share it with us.

unix: reopen tty as /dev/tty

Reopen the file descriptor when it refers to a tty. This lets us put the tty in
non-blocking mode without affecting other processes that share it with us.

Fixes #601.

show more ...

Revision tags: node-v0.8.7
# 837edf4c 09-Aug-2012 Ben Noordhuis

unix, windows: remove handle init counters

Remove the handle init counters, no one uses them.

123