summaryrefslogtreecommitdiff
path: root/driver_garmin_txt.c
Commit message (Collapse)AuthorAgeFilesLines
* driver_garmin_tst: Don't compute eps, allow gpsd_error_modeil().Gary E. Miller2019-03-261-6/+5
| | | | Oddly, no regression changes...
* LICENSE: Update licenses for consistency. No functional changes.Gary E. Miller2018-11-191-1/+1
|
* SPDXify the licerse references.Eric S. Raymond2018-03-081-1/+1
|
* Revert a previous change to suppress cppcheck warning...Eric S. Raymond2017-09-061-0/+1
| | | | ...that breaks the build on some platforms.
* bzero() is gone in POSIX 2008. Use memset()Gary E. Miller2016-08-151-2/+2
| | | | Also two #defines for gpspipe.c
* A drowning deluge of whitespace hacks.Gary E. Miller2015-04-301-1/+1
|
* Retire splint from our set of static analyzers.Eric S. Raymond2015-03-301-8/+2
| | | | | | | | | | | | | | | | | | | The proximate cause was that we've been seing emission of error messages that were randomly and disturbingly variable across different environments - notably Raspbian and Gentoo splint gave nontrivially different results than Ubuntu 14.10 splint. And this was *not* due to Ubuntu patches! A pristine splint built from the 3.1.2 tarball on Ubuntu didn't match the Raspbian and Gentoo results either. But this has been coming for a while. Easy access to more modern static analyzers such as coverity, scan-build and cppcheck has been decreasing the utility of splint, which is unmaintained and somewhat buggy and not easy to use. Only file not cleaned is ppsthread.c, because Gary has been working on it during this cleanup. All regression tests pass. PPS observed live on GR601-W.
* gpsd-report() -> gpsd_log()Eric S. Raymond2015-03-071-26/+26
| | | | | | | | | | | | | | | | This change is done so we can add a "log" hook to the pps_thread_t structure (this is not done yet) and harmonize with the name of the outer logging function. If that name had been left as gpsd_report() there would have been scope for bad confusion with the report_hook member. Also, remove two stray duplicative printf calls from the NMEA2000 driver (drivers shouldn't have printfs!) and fix one typo. This is a step towards factoring out ntplib. For that to happen, the PPS thread code needs to be decoupled from the core session structure. No logic changes. Object compatibility preserved. All regression tests pass.
* Better way to avoid glibc dependency.Eric S. Raymond2014-09-291-1/+1
| | | | | | | Returns us to something amost identical to the original code. Sigh. Timezones are a swamp. All regression tests pass.
* Remove some custom code, at the cost of introducing a glibc depenency.Eric S. Raymond2014-09-251-1/+1
| | | | Dependency soon to be fixed. All regression tests pass.
* Now that the transition is done we can restore the gpsd_report name.Eric S. Raymond2014-08-271-12/+12
| | | | All regression tests pass.
* The big leap. Most instances of gpsd_report are replaced...Eric S. Raymond2014-08-271-12/+12
| | | | | | | | | | | | | | | | ...with calls to gps_notify(), which indirects to its output method through a slot in an errout structure. Usually the errout structure lives inside the session context, but because struct errout_t is its own thing this does not have to be the case. One large clique of gpsd_notify() calls, in packet.c and isgps.c, looks at a struct errout_t copy in a lexer control block This change is not complete. Remnant gpsd_report calls need to be changed, and gpsmon needs to be tweaked so that the struct_error_t in its context is a non-defaukt hook updating the cuses display rather than simply dumping to stderr. Also the report label functionality needs to be added. All regression tests pass.
* Introduce struct errout_t to encapsulate error-reporting hooks.Eric S. Raymond2014-08-271-13/+13
| | | | | | A major step towards eliminating reverse linkage. All regression tests pass.
* Structure member name change: packet -> lexer. No logic changes.Eric S. Raymond2014-08-271-14/+14
| | | | All regression tests pass.
* A steo topwrds eliminating the reverse linkage of gpd_report().Eric S. Raymond2014-08-271-29/+29
| | | | All regression tests pass.
* Drop the obsolete tag field from JSON output. Bump the minor protocol number.Eric S. Raymond2014-08-241-2/+0
| | | | | | | Required a regression-test rebuild, of course. The field is still set by the TSIP and SiRF drivers; the SiRF driver actually uses it. It may be possible to eliminate the TSIP uses, but so far attempting this has produced odd regression-test failures.
* Change gpsd_report to no longer use a global. All regression tests pass.Eric S. Raymond2013-09-291-33/+55
| | | | | | | | This is a large, ugly change. But without it we can't troubleshoot the ICP/IP-source initialization bug properly - colliding definitions of gpsd_report() were interfering with error reporting early in gpsd runs. More cleanup work remains to be done, but at least this is working.
* Actual code changes to get rid of Berlios URLs.Eric S. Raymond2011-10-011-1/+1
|
* Cut down on gpsd_hexdump_wrapper() calls.Eric S. Raymond2011-06-171-5/+2
| | | | | | | | | | | | | | | This awkward construct seems to have triggered some sort of toolchain bug. The symptom is that gpsd_hexdump_level has different values depending on whether we test it inside or outside of hex.c. As a first step towards eliminating this global, we throw out a bunch of hex logging that is duplicative or not really needed for production drivers. Experimental drivers can call the hex dumper unconditionally. The goal is to reduce the number of uses of this variable to eliminate it withoud doing violence to the internal APIs. This is a first step. All regression tests pass.
* gps_maskdump() has been a CPU hog. Drastically reduce the number of calls...Eric S. Raymond2011-03-311-2/+2
| | | | | ...and guard them with debug level so they won't be done when the output would never be shipped anywhere.
* Magic-number and strncpy elimination. All regression tests passEric S. Raymond2011-03-291-3/+3
|
* Re-identify most *_IS flags with corresponding *_SET flags.Eric S. Raymond2011-03-271-9/+9
| | | | | | | | | | | Required so clients looking at flag masks in data exported via the shared-memory interface will see the right thing. These were separated originally in order to avoid pushing the reqyuired width of the gpsdata.set flag mask over 32 bits. It became 64 bits in the Version 5 API change, so that constraint went away. All regression tests pass.
* And still more double -> timestamp_t moves.Eric S. Raymond2011-03-101-1/+1
| | | | All regression tests pass, splint passes.
* More deheader testing.Eric S. Raymond2011-01-121-0/+1
|
* More header portability audting with a new version of deheader.Eric S. Raymond2010-12-221-3/+0
|
* More header portability auditing by deheader.Eric S. Raymond2010-12-221-1/+1
|
* Use the century slot in the context structure.Eric S. Raymond2010-12-191-1/+1
| | | | | | Duh. I previously implemented it and iniitialized it prperly, then forgot to actually use it instead of CENTURY_BASE. Soon this will matter because I'm going to implement some heuristics for limited trust in the system clock.
* For simplification on SuS assumptions.Eric S. Raymond2010-12-131-10/+0
|
* Unused-header removals by deheader. All regression tests pass.Eric S. Raymond2010-12-011-5/+0
|
* Reindent a couple more drivers. All regression tests pass.Eric S. Raymond2010-04-141-2/+1
|
* Reindent some of the simpler drivers. All regression tests pass.Eric S. Raymond2010-04-141-169/+209
|
* compile with nmea off but sirf and garmintxt onChris Kuethe2010-04-101-8/+8
|
* Make the client library and daemon use different sets of state-flag masks.Eric S. Raymond2010-04-091-8/+8
| | | | | | | | | | | | | | | | | Large patch, no actual executable code changes except in three debug dumpers. Breaks up the *_SET status macros so the client side continues to use them, but the daemon uses a similarly-named set with an _IS suffix. This frees up two mask bits in both sets - the client side no longer needs to have REPORT_SET and CLEAR_SET bits, and the daemon side no longer needs to have VERSION_SET and POLICY_SET. The only actual code change is that the maskdump.c module, generated by maskaudit.py, splits in half - one child now dumps client-side flags, the other daemon-side flags. One other function call in a debug dumper in libgps_core.c changes. All regression tests pass.
* Drivers now put their per-packet new data into a session->newdata member.Eric S. Raymond2010-04-051-24/+24
| | | | | | | This is so they won't overwrite session->gpsdata.fix, which is going to move back to being where the current fix has been reported. All regression tests pass.
* Vanish away Id and Rev $ keywords, git won't expand them to anything useful.Eric S. Raymond2010-03-131-5/+5
|
* Copyright stamps everywhere. No code changes.Eric S. Raymond2010-03-111-3/+5
|
* The new instrumentation pays off. Eric S. Raymond2009-10-021-2/+2
| | | | | | | On NMEA devices, mode could sometimes be held across cycles when it shouldn't have been. Fix this, simplifying how cycles are tracked in the process. Some regression tests needed rebuilding. Code splints clean.
* Fix a paste-o that made its way into many LOG_DATA format strings.Eric S. Raymond2009-10-021-1/+1
|
* Fix computation of epx and epy from eph.Eric S. Raymond2009-09-301-1/+2
| | | | | Factor of 1/sqrt(2) has to be applied (on the assumption that epx and epy are equal).
* Introduced new LOG_DATA debugging level.Eric S. Raymond2009-09-301-9/+14
| | | | | | This makes each packet handler dump the fields that it touched and the validity mask. The NMEA, Evermore, and GTXT drives now use this. No behavior changes. All regression tests pass.
* Refactor the cycle-end tracking. The AIS machinery should use it.Eric S. Raymond2009-09-301-1/+1
| | | | All regression tests pass.
* Guard some inclusions that splint doesn't like. Eric S. Raymond2009-09-101-0/+2
| | | | No effect on compilation. All regression tests pass.
* Now make it possible for a driver to signal cycle start, cycle end, ... Eric S. Raymond2009-09-031-1/+2
| | | | | and the fact that its cycle end indication is reliable. All regression tests pass.
* Break the cycle-start flag out of general status mask into its own field.Eric S. Raymond2009-09-031-2/+1
| | | | Refactoring step, no behavior changes. All regression tests pass.
* Split eph into epx and epy internally... Eric S. Raymond2009-09-031-1/+1
| | | | | | ...but still report eph by re-mixing them in the JSON dumper. This was worth doing because all regression tests still pass, showing that visible behavior for old-protocol users gas not changed.
* Get a size_t format right.Eric S. Raymond2009-03-251-1/+1
|
* Pacify splint.Eric S. Raymond2009-03-241-7/+7
|
* Garmintxt integration patches from Petr Slansky.Eric S. Raymond2009-03-241-34/+53
|
* make sure that the Id keyword is present and expandedChris Kuethe2009-03-031-0/+1
|
* repository beautification, part 2:Chris Kuethe2009-03-021-0/+405
rename the packet drivers to driver_$(protocol).c