Ang sayup sa GPSD karong Domingo gihubad sa usa ka pagbag-o sa panahon sa 19 ka tuig ang milabay

Usa ka kritikal nga isyu ang nahibal-an sa pakete sa GPSD, nga gigamit aron makuha ang tukma nga oras ug data sa posisyon gikan sa mga aparato sa GPS, tungod niini ang oras mobalhin balik sa 24 nga mga semana sa Oktubre 1024, i.e. ang panahon usbon ngadto sa Marso 2002. Ang isyu makita sa mga pagpagawas sa 3.20 hangtod sa 3.22 lakip na ug nasulbad sa GPSD 3.23. Ang tanan nga tiggamit sa mga sistema nga naggamit sa GPSD kinahanglan nga mag-install dayon sa mga update, o andam alang sa kapakyasan.

Ang epekto sa kasaypanan mahimong mosangpot sa dili matag-an nga mga kapakyasan sa nagkalain-laing mga sistema, lakip ang mga dili direkta nga naggamit sa GPSD, tungod kay kini nga aplikasyon gigamit aron makakuha og tukma nga datos sa oras sa pipila ka NTP server nga gigamit alang sa pag-synchronize sa oras. Kung mahitabo ang mga pagbag-o sa oras sa mga sistema, mahimong motungha ang mga problema sa pag-authenticate (pananglitan, usa ka higayon nga mga password, Kerberos ug uban pang mga mekanismo sa pag-verify sa pag-access nga adunay petsa sa pag-expire dili na molihok), uban ang pag-verify sa sertipiko, ug uban ang mga kalkulasyon nga nagmaniobra sa mga han-ay sa oras ( pananglitan, pagkalkula sa oras sa sesyon sa usa ka user) . Magamit usab ang GPSD sa lainlaing mga naka-embed ug mobile device, kadaghanan niini wala na makadawat mga update sa firmware.

Ang GPS protocol naglakip sa usa ka semana counter nga nag-ihap sa mga semana sukad sa Enero 5, 1980. Ang problema mao nga sa panahon sa pagsibya, 10 ka bits ra ang gigahin alang niini nga counter, nga nagpasabut nga kini nag-awas matag 1023 ka semana (19.7 ka tuig). Ang una nga pag-awas nahitabo sa 1999, ang ikaduha sa 2019, ug ang ikatulo mahitabo sa 2038. Kini nga mga panghitabo gibantayan sa mga tiggama ug ang mga espesyal nga tigdumala gihatag alang kanila. Sa pagkakaron, usa ka bag-ong GPS message format (CNAV) ang gipaila-ila sa parallel, diin ang 13 bits gigahin alang sa counter (ie, ang usa ka overflow gipaabot lamang sa 2137).

Sa GPSD, sa lohika alang sa pag-adjust sa dagway sa usa ka dugang nga segundo (gidugang aron i-synchronize ang mga reperensya sa kalibutan nga atomic nga mga orasan sa oras sa astronomiya sa Yuta), usa ka sayup ang nahimo tungod sa diin sa Oktubre 24, 2021, ang 1024 kuhaon nga wala sa panahon gikan sa semana counter. Sumala sa tagsulat sa code, ang pagbalhin kinahanglan nga nahitabo sa Disyembre 31, 2022, apan ang paghubad niini nga petsa ngadto sa gidaghanon sa mga semana wala gihimo sa husto ug sa pagkatinuod ang gidaghanon sa mga semana nga gihatag sa tseke nahulog ubos sa Oktubre 2021 (ang bili nga gipakita mao ang 2180 imbes nga 2600). /* sanity check week number, GPS epoch, batok sa leap seconds * Dili maayo sa mga regressions tungod kay ang leap_sconds * mahimong gikan sa receiver, o gikan sa BUILD_LEAPSECONDS. */ kung (0 < session->context->leap_seconds && 19 > session->context->leap_seconds && 2180 <semana) { /* assume leap second = 19 by 31 Dec 2022 * so semana > 2180 is way in the future , ayaw itugot */ semana -= 1024; GPSD_LOG(LOG_WARN, &session->context->errout, "GPS week nga kalibug. Gi-adjust nga semana %u para sa leap %d\n", semana, session->context->leap_seconds); }

Source: opennet.ru

Idugang sa usa ka comment