From: Juergen Perlinger Date: Wed, 10 Nov 2010 18:29:43 +0000 (+0100) Subject: fixed doc error, improved comments X-Git-Tag: NTP_4_2_7P116~2^2~1 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=05b221bfc16798f70d7335b87a2a3e04b888b9ac;p=thirdparty%2Fntp.git fixed doc error, improved comments bk: 4cdae497djbP-KTOl8dbSl3y7uWWcA --- diff --git a/html/drivers/driver20.html b/html/drivers/driver20.html index b30f06e05..3626fa30f 100644 --- a/html/drivers/driver20.html +++ b/html/drivers/driver20.html @@ -210,7 +210,7 @@ 4 process $GPGLL - 4 + 3 8 process $GPZDA or $GPZDG diff --git a/ntpd/refclock_nmea.c b/ntpd/refclock_nmea.c index 094c3fb00..0b1a3da95 100644 --- a/ntpd/refclock_nmea.c +++ b/ntpd/refclock_nmea.c @@ -1132,9 +1132,11 @@ field_init( /* syntax check follows here. check allowed character * sequences, updating the local computed checksum as we go. + * + * regex equiv: '^\$[A-Z][A-Z0-9]{4,}[^*]*(\*[0-9A-F]{2})?$' */ - /* -*- start character: [$] */ + /* -*- start character: '^\$' */ if (*cptr == '\0') return CHECK_EMPTY; if (*cptr++ != '$') @@ -1145,7 +1147,7 @@ field_init( data->cptr++; data->blen--; - /* -*- field name: [A-Z][A-Z0-9]{4+}[,] */ + /* -*- field name: '[A-Z][A-Z0-9]{4,},' */ if (*cptr < 'A' || *cptr > 'Z') return CHECK_INVALID; cs_l ^= *cptr++; @@ -1156,16 +1158,17 @@ field_init( return CHECK_INVALID; cs_l ^= *cptr++; - /* -*- data: [^*]* */ + /* -*- data: '[^*]*' */ while (*cptr && *cptr != '*') cs_l ^= *cptr++; + + /* -*- checksum field: (\*[0-9A-F]{2})?$ */ if (*cptr == '\0') return CHECK_VALID; if (*cptr != '*' || cptr != eptr - 3 || (cptr - data->base) >= NMEA_PROTO_MAXLEN) return CHECK_INVALID; - /* -*- checksum field: [*][0-9A-F]{2}$ */ for (cptr++; (tmp = *cptr) != '\0'; cptr++) if (tmp >= '0' && tmp <= '9') cs_r = (cs_r << 4) + (tmp - '0');