Provided by: manpages-ru_0.98-4_all bug

НАЗВАНИЕ

       tzfile - информация о часовом поясе

СИНТАКСИС

       #include <tzfile.h>

ОПИСАНИЕ

       Файлы  с  информацией  о  часовых  поясах,  которые  использует функция
       tzset(3), начинаются с символов "TZif", показывающих, что это  файлы  с
       информацией  о  часовых  поясах,  затем располагаются шестнадцать байт,
       зарезервированных для будущего  использования,  за  ними  располагаются
       шесть  четырёхбайтовых  значений  типа  long,  записанных в ``сетевом''
       порядке байт (старший байт  значения  записывается  первым).   Вот  эти
       значения, по порядку:

       tzh_ttisgmtcnt
              Количество  индикаторов  UTC и местных индикаторов, хранящихся в
              файле.

       tzh_ttisstdcnt
              Количество индикаторов "времени на часах" (wall-clock time)  или
              стандартного времени, хранящихся в файле.

       tzh_leapcnt
              Количество високосных секунд, данные о которых хранятся в файле.

       tzh_timecnt
              Количество  "моментов  перевода  времени",  данные   о   которых
              хранятся в файле.

       tzh_typecnt
              Количество  "типов местного времени" , данные о которых хранятся
              в файле ( должно быть ненулевым).

       tzh_charcnt
              Количество символов  в  "строках  аббревиатур  часовых  поясов",
              хранящихся в файле.

       После  этого  заголовка  следуют  tzh_timecnt, четырёхбайтовые значения
       типа long, отсортированные по возрастанию.   Эти  значения  записаны  в
       ``сетевом''  порядке  байт.   Каждое  из них рассматривается как момент
       перевода времени (в том виде,  как  его  возвращает  функция  time(2)).
       Далее  следуют  однобайтовые  значения  типа unsigned char в количестве
       tzh_timecnt,  каждое  из  которых  показывает,   как   различные   типы
       ``местного времени'', описываемые в файле, связаны с моментами перевода
       времени с теми же индексами.  Эти значения служат в  качестве  индексов
       массива  структур  ttinfo,  которые  располагаются  далее  в файле; эти
       структуры определены так:

            struct ttinfo {
                 long          tt_gmtoff;
                 int           tt_isdst;
                 unsigned int  tt_abbrind;
            };

       Каждая структура определена в виде четырёхбайтового значения  tt_gmtoff
       типа  long  в  сетевом  порядке байт, однобайтового значения tt_isdst и
       однобайтового  значения  tt_abbrind.   В  каждой  структуре   tt_gmtoff
       определяет  количество  секунд,  которые нужно добавить к UTC, tt_isdst
       показывает, будет ли localtime (3) устанавливать значение  tm_isdst,  а
       tt_abbrind  служит  в  индексом  массива  символов  аббревиатур часовых
       поясов, которые располагаются в виде структур(ы) ttinfo в файле  далее.

       Затем  следуют  пары четырёхбайтовых значений tzh_leapcnt, записанных в
       сетевом порядке байт; первое значение каждой пары определяет  время  (в
       формате   time(2)),   когда   встретилась  високосная  секунда;  второе
       определяет  число високосных секунд, которые нужно применить после
       заданного   времени.    Пары   значений   отсортированы  по  времени  в
       возрастающем порядке.

       Далее располагаются индикаторы стандартного  времени  или  "времени  на
       часах"  в  количестве tzh_ttisstdcnt, причем каждый занимает один байт.
       Они показывают, указаны ли моменты перевода времени, связанные с типами
       местного  времени, в стандартном или "времени на часах", и применяются,
       когда файл часовых поясов используется при обработке переменных  среды,
       указывающих часовые пояса в стиле POSIX.

       Наконец,  идут  индикаторы  UTC  или  местные  индикаторы  в количестве
       tzh_ttisgmtcnt, причем  каждый  занимает  один  байт;  Они  показывают,
       указаны  ли  моменты  перевода  времени,  связанные  с  типами местного
       времени, в местном времени или в UTC, и применяются, когда файл часовых
       поясов используется при обработке переменных среды, указывающих часовые
       пояса в стиле POSIX.

       Localtime использует первую структуру ttinfo со стандартным временем из
       файла  (или  просто первую структуру ttinfo при отсутствии структуры со
       стандартным временем), если tzh_timecnt равен нулю или аргумент времени
       меньше, чем первый момент перевода времени, записанный в файле.

СМОТРИ ТАКЖЕ

       newctime(3)

ПЕРЕВОД

       Юрий Козлов <y_kozlov@chat.ru>.

                                                                     TZFILE(5)