diff options
author | Eric S. Raymond <esr@thyrsus.com> | 2009-09-22 23:10:08 +0000 |
---|---|---|
committer | Eric S. Raymond <esr@thyrsus.com> | 2009-09-22 23:10:08 +0000 |
commit | a450f4ae94b6c266f8062c2a9544479aecda1ac3 (patch) | |
tree | d80bdc1460c4f6cbce84d65bce991fbdc40f91f6 /gpsdecode.c | |
parent | 0b87f38c11d786a3ebeddeac536ea3e62ad31998 (diff) | |
download | gpsd-a450f4ae94b6c266f8062c2a9544479aecda1ac3.tar.gz |
Fully support AIS type 22 and 23 messages. All regression tests pass.
Codebase splints clean.
Diffstat (limited to 'gpsdecode.c')
-rw-r--r-- | gpsdecode.c | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/gpsdecode.c b/gpsdecode.c index eccfb045..406f651c 100644 --- a/gpsdecode.c +++ b/gpsdecode.c @@ -280,7 +280,7 @@ static void aivdm_csv_dump(struct ais_t *ais, char *buf, size_t buflen) "%u,%u,%u,%u,%d,%d,%d,%d,%u,%u,%u,%u", ais->type22.channel_a, ais->type22.channel_b, - ais->type22.mode, + ais->type22.txrx, (uint)ais->type22.power, ais->type22.ne_lon, ais->type22.ne_lat, @@ -291,6 +291,19 @@ static void aivdm_csv_dump(struct ais_t *ais, char *buf, size_t buflen) (uint)ais->type22.band_b, ais->type22.zonesize); break; + case 23: /* Group Management Command*/ + (void)snprintf(buf+strlen(buf), buflen-strlen(buf), + "%d,%d,%d,%d,%u,%u,%u,%u,%u", + ais->type23.ne_lon, + ais->type23.ne_lat, + ais->type23.sw_lon, + ais->type23.sw_lat, + ais->type23.stationtype, + ais->type23.shiptype, + ais->type23.txrx, + ais->type23.interval, + ais->type23.quiet); + break; case 24: /* Class B CS Static Data Report */ (void)snprintf(buf+strlen(buf), buflen-strlen(buf), "%s,", |