focal (5) tzfile.5.gz

Provided by: manpages-de_2.16-1_all bug

BEZEICHNUNG

       tzfile - Zeitzonen-Informationen

BESCHREIBUNG

       Die  von  tzset(3)  verwandten Zeitzoneninformationsdateien werden typischerweise unter einem Verzeichnis
       mit Namen der Art /usr/share/zoneinfo gefunden. Diese Dateien fangen mit einem 44-Byte-Vorspann  an,  der
       die folgenden Felder enthält:

       * Die magische Vierbyte-ASCII-Sequenz “TZif” identifiziert die Datei als Zeitzoneninformationsdatei.

       * Ein  Byte  identifiziert die Version des Dateiformats (Stand 2017 entweder ein ASCII NUL oder “2”, oder
         “3”).

       * Fünfzehn Bytes, die Nullen enthalten, sind für zukünftige Nutzung reserviert.

       * Sechs Vierbyte-Ganzzahlwerte, geschrieben in einer Standard-Byte-Reihenfolge (das »high-order«-Byte des
         Wertes ist zuerst geschrieben). Diese Werte sind, in Reihenfolge:

         tzh_ttisgmtcnt
                Anzahl der in der Datei hinterlegten UT-/Lokal-Kennziffern

         tzh_ttisstdcnt
                Anzahl der in der Datei gespeicherten Standard-/Wall-Kennziffern

         tzh_leapcnt
                Anzahl der Schaltsekunden, für die Einträge in der Datei gespeichert sind

         tzh_timecnt
                Anzahl der Übergangszeiten, für die Einträge in der Datei gespeichert sind

         tzh_typecnt
                Anzahl der lokalen Zeit-Typen, für die Einträge in der Datei gespeichert sind (dürfen nicht Null
                sein)

         tzh_charcnt
                Anzahl der Bytes für in der Datei gespeicherte Zeitzonen-Abkürzungen

       Der vorgenannte Vorspann wird von den folgenden Feldern,  deren  Länge  abhängig  von  den  Inhalten  des
       Vorspanns ist, gefolgt:

       * tzh_timecnt:  In  absteigender  Reihenfolge sortierte vorzeichenbehaftete Vierbyte-Ganzzahlwerte. Diese
         Werte werden in Standard-Byte-Reihenfolge geschrieben. Jeder wird als Übergangszeit  (wie  von  time(2)
         zurückgeliefert) verwandt, zu der sich die Regeln zur Berechnung der lokalen Zeit ändern.

       * tzh_timecnt:  1-Byte-Ganzzahlwerte. Jeder außer dem letzten teilt mit, welcher der verschiedenen in der
         Datei beschriebenen Arten lokaler Zeittypen mit welcher Zeitperiode, die mit der identisch  indizierten
         Übergangszeit  beginnt  und  bis  zur  (aber  ausschließlich)  der  nächsten  Übergangszeit  fortläuft,
         zugeordnet ist. (Der letzte Zeittyp ist nur zur Konsistenzprüfung  mit  der  nachfolgend  beschriebenen
         POSIX-artigen TZ-Zeichenkette vorhanden.) Diese Werte dienen als Index für das nächste Feld.

       * tzh_typecnt: ttinfo-Einträge, jeder wie folgt definiert:

              struct ttinfo {
                   int32_t        tt_gmtoff;
                   unsigned char  tt_isdst;
                   unsigned char  tt_abbrind;
              };

         Jede  Struktur besteht aus einem vorzeichenbehafteten 4-Byte-Ganzzahlwert für tt_gmtoff, geschrieben in
         einer Standard-Byte-Reihenfolge, gefolgt von den 1-Byte-Werten für  tt_isdst  und  für  tt_abbrind.  In
         jeder Struktur legt tt_gmtoff die Anzahl Sekunden fest, die zu UT addiert werden, tt_isdst bestimmt, ob
         tm_isdst von localtime(3) gesetzt  werden  soll  und  tt_abbrind  entspricht  dem  Index  im  Feld  der
         Abkürzungsbytes für Zeitzonen, die den ttinfo-Strukturen in der Datei folgen.

       * tzh_leapcnt-Paare  von  4-Byte-Werten,  geschrieben  in Standard-Byte-Reihenfolge. Der erste Wert jedes
         Paares bezeichnet den nicht negativen Zeitpunkt (Rückgabewert von time(2)), zu dem  die  Schaltsekunden
         auftreten.  Der zweite bestimmt die gesamte Anzahl der Schaltsekunden, die während der Zeitperiode, die
         zu dem angegebenen Zeitpunkt beginnt, eingelegt werden sollen. Die  Wertepaare  sind  in  aufsteigender
         Folge nach der Zeit sortiert. Jeder Übergang ist für eine Schaltsekunde, entweder positiv oder negativ.
         Übergänge sind immer durch mindestens 28 Tage minus einer Sekunde getrennt.

       * tzh_ttisstdcnt Standard-/Wall-Kennziffern, jede wird als 1-Byte-Wert gespeichert. Sie geben an, ob  die
         Übergangszeiten,  die  den  lokalen  Zeit-Typen zugeordnet sind, als Standard-Zeit oder als »wall clock
         time« angegeben wurden. Sie werden verwendet, wenn eine Zonendatei für die  Verarbeitung  POSIX-artiger
         Zeitzonen-Umgebungsvariablen eingesetzt wird.

       * tzh_ttisgmtcnt UT-/Lokal-Kennziffern, jede als 1-Byte-Wert gespeichert. Sie besagen, ob die den lokalen
         Zeit-Typen zugeordneten Übergangszeiten als UT oder  als  lokale  Zeit  angegeben  wurden.  Sie  werden
         verwendet,  wenn  eine  Zonendatei  für  die  Verarbeitung  POSIX-artiger  Zeitzonen-Umgebungsvariablen
         eingesetzt wird.

       Die Funktion localtime(3) verwendet den ersten ttinfo-Eintrag für Standardzeit in der Datei (oder einfach
       den  ersten ttinfo-Eintrag, wenn kein Standardzeit-Eintrag existiert), wenn entweder tzh_timecnt Null ist
       oder das Zeit-Argument kleiner ist als der erste in der Datei abgelegte Übergangszeitpunkt.

