summaryrefslogtreecommitdiff
path: root/driver_ais.c
Commit message (Collapse)AuthorAgeFilesLines
* A drowning deluge of whitespace hacks.Gary E. Miller2015-04-301-3/+3
|
* Retire splint from our set of static analyzers.Eric S. Raymond2015-03-301-14/+0
| | | | | | | | | | | | | | | | | | | 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.
* Fix Savannah bug #44619: Bad latitude value for message type 17Eric S. Raymond2015-03-241-2/+2
| | | | | Required one checkfile rebuild to integrate the sentence that triggered the error. All regression tests pass.
* Fix comment typo, width of spare field in AIS type 17.Eric S. Raymond2015-03-241-1/+1
|
* gpsd-report() -> gpsd_log()Eric S. Raymond2015-03-071-37/+37
| | | | | | | | | | | | | | | | 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.
* Cleanup of string function and sizeof usage. All regression tests pass.Zbigniew Chyla2015-01-131-1/+1
|
* Minor fixes for AIS code and fields documentation.Eric S. Raymond2015-01-081-1/+1
|
* More magic-number elimination.Eric S. Raymond2014-09-121-5/+5
|
* Use a standard name for a magic number. All regression tests pass.Eric S. Raymond2014-09-111-5/+3
|
* Magic-number elimination.Eric S. Raymond2014-09-111-5/+5
|
* Appease the compiler.Eric S. Raymond2014-08-291-1/+1
|
* Properly handle addressed versions of AIS Type 25 and 26. Untested, alas.Eric S. Raymond2014-08-291-10/+11
| | | | All regression tests pass.
* Now that the transition is done we can restore the gpsd_report name.Eric S. Raymond2014-08-271-15/+15
| | | | All regression tests pass.
* All gpsd_reportcalls are gone. Only the unused definitins are left.Eric S. Raymond2014-08-271-15/+15
| | | | | | Next, implement labeled reporting and fix up gpson to do the right thing. All regression tests pass.
* Full implementation of AIS 'structured' bit. All regression tests pass.Eric S. Raymond2014-08-231-1/+9
|
* libgps version bump to 22: AIS types 6 and 8 get 'structured' member.Eric S. Raymond2014-08-231-34/+32
|
* More RANGE_CHECK uses. All regression tests pass.Eric S. Raymond2014-08-201-43/+12
|
* Systematic use of RANGE_CHECK.Eric S. Raymond2014-08-201-24/+4
|
* Arrange for AIS driver to be less twitchy about overlong Type 24 messages.Eric S. Raymond2014-08-201-7/+10
| | | | All regression tests pass.
* Cirresct specification annd processing of Inland AIS Type 10 message.Eric S. Raymond2014-08-181-1/+1
|
* Add length checks to fixed-length Inland AIS messages.Eric S. Raymond2014-08-181-0/+16
| | | | This is an attempt to prevent false matches on unstructured type 8s.
* Correct a bug in AIS type 8 processing.Eric S. Raymond2014-08-181-4/+4
| | | | Prevent a false match to an Inland AIS sentence.
* An attempt to stabilize regression testing on some odd architectures.Eric S. Raymond2014-05-221-0/+4
|
* Clean up an obsolete comment and redundant #ifdef.Eric S. Raymond2013-11-131-0/+1
| | | | All regression tests pass. PPS is live in both gpsd and gpsmon.
* Relax some more AIS lebgth checks. All regression tests pass. PPS is live.Eric S. Raymond2013-11-131-24/+4
|
* Address Savannah tracker bug #40335: Accept overlong AIS messages?Eric S. Raymond2013-11-131-39/+18
| | | | | | | Be permissive about various length checks. Longer is OK, shorter is not. Longer is a not-uncommon error because these messages are formatted to fit in TDMA message slots; if a sender ships extra data past the nominal message end it may not even be noticed.
* Fix more build breakage. Partial splint cleanup.Eric S. Raymond2013-11-121-0/+3
|
* Make interpretation of the split24 flag propperly per-subscriber.Eric S. Raymond2013-11-101-45/+33
| | | | | | | | This involved moving some out of the AIS driver. There is a related small change in behavior; now, if split24 is on, the Type B half of a matched pair will be shipped with type 'both'. All regression tests pass. PPS is live.
* Full splint cleanup. Partial cppcheck cleanup.Eric S. Raymond2013-11-051-1/+1
|
* Address Savannah bug #40298: AIS type 27 too strict size checkEric S. Raymond2013-10-181-2/+9
|
* Address Savannah tracker issue #40297: AIS type 19 decoding bug.Eric S. Raymond2013-10-181-5/+5
|
* Be more relaxed about AIS Type 5 message lengths.Eric S. Raymond2013-10-141-2/+8
|
* Compiler warning cleanup.Eric S. Raymond2013-10-121-1/+1
|
* Some compilers barf if you name a struct member 'class'.Eric S. Raymond2013-10-061-1/+1
|
* Variable renames, and remove an extraneous break statement.Eric S. Raymond2013-10-061-32/+32
|
* Inland AIS full support (untested).Eric S. Raymond2013-10-061-0/+10
|
* Inland AIS Water level support is done except for the JSON dumping.Eric S. Raymond2013-10-051-0/+15
|
* Implement handling of Inland AIS EMMA warning.Eric S. Raymond2013-10-051-0/+24
|
* Support Inland AIS ship static and voyage-related data.Eric S. Raymond2013-10-021-0/+17
|
* Support for Inland AISNumber of Persons On Board.Eric S. Raymond2013-10-011-0/+21
|
* Support for Inland AIS ETA at lock/bridge/terminal.Eric S. Raymond2013-10-011-9/+31
|
* Axccept Persons On Board as either a type 6 or 8 message.Eric S. Raymond2013-10-011-1/+8
|
* Change gpsd_report to no longer use a global. All regression tests pass.Eric S. Raymond2013-09-291-35/+65
| | | | | | | | 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.
* Document ITU-R 1371 change point.Eric S. Raymond2013-09-161-8/+8
|
* Fix up the ENDCHARS macro.Eric S. Raymond2013-09-161-1/+2
|
* Wrap sixbit() calls in a macro to regularize them.Eric S. Raymond2013-09-151-19/+10
|
* Extract ITU-R 1371-4 model and serial fields from AIS Type24 messages.Eric S. Raymond2013-09-151-1/+14
| | | | | | | | | | | | | | In ITU-R 1371-4, there are new model and serial fields carved out of the right-hand end of vendorid, which is reduced from 7 chars to 3. It is not clear in which minor revision this change took place. To cope with older AIS implementations, unpack the trailing bits *both* ways; truly revision-4-conformant implementations will have up to four characters of trailing garbage on the vendorid, and older implementations will have garbafe in the model and serial fields. This commit also reverts the change to copy only 20 characters rather than 21 when analyzing the name field in a type21. There's some mystery about why this didn't break the rgression tests sooner.
* Fix for a typo spotted by Reinhard Arlt.Eric S. Raymond2013-09-141-1/+1
|
* Split Type 24 reporting, including the -s option to gpsdecode.Eric S. Raymond2013-09-141-38/+56
| | | | All regression tests pass.
* Fix error in sixbit decoding.Eric S. Raymond2013-07-221-1/+1
| | | | Curiously, none if the regression tests are affected.