summaryrefslogtreecommitdiff
path: root/driver_italk.c
diff options
context:
space:
mode:
authorEric S. Raymond <esr@thyrsus.com>2011-01-17 10:56:32 -0500
committerEric S. Raymond <esr@thyrsus.com>2011-01-17 10:56:32 -0500
commitf12d1b2a532f5540ab43309a8c5e658329f5df71 (patch)
tree2d433bf85f16f538b409183a3e6ea2f25289609b /driver_italk.c
parent3307f9c53771f39873aad7ceec1ff09bd100b108 (diff)
downloadgpsd-f12d1b2a532f5540ab43309a8c5e658329f5df71.tar.gz
Introduce GPS_TIME_VALID flag for GPS time validation.
Diffstat (limited to 'driver_italk.c')
-rw-r--r--driver_italk.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/driver_italk.c b/driver_italk.c
index e66c20dc..aa79c159 100644
--- a/driver_italk.c
+++ b/driver_italk.c
@@ -61,6 +61,7 @@ static gps_mask_t decode_itk_navfix(struct gps_device_t *session,
session->context->gps_week = gps_week;
tow = (uint) getleu32(buf, 7 + 84);
session->context->gps_tow = tow / 1000.0;
+ session->context->valid |= GPS_TIME_VALID;
t = gpstime_to_unix((int)gps_week, session->context->gps_tow)
- session->context->leap_seconds;
session->newdata.time = t;
@@ -136,6 +137,7 @@ static gps_mask_t decode_itk_prnstatus(struct gps_device_t *session,
gps_week = (ushort) getleu16(buf, 7 + 4);
session->context->gps_week = gps_week;
tow = (uint) getleu32(buf, 7 + 6);
+ session->context->valid |= GPS_TIME_VALID;
session->context->gps_tow = tow / 1000.0;
t = gpstime_to_unix((int)gps_week, session->context->gps_tow)
- session->context->leap_seconds;
@@ -203,6 +205,7 @@ static gps_mask_t decode_itk_utcionomodel(struct gps_device_t *session,
session->context->gps_week = gps_week;
tow = (uint) getleu32(buf, 7 + 38);
session->context->gps_tow = tow / 1000.0;
+ session->context->valid |= GPS_TIME_VALID;
t = gpstime_to_unix((int)gps_week, session->context->gps_tow)
- session->context->leap_seconds;
session->newdata.time = t;
@@ -275,6 +278,7 @@ static gps_mask_t decode_itk_pseudo(struct gps_device_t *session,
tow = (uint) getleu32(buf, 7 + 38);
session->context->gps_week = gps_week;
session->context->gps_tow = tow / 1000.0;
+ session->context->valid |= GPS_TIME_VALID;
t = gpstime_to_unix((int)gps_week, session->context->gps_tow)
- session->context->leap_seconds;
session->newdata.time = t;