diff options
author | Reinhard Arlt <reinhard.arlt@t-online.de> | 2013-10-03 17:10:19 +0300 |
---|---|---|
committer | Reinhard Arlt <reinhard.arlt@t-online.de> | 2013-10-03 17:10:19 +0300 |
commit | ad872d0dbc32c2ec0e3c0f5ed56a461ea7f7fd91 (patch) | |
tree | 2083197c2f5f501bdd143165908c1ed9c46f7746 /drivers.c | |
parent | 6f5ddf288d296deb670ae214f9345aa2280b6b1f (diff) | |
parent | 73352206caf3e3dc9881e5e2bf788076653c4fce (diff) | |
download | gpsd-ad872d0dbc32c2ec0e3c0f5ed56a461ea7f7fd91.tar.gz |
Merge branch 'master' of git://git.sv.gnu.org/gpsd
Diffstat (limited to 'drivers.c')
-rw-r--r-- | drivers.c | 22 |
1 files changed, 7 insertions, 15 deletions
@@ -689,11 +689,13 @@ static const struct gps_type_t earthmate = { * **************************************************************************/ -static void tnt_add_checksum(char *sentence) -/* add NMEA-style CRC checksum to a command */ +static ssize_t tnt_control_send(struct gps_device_t *session, + char *msg, size_t len UNUSED) +/* send a control string in TNT native formal */ { + ssize_t status; unsigned char sum = '\0'; - char c, *p = sentence; + char c, *p = msg; if (*p == '@') { p++; @@ -701,7 +703,7 @@ static void tnt_add_checksum(char *sentence) #ifdef __UNUSED__ else { gpsd_report(session->context->debug, LOG_ERROR, - "Bad TNT sentence: '%s'\n", sentence); + "Bad TNT sentence: '%s'\n", msg); } #endif /* __UNUSED__ */ while (((c = *p) != '\0')) { @@ -709,18 +711,8 @@ static void tnt_add_checksum(char *sentence) p++; } (void)snprintf(p, 6, "*%02X\r\n", (unsigned int)sum); -} - - -static ssize_t tnt_control_send(struct gps_device_t *session, - char *msg, size_t len UNUSED) -/* send a control string in TNT native formal */ -{ - ssize_t status; - tnt_add_checksum(msg); - status = write(session->gpsdata.gps_fd, msg, strlen(msg)); - (void)tcdrain(session->gpsdata.gps_fd); + status = gpsd_write(session, msg, strlen(msg)); return status; } |