summaryrefslogtreecommitdiff
path: root/gpsmon.c
Commit message (Collapse)AuthorAgeFilesLines
...
* Fix trivial but fatal errors introduced by last commit.Eric S. Raymond2014-08-241-2/+1
| | | | All regtession tests pass. gpsmon works live on GR601-W (with PPS).
* Properly free devices when select() sees bad fds for them.Eric S. Raymond2014-08-241-4/+0
|
* Clean up some FIXMEs. All regression tests pass.Eric S. Raymond2014-08-241-1/+1
|
* Re-integrate Miroslav's support for large PPS offsets.Eric S. Raymond2014-08-221-1/+2
| | | | | | The factoring on this could use some cleanup. All regression tests pass. PPS is live in both gpsd and gpsmon.
* Restore PPS function by backing out Miroslav Lichtvar's last commit.Eric S. Raymond2014-08-211-1/+1
| | | | | | | | It came in way, way out of sequence ansd screwed something up. He may have been fixing some real problem, however. This requures investigation. All regression tests pass.
* splint/cppcheck/coverity cleanup.Eric S. Raymond2014-08-211-0/+2
|
* Fix up argument parsing in gpsmon.Eric S. Raymond2014-08-201-16/+35
| | | | | | Addresses a minor bug report by Michael Tatarinov <kukabu@gmail.com>. Adds the capability, in daemon mode, to watch a specified device rather than all devices.
* Include <sys/select.h> everywhere fd_set us used.Eric S. Raymond2014-08-181-0/+1
| | | | | | | | This came up in connection with Android. According to SuS this shouln't be necessary if sys/time.h was included, but oh well. While we;re at it, rearrange some includes for more consistent order. All regression tests pass.
* Attempt to recover from EBADF in the main select.Eric S. Raymond2014-08-181-0/+8
| | | | All regression tests pass.
* Fix PPS with large offsets.Miroslav Lichvar2014-08-171-1/+1
| | | | | | | | | | | | | | This was broken by commit 575444. The check if the PPS time isn't referenced with an old message time used PPS offset instead of the difference between local PPS time and local time of the last message. The PPS sample was reported via SHM or chrony socket only if the offset was between -1 and 1000001 seconds. Keep the local timestamp of the last fix in struct gps_device_t in addition to the real timestamp and use it to check the PPS delay. Rename the l_offset variable to delay to avoid further confusion. Signed-off-by: Eric S. Raymond <esr@thyrsus.com>
* gpsmon: fix build when nmea is falseSimon Dawson2014-01-031-0/+4
| | | | | | | | | | | | | | | | | When nmea is False and ncurses support is enabled, the build fails as follows. gpsmon.o: In function `gpsmon_hook': gpsmon.c:(.text+0x974): undefined reference to `driver_nmea0183' collect2: error: ld returned 1 exit status scons: *** [gpsmon] Error 1 scons: building terminated because of errors. The problem appears to be a failure to protect use of the driver_nmea0183 variable with appropriate #ifdef guards. Signed-off-by: Simon Dawson <spdawson@gmail.com> Signed-off-by: Eric S. Raymond <esr@thyrsus.com>
* gpsmon: fix build when reconfigure is falseSimon Dawson2014-01-031-0/+4
| | | | | | | | | | | | | | | | | | | When reconfigure is False and ncurses support is enabled, the build fails as follows. gpsmon.o: In function `gpsd_write': gpsmon.c:(.text+0xbbc): undefined reference to `monitor_dump_send' gpsmon.o: In function `main': gpsmon.c:(.text.startup+0xd68): undefined reference to `announce_log' collect2: error: ld returned 1 exit status scons: *** [gpsmon] Error 1 scons: building terminated because of errors. The problem appears to be a failure to protect calls to momnitor_dump_send and announce_log with appropriate #ifdef guards. Signed-off-by: Simon Dawson <spdawson@gmail.com> Signed-off-by: Eric S. Raymond <esr@thyrsus.com>
* Investigating ways to get rid of CLOSE_DELAY in the test framework...Eric S. Raymond2013-11-271-0/+3
| | | | | | | | ...actually revealed a bug - device-shutdown messages getting lost on the way out to the test clients. This set of changes mostly fixes it. Some glitches remain; this state of things passes all regression tests but attempting to get rid of what now ought to be unnecessary code in fake.py does not pass. To be continued...
* Add a licensing answer to the FAQ.Eric S. Raymond2013-11-251-6/+14
|
* Code is now static-checker clean with splint, cppcheck, and Coverity.Eric S. Raymond2013-11-191-2/+2
| | | | All regression tests pass. PPS is live.
* Upgun the gpsmon prompt for Hal Murray's benefit.Eric S. Raymond2013-11-191-10/+25
|
* Trivial fix for Hal Murray's 8N1N1 artifact.Eric S. Raymond2013-11-191-1/+1
|
* Add timeout on wait-for-ACK to SiRF driver.Eric S. Raymond2013-11-191-1/+7
| | | | Correct initialization observed oon SiRF-III. All regression tests pass.
* Coverity annotations.Eric S. Raymond2013-11-181-1/+2
|
* spint annotation fixes. No logic changes.Eric S. Raymond2013-11-181-20/+29
| | | | All regression tests pass, PPS is live.
* Be explicit when PPS is not available because the build used pps=no.Eric S. Raymond2013-11-171-1/+3
|
* PPS offset field now updates properly in gpsmon client mode.Eric S. Raymond2013-11-171-1/+12
|
* Another whack at display flapping. Never reselect the monitor on PPS packets.Eric S. Raymond2013-11-171-3/+3
| | | | All regressuion tests pass, PPS is live in both direct and client gpsmon.
* Stomp a sign-extension bug.Eric S. Raymond2013-11-171-3/+3
|
* Fix up the pps=no build. All regression tests pass.Eric S. Raymond2013-11-171-0/+6
|
* PPs drift is now visible in client-mode JSON...Eric S. Raymond2013-11-171-7/+30
| | | | ...but seems to be stuck on zero. Must figure that out.
* Drastic simplification of gpsmon initialization sequence.Eric S. Raymond2013-11-171-66/+22
| | | | | | | | Client-mode gpsmon now treats the daemon simply as a TCP source. The previous sequence had some weird holes, like an inability to set lexer debug levels. All regression tests pass. PPS is live in gpsd and direct-mode gpsmon.
* Introduce new LOG_CLIENT looging level.Eric S. Raymond2013-11-161-0/+3
|
* gpsmon logging improvementsEric S. Raymond2013-11-161-3/+4
|
* And that fixes the echoing.Eric S. Raymond2013-11-161-3/+7
|
* -a mode now works except for initial character echo.Eric S. Raymond2013-11-161-6/+19
|
* -a mode now stops on input char, but needs some fiddling yet.Eric S. Raymond2013-11-161-4/+13
|
* More splint and pylint cleanups.Eric S. Raymond2013-11-151-9/+11
| | | | All regression tests pass with pps=tru or pps=false, PPS is live.
* Revert "Don't condition out thread locks when PPS disabled..."Eric S. Raymond2013-11-151-14/+30
| | | | scons pps=false check hangs with this change.
* Don't condition out thread locks when PPS disabled, gpsmon will need them.Eric S. Raymond2013-11-151-30/+14
| | | | All regression tests pass. PPS is live.
* In gpsmon, better signal protection.Eric S. Raymond2013-11-141-6/+15
|
* Add a necessary 'volatile'.Eric S. Raymond2013-11-141-1/+1
|
* In gpsmon, more simplification. All regression test pass, PPS is live.Eric S. Raymond2013-11-141-13/+12
|
* In gpsmon, further decouple data handling from display.Eric S. Raymond2013-11-141-13/+13
|
* Code simplification.Eric S. Raymond2013-11-141-27/+24
|
* Non-ncurses mode of gpsmon (for diagnostics) is closer to working.Eric S. Raymond2013-11-141-38/+61
| | | | Issues with making command input stop the main loop need to be resolved.
* More curses code isolation. All regression tests, PPS is live.Eric S. Raymond2013-11-141-3/+10
|
* More gpsmon refactoring.Eric S. Raymond2013-11-141-54/+68
|
* More isolation of curses code.Eric S. Raymond2013-11-141-6/+17
|
* More gpsmon refactoring.Eric S. Raymond2013-11-141-121/+135
|
* Rarrange gpsmon code for clarity. No logic changes.Eric S. Raymond2013-11-141-103/+108
|
* gpsmon refactoring step. Live-tests correct.Eric S. Raymond2013-11-141-31/+53
|
* ppsbar -> pps.Eric S. Raymond2013-11-131-4/+4
| | | | All regression tests pass. PPS is live in both gpsd and gpsmon.
* Another error message upgrade.Eric S. Raymond2013-11-121-3/+3
|
* In gpsmon, more informative error messages.Eric S. Raymond2013-11-121-3/+6
|