summaryrefslogtreecommitdiff
path: root/packet.c
Commit message (Collapse)AuthorAgeFilesLines
* Comment typo fix.Eric S. Raymond2015-01-311-1/+1
|
* Add str_starts_with macro, use it instead of strncmp.Zbigniew Chyla2015-01-211-5/+6
| | | | This change doesn't affect generated binary code.
* Adding missing PASSTHROUGH_ENABLE ifdef guards in packet.cJon Schlueter2015-01-081-2/+8
| | | | | | scons passthrough=false was failing on several missing ifdef guards for JSON_LEADER blocks. Added matching ifdef guards to allow it to compile cleanly
* Fix RTCM2 detection in packet.cAhti Heinla2015-01-081-0/+6
| | | | | | | | | | | | | | | | | Regression tests pass. Author's notes: RTCM2 support seems to be practically broken, if the stream frequently includes the 0x40 byte. This byte causes packet.c to temporarily think it is an AT1 stream, and stop calling rtcm2_decode() while it thinks so. I have an RTCM stream from station id 0, and this particular station ID causes the 0x40 byte to appear in virtually every RTCM message, so for that stream, I have to wait through hundreds of RTCM messages before it is positively identified and RTCM decoding starts to work. Patch attached, works for me.
* Silence compiler warnings about array subscripts of type 'char'Matt2014-09-101-3/+3
| | | | | | | | | | | | | | | | | | | | Cygwin GCC complains about code like isprint(c), where c is of type char. The isX() and toX() functions/macros (ISO C allows either) all accept an int, whose value should be either that of an unsigned char, or the special value EOF (== -1). So cast to unsigned char each argument to isprint, tolower, etc. Silences several warnings of the form: gpsutils.c: In function 'safe_atof': gpsutils.c:90:5: warning: array subscript has type 'char' [-Wchar-subscripts] while (isspace(*p)) { ^ gpsutils.c:188:2: warning: array subscript has type 'char' [-Wchar-subscripts] while (isdigit(*p)) { ^
* Fix incorrect comment.Eric S. Raymond2014-09-061-1/+1
|
* Now that the transition is done we can restore the gpsd_report name.Eric S. Raymond2014-08-271-34/+34
| | | | All regression tests pass.
* Introduce struct errout_t to encapsulate error-reporting hooks.Eric S. Raymond2014-08-271-60/+39
| | | | | | A major step towards eliminating reverse linkage. All regression tests pass.
* Eliminate gpsd_report() from isgps.c. All regression tests pass.Eric S. Raymond2014-08-271-1/+1
|
* Modify packet.c so it no longer requires gpsd_report().Eric S. Raymond2014-08-271-34/+56
| | | | | | This is a large step towards eliminating the reverse linkage of gpsd_report(). Temporarily, it means that gpsmon will not redirect these messages to the screen display properly. This will be fixed later.
* Follow throughon a previous name change. No logic changes.Eric S. Raymond2014-08-271-1/+1
| | | | All regression tests pass.
* Structure member name change: packet -> lexer. No logic changes.Eric S. Raymond2014-08-271-10/+10
| | | | All regression tests pass.
* Remove some obsolete FIXMEs.Eric S. Raymond2014-08-241-2/+0
|
* Support for some unusual NMEA 4.0 AIS talker IDs.Eric S. Raymond2014-05-201-4/+23
|
* Support for, and documentation of, some unuusual AIS talker IDs.Eric S. Raymond2014-05-161-12/+17
|
* PPS JSON messages are now visible in client-mode JSON.Eric S. Raymond2013-11-171-1/+6
|
* Fix kexer to be able to see JSON after NMEA.Eric S. Raymond2013-11-171-1/+4
| | | | | The fact that this fix was needed mmay indicate a deeper bug in end-of-packet handling.
* u-blox name cleanup. All regression tests pass, PPS is live.Eric S. Raymond2013-11-091-7/+7
|
* Remove code which Coverity correctly calls out as statically dead.Eric S. Raymond2013-11-061-2/+0
|
* Full splint cleanup. Partial cppcheck cleanup.Eric S. Raymond2013-11-051-2/+3
|
* Narrow a variable scope. All regression tests pass.Eric S. Raymond2013-10-171-2/+3
|
* Make all hex-dumping truly thread-safe.Eric S. Raymond2013-10-131-6/+17
|
* Change gpsd_report to no longer use a global. All regression tests pass.Eric S. Raymond2013-09-291-36/+52
| | | | | | | | 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.
* TSIP packet 0x1c has to pass through.Eric S. Raymond2013-09-241-1/+5
|
* Pass through Trimble Accutime Gold bersion info.Eric S. Raymond2013-09-231-3/+9
|
* Deal with the Accutime Gold's known issues. All regression tests pass.Eric S. Raymond2013-09-231-4/+9
|
* More TSIP packet cleanup. All regression tests pass.Eric S. Raymond2013-09-221-3/+3
|
* More TSIP packet recognition cleanup. All regression tests pass.Eric S. Raymond2013-09-221-3/+8
|
* TSIP driver can only use one length of 0x5c packet.Eric S. Raymond2013-09-221-2/+1
| | | | All regression tests pass.
* Remove some comments that belong in the revision history.Eric S. Raymond2013-09-221-11/+1
| | | | | | | | | | | Older versions of the 9x38 check allowed a total packet length of 3, which was almost certainly wrong. Older versions used to allow a data length of 11 for type 0x41; not clear why as the TSIP driver only knows the 10-byte format that [TSIP] describes. All regression tests pass.
* Simplify TSIP satellite-picture packet recognition.Eric S. Raymond2013-09-221-2/+1
| | | | | | | | Previuous versions allowed a data length of up to 27. It's not clear why, as the TSIP reference specifies a length of 25 and that's all the driver can use. All regression tests pass.
* More TSIP packet cleanup. All regression tests pass.Eric S. Raymond2013-09-221-2/+6
|
* More TSIP packet cleanup. All regression tests pass.Eric S. Raymond2013-09-221-4/+7
|
* Begin cleaning up some grubbiness in the packet getter.Eric S. Raymond2013-09-221-23/+39
| | | | All regression tests pass.
* TSIP Double Precision XYZ needs to be passed, as it says in the comment.Eric S. Raymond2013-09-211-0/+2
|
* Fix a malformed-packet crash.Eric S. Raymond2013-04-241-3/+2
| | | | | | | | | | Under weird circumstances, this line of device input $GPGGA,030130$GPGLL,2638.1728,N,08011.3893,W,030131.000,A,A*41 could core-dump the packet parser. The context had to be exactly right for it to happen. The bug was an incorrect attempt at optimizing recovery from this rare case.
* Bug submitter suggested an off-by-one error.Eric S. Raymond2013-01-221-1/+1
|
* Address Savannah bug #38077: TSIP parser doesn't handle packet id 0x38.Eric S. Raymond2013-01-151-1/+4
| | | | Needed to handle the TSIP chip on the Raspberry Pi.
* Nuke trailing whitespace in C source.Eric S. Raymond2012-09-071-1/+1
|
* Split gpsd_hexdump() so AIS dumping will be invertible.Eric S. Raymond2012-06-201-4/+4
|
* Add BS talker ID (used by AIS base stations)Christian Gagneraud2012-06-201-0/+18
| | | | check and packet-regress passed
* Zero Coverity defects!Eric S. Raymond2012-05-131-2/+2
|
* Still working on pacifying Coverity. All regression tests pass.Eric S. Raymond2012-05-111-1/+2
|
* Pacify Coverity some more.Eric S. Raymond2012-05-111-0/+1
|
* Add new NMEA talker ID (WI, HC and TI)Christian Gagneraud2012-04-211-0/+27
| | | | | | | | | | | WI: Weather instrument HC: Heading, magnetic compass TI: Turn rate indicator Asssociated NMEA sentences: WIMDA, WIMWD, WIMWV, WIVWR, WIVWT, TIROT, HCHDG, HCHDT Signed-off-by: Eric S. Raymond <esr@thyrsus.com>
* Added support for SDDBT sentences from a depth sounder.Eric S. Raymond2012-03-091-0/+9
| | | | All regression tests pass, including the new one for the sounder.
* splint cleanup.Eric S. Raymond2011-09-221-1/+1
|
* Cycle-start detection by timing works on a SiRF at 9600bps.Eric S. Raymond2011-09-211-0/+3
| | | | All regression tests pass.
* Additional explanation.Eric S. Raymond2011-09-081-3/+7
|
* Update list of recognized talker prefixes.Eric S. Raymond2011-09-081-2/+3
|