[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[gpsd-commit-watch] [SCM] GPSD branch, master, updated. release-3.11-330
From: |
Eric S. Raymond |
Subject: |
[gpsd-commit-watch] [SCM] GPSD branch, master, updated. release-3.11-330-g6ee9556 |
Date: |
Sat, 31 Jan 2015 20:22:38 +0000 |
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GPSD".
The branch, master has been updated
via 6ee9556f2fea231303a488f07a8b0e0a9f552dc4 (commit)
from 2bab8b2a7f810a4a430def430cbae80d74c572c6 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 6ee9556f2fea231303a488f07a8b0e0a9f552dc4
Author: Eric S. Raymond <address@hidden>
Date: Sat Jan 31 15:16:55 2015 -0500
Back out the attempt to use VTIME.
According to Matthias Drochner at
http://lists.lysator.liu.se/pipermail/lsh-bugs/2003q4/000151.html:
I thought I'd give lsh a try, just to see how it compares to openssh...
The client didn't work well on NetBSD, got a message like "unexpected
EWOULDBLOCK" on each keystroke.
Looked a bit deeper and found that stdin is set to O_NONBLOCK and
a raw tty mode with c_cc[VMIN] > 1 and c_cc[VTIME] > 0.
I'll append a little test program which does the same. I've tried
it on 3 operating systems (Linux, NetBSD, Digital UNIX), and it
behaves differently on each:
-on Linux, if a key is pressed, the read returns immediately with
that one character
-on NetBSD, the read returns with no data but EWOULDBLOCK
-on D'UNIX, the poll() doesn't teturn before 4 keypresses are done;
the read() returns these 4 characters
Indeed, in SUSv2's termios page is a sentence which says that if
both O_NONBLOCK and VTIME>0 are set, the behaviour is more or less
undefined.
I've solved my immediate problems by setting VMIN to 1 instead of 4
in unix_interact.c:do_make_raw(), but VTIME is still pointless,
so I wouldn't call this a clean solution.
All regression tests pass.
-----------------------------------------------------------------------
Summary of changes:
driver_evermore.c | 1 -
driver_garmin.c | 3 --
driver_geostar.c | 1 -
driver_italk.c | 1 -
driver_navcom.c | 1 -
driver_nmea2000.c | 1 -
driver_oncore.c | 1 -
driver_proto.c | 2 -
driver_sirf.c | 1 -
driver_superstar2.c | 1 -
driver_tsip.c | 1 -
driver_ubx.c | 1 -
driver_zodiac.c | 1 -
drivers.c | 19 --------------
gpsd.h-tail | 2 -
gpsdecode.c | 2 +-
libgpsd_core.c | 3 --
serial.c | 69 +++++++++-----------------------------------------
18 files changed, 14 insertions(+), 97 deletions(-)
hooks/post-receive
--
GPSD
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [gpsd-commit-watch] [SCM] GPSD branch, master, updated. release-3.11-330-g6ee9556,
Eric S. Raymond <=