(__tzfile_read): Check that types[i].isdst is in range.
authordrepper <drepper>
Mon, 16 Nov 1998 12:01:36 +0000 (12:01 +0000)
committerdrepper <drepper>
Mon, 16 Nov 1998 12:01:36 +0000 (12:01 +0000)
time/tzfile.c

index 1bce14c..2a1a953 100644 (file)
@@ -230,6 +230,8 @@ __tzfile_read (const char *file)
          || fread_unlocked (&types[i].isdst, 1, 1, f) != 1
          || fread_unlocked (&types[i].idx, 1, 1, f) != 1)
        goto lose;
+      if (types[i].isdst > 1)
+       goto lose;
       if (types[i].idx >= chars) /* Bogus index in data file.  */
        goto lose;
       types[i].offset = (long int) decode (x);