ANMERKUNGEN

       Diese Handbuchseite beschreibt <tzfile.h> aus dem Glibc-Quelltext (siehe timezone/tzfile.h).

       Es scheint, dass timezone tzfile intern verwendet, aber Glibc das nicht in der Anwendungsebene  verfügbar
       macht.  Der  Grund  ist  höchstwahrscheinlich,  dass  die  standardisierten Funktionen sinnvoller, besser
       portierbar und tatsächlich von Glibc dokumentiert sind. Vermutlich ist es nur in Glibc enthalten, um  die
       nicht von Glibc (sondern einer anderen Organisation) gepflegten Zeitzonendaten zu unterstützen.

   Version-2-Format
       Für  Zeitzonen-Dateien im Version-2-Format folgen dem oben Beschriebenen (Vorspann und Daten) ein zweiter
       Vorspann und Daten in einem ähnlichen Format. Der Unterschied besteht darin, dass die Übergangszeiten und
       Schaltsekundenzeiten  jeweils  mit  jeweils  acht  Byte kodiert werden (Schaltsekundenzahlen bleiben vier
       Bytes). Nach dem  zweiten  Vorspann  und  den  Daten  folgt  eine  durch  Zeilenumbrüche  eingeschlossene
       Zeichenkette  im Stil von POSIX-Zeitzonen-Umgebungsvariablen. Sie ist für die Behandlung der Momente nach
       der letzten in der Datei gespeicherten Übergangszeit  oder  für  alle  Momente,  falls  die  Datei  keine
       Übergänge  enthält,  gedacht.  Die  POSIX-artige  TZ-Zeichenkette  ist  leer  (d.h.  nichts  zwischen den
       Zeilenumbrüchen), falls es keine POSIX-Darstellung für solche Momente gibt. Falls nicht  leer,  muss  die
       POSIX-artige  Zeichenkette  mit  dem  lokalen  Zeittyp nach der letzten Übergangszeit, falls diese in den
       Acht-Byte-Daten vorhanden ist, übereinstimmen. Falls die  letzte  Übergangszeit  bei  der  beispielhaften
       Zeichenkette  “WET0WEST,M3.5.0,M10.5.0/3”  im Juli gewesen ist, dann muss der lokale Übergangszeittyp die
       Sommerzeit festlegen, die mit “WEST” d.h. eine Stunde östlich von UT,  festgelegt  wird.  Falls  es  auch
       mindestens  einen Übergang gibt, wird der Zeittyp 0 der Zeitperiode von der unendlichen Vergangenheit bis
       zu, aber nicht einschließlich der ersten Übergangszeit zugeordnet.

   Version-3-Format
       Für  Zeitzonendateien  im  Version-3-Format  darf  die   POSIX-TZ-artige   Zeichenkette   zwei   kleinere
       Erweiterungen  gegenüber dem POSIX-TZ-Format verwenden, wie diese in newtzset(3) beschrieben sind. Zuerst
       darf der Stundenanteil seiner Übergangszeiten vorzeichenbehaftet und im Bereich von -167  bis  167  sein,
       statt  wie  von  POSIX  verlangt vorzeichenlos im Bereich 0 bis 24. Zweitens ist die Sommerzeit das ganze
       Jahr über effektiv, falls sie am 1. Januar um 00:00 anfängt und am 31. Dezember um 24:00 endet, plus  dem
       Unterschied zwischen der Sommerzeit und der Standardzeit.

       In zukünftigen Änderungen des Formats können weitere Daten angehängt werden.

SIEHE AUCH

       time(2), localtime(3), tzset(3), tzselect(8), zdump(8), zic(8)

KOLOPHON

       Diese  Seite  ist  Teil  der  Veröffentlichung  5.03  des Projekts Linux-man-pages. Eine Beschreibung des
       Projekts, Informationen, wie Fehler gemeldet werden können sowie die aktuelle Version dieser Seite finden
       sich unter https://www.kernel.org/doc/man-pages/.

ÜBERSETZUNG

       Die deutsche Übersetzung dieser Handbuchseite wurde von Martin Eberhard Schauer <Martin.E.Schauer@gmx.de>
       und Helge Kreutzmann <debian@helgefjell.de> erstellt.

       Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder  neuer
       bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.

       Wenn  Sie  Fehler  in  der  Übersetzung  dieser  Handbuchseite  finden, schicken Sie bitte eine E-Mail an
       <debian-l10n-german@lists.debian.org>.

                                                  6. März 2019                                         TZFILE(5)