[Bug 279413] NTPD: Leap-Seconds.list IPv6 alone cannot be obtained and error occurs.
Date: Fri, 21 Jun 2024 18:08:03 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=279413 --- Comment #2 from CrazyMihey <CrazyMihey@Ya.Ru> --- Thats Right, «HTTPS://HPIERS.OBSPM.Fr», suggested in «/etc/defaults/rc.conf» of FreeBSD 14.0 #7 does not SupPort IPv6. I publish My Decision, made in January and [not Hardly Tested] on IPv6-Only Servers. This is a Fragment of My «/etc/rc.conf.local», Comments and Suggestions are WellCome: #!/bin/sh # Здесь ШеБанг ИсПользуетСя ИсКлючитЕльНо для КорРектнОго ЦветоВыДеления Синтаксиса в Текстовых РедакТорАх, вроде «mcedit» (GNU MidNight Commander), «FarColorer» (Far Manager), и, возможно, Других… Сурсящая ПодПроГрамма «source_rc_confs» из «/etc/defaults/rc.conf» ПроИгнорирует SheBang, Справедливо СоЧтя Его за НеУдачный Комментарий. … #──────────────────────────────────────────────────────────────────────────────────────────────────# # Creates a Simple Match-Pattern (Mask) from a given String. # This Patterns can be used for Parameter Expansions (#/##/%/%%) and Case/esaC Command in SH Scripts. # UsAge: # AnyCasePattern <InirialString> # For Example, «AnyCasePattern "Some <Used> Parameter."» # Will ReTurn String: «[Ss][Oo][Mm][Ee][[:space:]][<][Uu][Ss][Ee][Dd][>][[:space:]][Pp][Aa][Rr][Aa][Mm][Ee][Tt][Ee][Rr][.]», which can be Applied in Case/#/% Constructions of SH. # AnyCasePattern Works on Pure SH: avoids using External Utilities such as IConv, TR and SEd. # AnyCasePattern Can Be easily Expanded for any National Symbols Support. AnyCasePattern() { local H T="${*}" R="" # Header, Tail, Result. if [ -n "${T}" ] then while [ -n "${T}" ] do H="${T%"${T#?}"}" T="${T#?}" # Using Third VariAble (Accumulator A="${T#?}"; H="${T%"${A}"}"; T="${A}") does not Increase Performance, while Avoiding Double "${T#?}" — Operation… case "${H}" in # Static Case Operator Operates about 4–6 Times Faster, than For-Loop; ≈2–3 Times Faster, than For+Case (For This Particular Case). Tested on Intel® Atom™/Xeon® i386/AMD64. [Aa]) H="Aa";; [Bb]) H="Bb";; [Cc]) H="Cc";; [Dd]) H="Dd";; [Ee]) H="Ee";; [Ff]) H="Ff";; [Gg]) H="Gg";; [Hh]) H="Hh";; [Ii]) H="Ii";; [Jj]) H="Jj";; [Kk]) H="Kk";; [Ll]) H="Ll";; [Mm]) H="Mm";; [Nn]) H="Nn";; [Oo]) H="Oo";; [Pp]) H="Pp";; [Qq]) H="Qq";; [Rr]) H="Rr";; [Ss]) H="Ss";; [Tt]) H="Tt";; [Uu]) H="Uu";; [Vv]) H="Vv";; [Ww]) H="Ww";; [Xx]) H="Xx";; [Yy]) H="Yy";; [Zz]) H="Zz";; [[:space:]]) H="[:space:]";; esac R="${R}[${H}]" done printf "%s" "${R}" return "0" else return "1" fi } #══════════════════════════════════════════════════════════════════════════════════════════════════# # URLHost ExtrActs Full HostName form the URL. # UsAge: # URLHost "<Long URL>" # For Example, «URLHost "HTTP://StupidUser:Remember@Data.IANA.Org/time-zones/data/leap-seconds.list?Date=ToDay#3692217600"» # Will ReTurn String: «Data.IANA.Org» # Multiple URLs will be SingleSpace-Separated. No External Utilities (in ${PATH}) Required. URLHost() { local H R for H in "${@}" { H="${H#*"//"}" # ReMove Scheme/Protocol Part; H="${H%%"/"*}" # ReMove Host Path and Parameters; R="${R}${R:+" "}${H#*"@"}" # ReMove LogIn:PassWord Part. } printf "%s" "${R}" } #══════════════════════════════════════════════════════════════════════════════════════════════════# … # Файл, СоДержащий Текущий Сдвиг Времени — ДоПолни́тельную (ВисоКо́сную, Ска́чущую) Секу́нду, Перемещён с «IETF.Org» на «HTTPS://Data.IANA.Org/time-zones/data/leap-seconds.list». # HTTPS://Ru.WikiPedia.Org/wiki/Дополнительная_секунда if [ -n "${name}" -a "${name%[Nn][Tt][Pp][Dd]*}" != "${name}" ] # Execute Next ↓ «HardWork» on NTPD or NTPDate Start/Stop Only. then # Configuration Files «/etc/rc.conf» and «/etc/rc.conf.local» are Included by Every Deamon Script on Start/Stop/ReStart/ReLoad/… These Actions ↓ may take Some Time During Boot Process, so They should be performed only when running Time Daemons. Alt_NTP_LeapFile_Sources="${Alt_NTP_LeapFile_Sources}${Alt_NTP_LeapFile_Sources:+" "}HTTPS://HPIERS.OBSPM.Fr/iers/bul/bulc/ntp/leap-seconds.list" # Paris Observatory IERS Centers …from Quasars to our changing Earth. Works Faster in Most Cases (Moscow, Amsterdam, …), SupPorts IPv4 Only (Not AvailAble on IPv6-Only Hosts). Alt_NTP_LeapFile_Sources="${Alt_NTP_LeapFile_Sources}${Alt_NTP_LeapFile_Sources:+" "}HTTPS://Data.IANA.Org/time-zones/data/leap-seconds.list" # The Global Coordination of the DNS Root, IP Addressing, and Other InterNet Protocol Resources is Performed as the InterNet Assigned Numbers Authority (IANA) Functions. SupPorts IPv4 and IPv6. for Alt_NTP_LeapFile_Source in ${Alt_NTP_LeapFile_Sources} { Alt_NTP_LeapFile_Source_Pattern="$(AnyCasePattern "$(URLHost "${Alt_NTP_LeapFile_Source}")")" [ "${ntp_leapfile_sources%${Alt_NTP_LeapFile_Source_Pattern}*}" == "${ntp_leapfile_sources}" ] && ntp_leapfile_sources="${ntp_leapfile_sources}${ntp_leapfile_sources:+" "}${Alt_NTP_LeapFile_Source}" } unset Alt_NTP_LeapFile_Source Alt_NTP_LeapFile_Sources Alt_NTP_LeapFile_Source_Pattern fi … ntpd_enable="Yes" # Дэмон СинХронизации СисТемнОго Времени. … # Такой «Фортэль» Работает на FreeBSD: ПодПрограмма «run_rc_command» из Скрипта «/etc/rc.subr» Формирует Строку ЗаПуска Дэмона в своей Переменной «${_doit}», добавляя Туда Параметры, в том числе «${${name}_nice}», без ДоПолнительной ПроВерки на «Целое Число −20…20», так что можно «Вставить в Цепочку ЗаПуска» ещё и Утилиту idprio/rtprio… ntpd_nice="-20 rtprio 0" # ЗаПуск NTPD с Максимальным «Приоритетом Реального Времени» и Минимальной «Вежливостью» («Уступчивостью», «Nice») к Другим Процессам в Системе. Ибо Время — это Самый Ценный и НеВосПолнимый Ресурс, а Учитывать Его следует особенно Тщательно. # Running NTPD with Maximum «Real-Time Priority» and Minimum «Politeness» («Compliance», «Nice») to Other Processes in the System. Because Time is the Most ValuAble and IrRePlaceAble Resource, and It should be taken into Account especially Carefully. ntpd_flags="--authreq --bcastsync" ntpd_sync_on_start="Yes" # ПриХодитСя ИсПользовать Сей ПараМетр, ВзаМесто «--panicgate» по Причине Кривости ОбРаБотки ПараМетров СкрипТом ЗаПуска «/etc/rc.d/ntpd». … -- You are receiving this mail because: You are the assignee for the bug.