gpsd-commit-watch
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[gpsd-commit-watch] [SCM] GPSD branch, master, updated. release-3.11-344


From: Eric S. Raymond
Subject: [gpsd-commit-watch] [SCM] GPSD branch, master, updated. release-3.11-344-gef39b1c
Date: Mon, 02 Feb 2015 17:24:52 +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  ef39b1cd848a006751b1d30c931056a5790e3116 (commit)
       via  4ef555df8055cf12f23530e18e3bfdd51d20e26f (commit)
       via  819093f0604d6cf3a2c08f2baff328543e32afe2 (commit)
      from  6f16b7ffd45d933e8ad6916d5bad17140384e69c (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 ef39b1cd848a006751b1d30c931056a5790e3116
Author: Eric S. Raymond <address@hidden>
Date:   Mon Feb 2 12:23:29 2015 -0500

    Now we open with nonblock, set CLOCAL, and then turn off nonblock.
    
    All regression tests pass.

commit 4ef555df8055cf12f23530e18e3bfdd51d20e26f
Author: Eric S. Raymond <address@hidden>
Date:   Mon Feb 2 11:58:13 2015 -0500

    O_NONBLOCK was causing more grief than we knew.  We don't need VTIME!
    
    All regression tests pass.

commit 819093f0604d6cf3a2c08f2baff328543e32afe2
Author: Eric S. Raymond <address@hidden>
Date:   Mon Feb 2 08:53:44 2015 -0500

    Revert mistaken use of CLOCAL in open(2).
    
    All regression tests pass.
    
    Hal Murray thinks we should be opening the device, setting CLOCAL with
    tcsetattr() , closing it, and reopening.  This is a good idea in
    principle but doing it right will require serious preparatory surgery
    on the serial.c code.
    
    According to StackOverflow, the specific thing CLOCAL does is disable 
signaling
    the process on CD drop.
    
    The Modem HOWTO says this:
    
    Normally a CD (Carrier Detect) signal (on the CD wire for an external
    modem) is [not] required before a serial port can be opened. But if stty has
    negated clocal (-clocal), then the port requires CD raised for the
    port to open and remain open. Actually, a skilled programmer can write
    the program in such a way as to force the port to open even when CD
    and clocal say not to. So if stty shows -clocal then there might be a
    problem with opening the port. But for dial-in, in some cases you may
    want -clocal so that when the remote modem stops sending a carrier and
    CD drops, the port will close and terminate all processes running on
    it.
    
    The above is internally inconsistent without the inserted "not".
    
    The Gnu C library documentation says:
    
    Macro: tcflag_t CLOCAL
    
        If this bit is set, it indicates that the terminal is connected
        "locally" and that the modem status lines (such as carrier detect)
        should be ignored.
    
        On many systems if this bit is not set and you call open without
        the O_NONBLOCK flag set, open blocks until a modem connection is
        established.
    
        If this bit is not set and a modem disconnect is detected, a
        SIGHUP signal is sent to the controlling process group for the
        terminal (if it has one). Normally, this causes the process to
        exit; see 24. Signal Handling. Reading from the terminal after a
        disconnect causes an end-of-file condition, and writing causes an
        EIO error to be returned. The terminal device must be closed and
        reopened to clear the condition.

-----------------------------------------------------------------------

Summary of changes:
 serial.c |   21 ++++++++++++++++-----
 1 files changed, 16 insertions(+), 5 deletions(-)


hooks/post-receive
-- 
GPSD



reply via email to

[Prev in Thread] Current Thread [Next in Thread]