1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143
|
.\" @(#)tzfile.5 7.11
.\" This file is in the public domain, so clarified as of
.\" 1996-06-05 by Arthur David Olson <arthur_david_olson@nih.gov>.
.\" Translated into Spanish on Mon Apr 12 1999 by
.\" Juan Piernas Cánovas <piernas@ditec.um.es>
.\"
.TH TZFILE 5
.SH NOMBRE
tzfile \- información de huso horario
.SH SINOPSIS
.B
#include <tzfile.h>
.SH DESCRIPCIÓN
Los ficheros de información de huso horario usados por
.BR tzset (3)
comienzan con la secuencia de caracteres mágicos "TZif" para identificarlos
como ficheros de información de huso horario,
seguidos por 16 bytes reservados para uso futuro y
seguidos por 6 valores de 4 bytes de tipo
.BR long ,
escritos en un orden de bytes ``estándar''
(se escribe primero el byte de orden superior del valor).
Estos valores son, en orden:
.TP
.I tzh_ttisgmtcnt
El número de indicadores UTC/local almacenados en el fichero.
.TP
.I tzh_ttisstdcnt
El número de indicadores estándar/incorporado almacenados en el fichero.
.TP
.I tzh_leapcnt
El número de "segundos de salto" para los datos almacenados en el fichero.
.TP
.I tzh_timecnt
El número de "instantes de transición" para los datos almacenados en el
fichero.
.TP
.I tzh_typecnt
El número de "tipos de hora local" para los datos almacenados en el fichero
(no debe ser cero).
.TP
.I tzh_charcnt
El número de caracteres de las "cadenas de abreviación de husos horarios"
almacenadas en el fichero.
.PP
A la cabecera anterior le siguen valores
.I tzh_timecnt
de cuatro bytes de tipo
.BR long ,
almacenados en orden ascendente.
Estos valores se escriben en un orden de bytes ``estándar''.
Cada uno de ellos se utiliza como un instante de transición (tal y como
.BR time (2)
devuelve las horas)
en el que cambian las reglas para el cálculo de la hora local.
A continuación viene un valor
.I tzh_timecnt
de un byte de tipo
.BR "unsigned char" ;
cada uno de los cuales indica cuál de los diferentes tipos de ``hora local''
descritos en el fichero se asocia con el instante de transición colocado en
la misma posición relativa.
Estos valores sirven como índices en un array de estructuras
.I ttinfo
que aparecen después en el fichero;
estas estructuras se definen como sigue:
.in +.5i
.sp
.nf
.ta .5i +\w'unsigned int\0\0'u
struct ttinfo {
long tt_gmtoff;
int tt_isdst;
unsigned int tt_abbrind;
};
.in -.5i
.fi
.sp
Cada estructura se escribe como un valor de cuatro byte para
.I tt_gmtoff
de tipo
.BR long ,
en un orden de bytes estándar, seguido por un valor de un byte para
.I tt_isdst
y un valor de un byte para
.IR tt_abbrind .
En cada estructura,
.I tt_gmtoff
da el número de segundos a añadir a UTC,
.I tt_isdst
indica si
.I tm_isdst
debe ser o no establecido por
.BR localtime (3)
y
.I tt_abbrind
se utiliza como un índice en el array de caracteres de abreviación de huso
horario que siguen a la(s) estructura(s)
.I ttinfo
en el fichero.
.PP
Después hay parejas de valores
.I tzh_leapcnt
de 4 bytes,
escritas en un orden de bytes estándar; el primer valor de cada pareja indica
la hora (tal y como la devuelve
.IR time(2))
a la que se produce un segundo de salto;
el segundo indica el número
.I total
de segundos de salto a aplicar después del instante dado.
Las parejas de valores se almacenan en orden ascedente de tiempo.
.PP
A continuación, exiten indicadores estándar/incorporado
.IR tzh_ttisstdcnt ,
cada uno almacenado como un valor de un byte;
indican si los instantes de transición asociados con los tipos de hora local
se especificaron como una hora estándar o como una hora del reloj
incorporado, y se usan cuando un fichero de huso horario se usa para
manejar variables de entorno de huso horario al estilo POSIX.
.PP
Finalmente, hay indicadores UTC/local
.IR tzh_ttisgmtcnt ,
cada uno almacenado como un valor de un byte;
indican si los instantes de transición asociados con los tipos de hora local
se especificaron como horas UTC o locales, y se usan cuando un fichero de
huso horario se usa para manejar variables de entorno de huso horario al
estilo POSIX.
.PP
.I Localtime
usa la primera estructura
.I ttinfo
de hora estándar del fichero
(o, simplemente, la primera estructura
.I ttinfo
en ausencia de un estructura de hora estándar)
si o bien
.I tzh_timecnt
es cero o bien el argumento de tiempo es menor que el primer instante de
transición almacenado en el fichero.
.\" .SH VÉASE TAMBIÉN
.\" newctime(3)
|