Sync to HEAD@r271160.

This commit is contained in:
Alexander V. Chernikov 2014-09-05 13:52:39 +00:00
commit c9daea0b86
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/projects/ipfw/; revision=271164
856 changed files with 56746 additions and 7062 deletions

View File

@ -1,6 +1,42 @@
#
# $FreeBSD$
#
# Copyright (c) 2014 Kevin Lo. All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
# 1. Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
# 2. Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in the
# documentation and/or other materials provided with the distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
# SUCH DAMAGE.
#
S= ${.CURDIR}/../../..
.PATH: $S/dev/usb/misc
KMOD= uled
SRCS= opt_bus.h opt_usb.h device_if.h bus_if.h usb_if.h vnode_if.h usbdevs.h \
uled.c
.include <bsd.kmod.mk>
#
# $FreeBSD$
#
# The user-driven targets are:
#
# universe - *Really* build *everything* (buildworld and

View File

@ -3205,6 +3205,202 @@ OLD_FILES+=lib/geom/geom_concat.so.1
OLD_FILES+=lib/geom/geom_label.so.1
OLD_FILES+=lib/geom/geom_nop.so.1
OLD_FILES+=lib/geom/geom_stripe.so.1
# 20040728: GCC 3.4.2
OLD_DIRS+=usr/include/c++/3.3
OLD_FILES+=usr/include/c++/3.3/FlexLexer.h
OLD_FILES+=usr/include/c++/3.3/algorithm
OLD_FILES+=usr/include/c++/3.3/backward/algo.h
OLD_FILES+=usr/include/c++/3.3/backward/algobase.h
OLD_FILES+=usr/include/c++/3.3/backward/alloc.h
OLD_FILES+=usr/include/c++/3.3/backward/backward_warning.h
OLD_FILES+=usr/include/c++/3.3/backward/bvector.h
OLD_FILES+=usr/include/c++/3.3/backward/complex.h
OLD_FILES+=usr/include/c++/3.3/backward/defalloc.h
OLD_FILES+=usr/include/c++/3.3/backward/deque.h
OLD_FILES+=usr/include/c++/3.3/backward/fstream.h
OLD_FILES+=usr/include/c++/3.3/backward/function.h
OLD_FILES+=usr/include/c++/3.3/backward/hash_map.h
OLD_FILES+=usr/include/c++/3.3/backward/hash_set.h
OLD_FILES+=usr/include/c++/3.3/backward/hashtable.h
OLD_FILES+=usr/include/c++/3.3/backward/heap.h
OLD_FILES+=usr/include/c++/3.3/backward/iomanip.h
OLD_FILES+=usr/include/c++/3.3/backward/iostream.h
OLD_FILES+=usr/include/c++/3.3/backward/istream.h
OLD_FILES+=usr/include/c++/3.3/backward/iterator.h
OLD_FILES+=usr/include/c++/3.3/backward/list.h
OLD_FILES+=usr/include/c++/3.3/backward/map.h
OLD_FILES+=usr/include/c++/3.3/backward/multimap.h
OLD_FILES+=usr/include/c++/3.3/backward/multiset.h
OLD_FILES+=usr/include/c++/3.3/backward/new.h
OLD_FILES+=usr/include/c++/3.3/backward/ostream.h
OLD_FILES+=usr/include/c++/3.3/backward/pair.h
OLD_FILES+=usr/include/c++/3.3/backward/queue.h
OLD_FILES+=usr/include/c++/3.3/backward/rope.h
OLD_FILES+=usr/include/c++/3.3/backward/set.h
OLD_FILES+=usr/include/c++/3.3/backward/slist.h
OLD_FILES+=usr/include/c++/3.3/backward/stack.h
OLD_FILES+=usr/include/c++/3.3/backward/stream.h
OLD_FILES+=usr/include/c++/3.3/backward/streambuf.h
OLD_FILES+=usr/include/c++/3.3/backward/strstream
OLD_FILES+=usr/include/c++/3.3/backward/strstream.h
OLD_FILES+=usr/include/c++/3.3/backward/tempbuf.h
OLD_FILES+=usr/include/c++/3.3/backward/tree.h
OLD_FILES+=usr/include/c++/3.3/backward/vector.h
OLD_DIRS+=usr/include/c++/3.3/backward
OLD_FILES+=usr/include/c++/3.3/bits/atomicity.h
OLD_FILES+=usr/include/c++/3.3/bits/basic_file.h
OLD_FILES+=usr/include/c++/3.3/bits/basic_ios.h
OLD_FILES+=usr/include/c++/3.3/bits/basic_ios.tcc
OLD_FILES+=usr/include/c++/3.3/bits/basic_string.h
OLD_FILES+=usr/include/c++/3.3/bits/basic_string.tcc
OLD_FILES+=usr/include/c++/3.3/bits/boost_concept_check.h
OLD_FILES+=usr/include/c++/3.3/bits/c++config.h
OLD_FILES+=usr/include/c++/3.3/bits/c++io.h
OLD_FILES+=usr/include/c++/3.3/bits/c++locale.h
OLD_FILES+=usr/include/c++/3.3/bits/c++locale_internal.h
OLD_FILES+=usr/include/c++/3.3/bits/char_traits.h
OLD_FILES+=usr/include/c++/3.3/bits/cmath.tcc
OLD_FILES+=usr/include/c++/3.3/bits/codecvt.h
OLD_FILES+=usr/include/c++/3.3/bits/codecvt_specializations.h
OLD_FILES+=usr/include/c++/3.3/bits/concept_check.h
OLD_FILES+=usr/include/c++/3.3/bits/cpp_type_traits.h
OLD_FILES+=usr/include/c++/3.3/bits/ctype_base.h
OLD_FILES+=usr/include/c++/3.3/bits/ctype_inline.h
OLD_FILES+=usr/include/c++/3.3/bits/ctype_noninline.h
OLD_FILES+=usr/include/c++/3.3/bits/deque.tcc
OLD_FILES+=usr/include/c++/3.3/bits/fpos.h
OLD_FILES+=usr/include/c++/3.3/bits/fstream.tcc
OLD_FILES+=usr/include/c++/3.3/bits/functexcept.h
OLD_FILES+=usr/include/c++/3.3/bits/generic_shadow.h
OLD_FILES+=usr/include/c++/3.3/bits/gslice.h
OLD_FILES+=usr/include/c++/3.3/bits/gslice_array.h
OLD_FILES+=usr/include/c++/3.3/bits/gthr-default.h
OLD_FILES+=usr/include/c++/3.3/bits/gthr-posix.h
OLD_FILES+=usr/include/c++/3.3/bits/gthr-single.h
OLD_FILES+=usr/include/c++/3.3/bits/gthr.h
OLD_FILES+=usr/include/c++/3.3/bits/indirect_array.h
OLD_FILES+=usr/include/c++/3.3/bits/ios_base.h
OLD_FILES+=usr/include/c++/3.3/bits/istream.tcc
OLD_FILES+=usr/include/c++/3.3/bits/list.tcc
OLD_FILES+=usr/include/c++/3.3/bits/locale_classes.h
OLD_FILES+=usr/include/c++/3.3/bits/locale_facets.h
OLD_FILES+=usr/include/c++/3.3/bits/locale_facets.tcc
OLD_FILES+=usr/include/c++/3.3/bits/localefwd.h
OLD_FILES+=usr/include/c++/3.3/bits/mask_array.h
OLD_FILES+=usr/include/c++/3.3/bits/messages_members.h
OLD_FILES+=usr/include/c++/3.3/bits/os_defines.h
OLD_FILES+=usr/include/c++/3.3/bits/ostream.tcc
OLD_FILES+=usr/include/c++/3.3/bits/pthread_allocimpl.h
OLD_FILES+=usr/include/c++/3.3/bits/slice.h
OLD_FILES+=usr/include/c++/3.3/bits/slice_array.h
OLD_FILES+=usr/include/c++/3.3/bits/sstream.tcc
OLD_FILES+=usr/include/c++/3.3/bits/stl_algo.h
OLD_FILES+=usr/include/c++/3.3/bits/stl_algobase.h
OLD_FILES+=usr/include/c++/3.3/bits/stl_alloc.h
OLD_FILES+=usr/include/c++/3.3/bits/stl_bvector.h
OLD_FILES+=usr/include/c++/3.3/bits/stl_construct.h
OLD_FILES+=usr/include/c++/3.3/bits/stl_deque.h
OLD_FILES+=usr/include/c++/3.3/bits/stl_function.h
OLD_FILES+=usr/include/c++/3.3/bits/stl_heap.h
OLD_FILES+=usr/include/c++/3.3/bits/stl_iterator.h
OLD_FILES+=usr/include/c++/3.3/bits/stl_iterator_base_funcs.h
OLD_FILES+=usr/include/c++/3.3/bits/stl_iterator_base_types.h
OLD_FILES+=usr/include/c++/3.3/bits/stl_list.h
OLD_FILES+=usr/include/c++/3.3/bits/stl_map.h
OLD_FILES+=usr/include/c++/3.3/bits/stl_multimap.h
OLD_FILES+=usr/include/c++/3.3/bits/stl_multiset.h
OLD_FILES+=usr/include/c++/3.3/bits/stl_numeric.h
OLD_FILES+=usr/include/c++/3.3/bits/stl_pair.h
OLD_FILES+=usr/include/c++/3.3/bits/stl_pthread_alloc.h
OLD_FILES+=usr/include/c++/3.3/bits/stl_queue.h
OLD_FILES+=usr/include/c++/3.3/bits/stl_raw_storage_iter.h
OLD_FILES+=usr/include/c++/3.3/bits/stl_relops.h
OLD_FILES+=usr/include/c++/3.3/bits/stl_set.h
OLD_FILES+=usr/include/c++/3.3/bits/stl_stack.h
OLD_FILES+=usr/include/c++/3.3/bits/stl_tempbuf.h
OLD_FILES+=usr/include/c++/3.3/bits/stl_threads.h
OLD_FILES+=usr/include/c++/3.3/bits/stl_tree.h
OLD_FILES+=usr/include/c++/3.3/bits/stl_uninitialized.h
OLD_FILES+=usr/include/c++/3.3/bits/stl_vector.h
OLD_FILES+=usr/include/c++/3.3/bits/stream_iterator.h
OLD_FILES+=usr/include/c++/3.3/bits/streambuf.tcc
OLD_FILES+=usr/include/c++/3.3/bits/streambuf_iterator.h
OLD_FILES+=usr/include/c++/3.3/bits/stringfwd.h
OLD_FILES+=usr/include/c++/3.3/bits/time_members.h
OLD_FILES+=usr/include/c++/3.3/bits/type_traits.h
OLD_FILES+=usr/include/c++/3.3/bits/valarray_array.h
OLD_FILES+=usr/include/c++/3.3/bits/valarray_array.tcc
OLD_FILES+=usr/include/c++/3.3/bits/valarray_meta.h
OLD_FILES+=usr/include/c++/3.3/bits/vector.tcc
OLD_DIRS+=usr/include/c++/3.3/bits
OLD_FILES+=usr/include/c++/3.3/bitset
OLD_FILES+=usr/include/c++/3.3/cassert
OLD_FILES+=usr/include/c++/3.3/cctype
OLD_FILES+=usr/include/c++/3.3/cerrno
OLD_FILES+=usr/include/c++/3.3/cfloat
OLD_FILES+=usr/include/c++/3.3/ciso646
OLD_FILES+=usr/include/c++/3.3/climits
OLD_FILES+=usr/include/c++/3.3/clocale
OLD_FILES+=usr/include/c++/3.3/cmath
OLD_FILES+=usr/include/c++/3.3/complex
OLD_FILES+=usr/include/c++/3.3/csetjmp
OLD_FILES+=usr/include/c++/3.3/csignal
OLD_FILES+=usr/include/c++/3.3/cstdarg
OLD_FILES+=usr/include/c++/3.3/cstddef
OLD_FILES+=usr/include/c++/3.3/cstdio
OLD_FILES+=usr/include/c++/3.3/cstdlib
OLD_FILES+=usr/include/c++/3.3/cstring
OLD_FILES+=usr/include/c++/3.3/ctime
OLD_FILES+=usr/include/c++/3.3/cwchar
OLD_FILES+=usr/include/c++/3.3/cwctype
OLD_FILES+=usr/include/c++/3.3/cxxabi.h
OLD_FILES+=usr/include/c++/3.3/deque
OLD_FILES+=usr/include/c++/3.3/exception
OLD_FILES+=usr/include/c++/3.3/exception_defines.h
OLD_FILES+=usr/include/c++/3.3/ext/algorithm
OLD_FILES+=usr/include/c++/3.3/ext/enc_filebuf.h
OLD_FILES+=usr/include/c++/3.3/ext/functional
OLD_FILES+=usr/include/c++/3.3/ext/hash_map
OLD_FILES+=usr/include/c++/3.3/ext/hash_set
OLD_FILES+=usr/include/c++/3.3/ext/iterator
OLD_FILES+=usr/include/c++/3.3/ext/memory
OLD_FILES+=usr/include/c++/3.3/ext/numeric
OLD_FILES+=usr/include/c++/3.3/ext/rb_tree
OLD_FILES+=usr/include/c++/3.3/ext/rope
OLD_FILES+=usr/include/c++/3.3/ext/ropeimpl.h
OLD_FILES+=usr/include/c++/3.3/ext/slist
OLD_FILES+=usr/include/c++/3.3/ext/stdio_filebuf.h
OLD_FILES+=usr/include/c++/3.3/ext/stl_hash_fun.h
OLD_FILES+=usr/include/c++/3.3/ext/stl_hashtable.h
OLD_FILES+=usr/include/c++/3.3/ext/stl_rope.h
OLD_DIRS+=usr/include/c++/3.3/ext
OLD_FILES+=usr/include/c++/3.3/fstream
OLD_FILES+=usr/include/c++/3.3/functional
OLD_FILES+=usr/include/c++/3.3/iomanip
OLD_FILES+=usr/include/c++/3.3/ios
OLD_FILES+=usr/include/c++/3.3/iosfwd
OLD_FILES+=usr/include/c++/3.3/iostream
OLD_FILES+=usr/include/c++/3.3/istream
OLD_FILES+=usr/include/c++/3.3/iterator
OLD_FILES+=usr/include/c++/3.3/limits
OLD_FILES+=usr/include/c++/3.3/list
OLD_FILES+=usr/include/c++/3.3/locale
OLD_FILES+=usr/include/c++/3.3/map
OLD_FILES+=usr/include/c++/3.3/memory
OLD_FILES+=usr/include/c++/3.3/new
OLD_FILES+=usr/include/c++/3.3/numeric
OLD_FILES+=usr/include/c++/3.3/ostream
OLD_FILES+=usr/include/c++/3.3/queue
OLD_FILES+=usr/include/c++/3.3/set
OLD_FILES+=usr/include/c++/3.3/sstream
OLD_FILES+=usr/include/c++/3.3/stack
OLD_FILES+=usr/include/c++/3.3/stdexcept
OLD_FILES+=usr/include/c++/3.3/streambuf
OLD_FILES+=usr/include/c++/3.3/string
OLD_FILES+=usr/include/c++/3.3/typeinfo
OLD_FILES+=usr/include/c++/3.3/utility
OLD_FILES+=usr/include/c++/3.3/valarray
OLD_FILES+=usr/include/c++/3.3/vector
# 20040713: fla(4) removed.
OLD_FILES+=usr/share/man/man4/fla.4.gz
# 200407XX

View File

@ -32,7 +32,7 @@
.\" @(#)dd.1 8.2 (Berkeley) 1/13/94
.\" $FreeBSD$
.\"
.Dd April 2, 2014
.Dd August 28, 2014
.Dt DD 1
.Os
.Sh NAME
@ -408,6 +408,11 @@ To create an image of a Mode-1 CD-ROM, which is a commonly used format
for data CD-ROM disks, use a block size of 2048 bytes:
.Pp
.Dl "dd if=/dev/acd0 of=filename.iso bs=2048"
.Pp
Write a filesystem image to a memory stick, padding the end with zeros,
if necessary, to a 1MiB boundary:
.Pp
.Dl "dd if=memstick.img of=/dev/da0 bs=1m conv=noerror,sync"
.Sh SEE ALSO
.Xr cp 1 ,
.Xr mt 1 ,

View File

@ -157,6 +157,7 @@ static VAR var[] = {
{"tdnam", "TDNAM", NULL, LJUST, tdnam, 0, CHAR, NULL, 0},
{"time", "TIME", NULL, USER, cputime, 0, CHAR, NULL, 0},
{"tpgid", "TPGID", NULL, 0, kvar, KOFF(ki_tpgid), UINT, PIDFMT, 0},
{"tracer", "TRACER", NULL, 0, kvar, KOFF(ki_tracer), UINT, PIDFMT, 0},
{"tsid", "TSID", NULL, 0, kvar, KOFF(ki_tsid), UINT, PIDFMT, 0},
{"tsiz", "TSIZ", NULL, 0, kvar, KOFF(ki_tsize), PGTOK, "ld", 0},
{"tt", "TT ", NULL, 0, tname, 0, CHAR, NULL, 0},

View File

@ -29,7 +29,7 @@
.\" @(#)ps.1 8.3 (Berkeley) 4/18/94
.\" $FreeBSD$
.\"
.Dd August 7, 2014
.Dd August 27, 2014
.Dt PS 1
.Os
.Sh NAME
@ -665,6 +665,8 @@ accumulated CPU time, user + system (alias
.Cm cputime )
.It Cm tpgid
control terminal process group ID
.It Cm tracer
tracer process ID
.\".It Cm trss
.\"text resident set size (in Kbytes)
.It Cm tsid

View File

@ -118,6 +118,24 @@ static void showjob(struct job *, int);
static int jobctl;
#if JOBS
static void
jobctl_notty(void)
{
if (ttyfd >= 0) {
close(ttyfd);
ttyfd = -1;
}
if (!iflag) {
setsignal(SIGTSTP);
setsignal(SIGTTOU);
setsignal(SIGTTIN);
jobctl = 1;
return;
}
out2fmt_flush("sh: can't access tty; job control turned off\n");
mflag = 0;
}
void
setjobctl(int on)
{
@ -133,8 +151,10 @@ setjobctl(int on)
while (i <= 2 && !isatty(i))
i++;
if (i > 2 ||
(ttyfd = fcntl(i, F_DUPFD_CLOEXEC, 10)) < 0)
goto out;
(ttyfd = fcntl(i, F_DUPFD_CLOEXEC, 10)) < 0) {
jobctl_notty();
return;
}
}
if (ttyfd < 10) {
/*
@ -142,9 +162,8 @@ setjobctl(int on)
* the user's redirections.
*/
if ((i = fcntl(ttyfd, F_DUPFD_CLOEXEC, 10)) < 0) {
close(ttyfd);
ttyfd = -1;
goto out;
jobctl_notty();
return;
}
close(ttyfd);
ttyfd = i;
@ -152,11 +171,15 @@ setjobctl(int on)
do { /* while we are in the background */
initialpgrp = tcgetpgrp(ttyfd);
if (initialpgrp < 0) {
out: out2fmt_flush("sh: can't access tty; job control turned off\n");
mflag = 0;
jobctl_notty();
return;
}
if (initialpgrp != getpgrp()) {
if (!iflag) {
initialpgrp = -1;
jobctl_notty();
return;
}
kill(0, SIGTTIN);
continue;
}
@ -168,9 +191,11 @@ out: out2fmt_flush("sh: can't access tty; job control turned off\n");
tcsetpgrp(ttyfd, rootpid);
} else { /* turning job control off */
setpgid(0, initialpgrp);
tcsetpgrp(ttyfd, initialpgrp);
close(ttyfd);
ttyfd = -1;
if (ttyfd >= 0) {
tcsetpgrp(ttyfd, initialpgrp);
close(ttyfd);
ttyfd = -1;
}
setsignal(SIGTSTP);
setsignal(SIGTTOU);
setsignal(SIGTTIN);
@ -195,7 +220,8 @@ fgcmd(int argc __unused, char **argv __unused)
printjobcmd(jp);
flushout(&output);
pgrp = jp->ps[0].pid;
tcsetpgrp(ttyfd, pgrp);
if (ttyfd >= 0)
tcsetpgrp(ttyfd, pgrp);
restartjob(jp);
jp->foreground = 1;
INTOFF;
@ -847,7 +873,8 @@ forkshell(struct job *jp, union node *n, int mode)
pgrp = getpid();
else
pgrp = jp->ps[0].pid;
if (setpgid(0, pgrp) == 0 && mode == FORK_FG) {
if (setpgid(0, pgrp) == 0 && mode == FORK_FG &&
ttyfd >= 0) {
/*** this causes superfluous TIOCSPGRPS ***/
if (tcsetpgrp(ttyfd, pgrp) < 0)
error("tcsetpgrp failed, errno=%d", errno);
@ -1007,7 +1034,7 @@ waitforjob(struct job *jp, int *origstatus)
dotrap();
#if JOBS
if (jp->jobctl) {
if (tcsetpgrp(ttyfd, rootpid) < 0)
if (ttyfd >= 0 && tcsetpgrp(ttyfd, rootpid) < 0)
error("tcsetpgrp failed, errno=%d\n", errno);
}
if (jp->state == JOBSTOPPED)

View File

@ -32,7 +32,7 @@
.\" from: @(#)sh.1 8.6 (Berkeley) 5/4/95
.\" $FreeBSD$
.\"
.Dd January 26, 2014
.Dd September 4, 2014
.Dt SH 1
.Os
.Sh NAME
@ -259,6 +259,12 @@ from input when in interactive mode.
Force the shell to behave interactively.
.It Fl m Li monitor
Turn on job control (set automatically when interactive).
A new process group is created for each pipeline (called a job).
It is possible to suspend jobs or to have them run in the foreground or
in the background.
In a non-interactive shell,
this option can be set even if no terminal is available
and is useful to place processes in separate process groups.
.It Fl n Li noexec
If not interactive, read commands but do not
execute them.

View File

@ -541,7 +541,8 @@ EOF
#endif
static bfd_boolean
gld${EMULATION_NAME}_check_ld_elf_hints (const char *name, int force)
gld${EMULATION_NAME}_check_ld_elf_hints (const struct bfd_link_needed_list *l,
int force)
{
static bfd_boolean initialized;
static char *ld_elf_hints;
@ -584,10 +585,9 @@ gld${EMULATION_NAME}_check_ld_elf_hints (const char *name, int force)
if (ld_elf_hints == NULL)
return FALSE;
needed.by = NULL;
needed.name = name;
return gld${EMULATION_NAME}_search_needed (ld_elf_hints, & needed,
force);
needed.by = l->by;
needed.name = l->name;
return gld${EMULATION_NAME}_search_needed (ld_elf_hints, &needed, force);
}
EOF
# FreeBSD
@ -759,7 +759,8 @@ gld${EMULATION_NAME}_parse_ld_so_conf
}
static bfd_boolean
gld${EMULATION_NAME}_check_ld_so_conf (const char *name, int force)
gld${EMULATION_NAME}_check_ld_so_conf (const struct bfd_link_needed_list *l,
int force)
{
static bfd_boolean initialized;
static char *ld_so_conf;
@ -794,8 +795,8 @@ gld${EMULATION_NAME}_check_ld_so_conf (const char *name, int force)
return FALSE;
needed.by = NULL;
needed.name = name;
needed.by = l->by;
needed.name = l->name;
return gld${EMULATION_NAME}_search_needed (ld_so_conf, &needed, force);
}
@ -1037,7 +1038,7 @@ if [ "x${USE_LIBPATH}" = xyes ] ; then
case ${target} in
*-*-freebsd* | *-*-dragonfly*)
cat >>e${EMULATION_NAME}.c <<EOF
if (gld${EMULATION_NAME}_check_ld_elf_hints (l->name, force))
if (gld${EMULATION_NAME}_check_ld_elf_hints (l, force))
break;
EOF
# FreeBSD
@ -1046,7 +1047,7 @@ EOF
*-*-linux-* | *-*-k*bsd*-*)
# Linux
cat >>e${EMULATION_NAME}.c <<EOF
if (gld${EMULATION_NAME}_check_ld_so_conf (l->name, force))
if (gld${EMULATION_NAME}_check_ld_so_conf (l, force))
break;
EOF

View File

@ -372,6 +372,21 @@ strip_components(const char *p, int elements)
}
}
static const char*
strip_leading_slashes(const char *p)
{
/* Remove leading "/../", "//", etc. */
while (p[0] == '/' || p[0] == '\\') {
if (p[1] == '.' && p[2] == '.' && (
p[3] == '/' || p[3] == '\\')) {
p += 3; /* Remove "/..", leave "/" for next pass. */
} else
p += 1; /* Remove "/". */
}
return (p);
}
/*
* Handle --strip-components and any future path-rewriting options.
* Returns non-zero if the pathname should not be extracted.
@ -474,16 +489,7 @@ edit_pathname(struct bsdtar *bsdtar, struct archive_entry *entry)
p += 2;
slashonly = 0;
}
/* Remove leading "/../", "//", etc. */
while (p[0] == '/' || p[0] == '\\') {
if (p[1] == '.' && p[2] == '.' &&
(p[3] == '/' || p[3] == '\\')) {
p += 3; /* Remove "/..", leave "/"
* for next pass. */
slashonly = 0;
} else
p += 1; /* Remove "/". */
}
p = strip_leading_slashes(p);
} while (rp != p);
if (p != name && !bsdtar->warned_lead_slash) {
@ -504,6 +510,19 @@ edit_pathname(struct bsdtar *bsdtar, struct archive_entry *entry)
name = ".";
else
name = p;
p = archive_entry_hardlink(entry);
if (p != NULL) {
rp = strip_leading_slashes(p);
if (rp == '\0')
return (1);
if (rp != p) {
char *linkname = strdup(rp);
archive_entry_copy_hardlink(entry, linkname);
free(linkname);
}
}
} else {
/* Strip redundant leading '/' characters. */
while (name[0] == '/' && name[1] == '/')

View File

@ -301,7 +301,7 @@ template <class _Tp> struct _LIBCPP_TYPE_VIS_ONLY __is_nullptr_t
#if _LIBCPP_STD_VER > 11
template <class _Tp> struct _LIBCPP_TYPE_VIS_ONLY is_null_pointer
: public ____is_nullptr_t<typename remove_cv<_Tp>::type> {};
: public __libcpp___is_nullptr<typename remove_cv<_Tp>::type> {};
#endif
// is_integral

View File

@ -3248,7 +3248,8 @@ def : ARMPat<(ARMaddc GPR:$src, imm0_65535_neg:$imm),
def : ARMPat<(ARMadde GPR:$src, so_imm_not:$imm, CPSR),
(SBCri GPR:$src, so_imm_not:$imm)>;
def : ARMPat<(ARMadde GPR:$src, imm0_65535_neg:$imm, CPSR),
(SBCrr GPR:$src, (MOVi16 (imm_not_XFORM imm:$imm)))>;
(SBCrr GPR:$src, (MOVi16 (imm_not_XFORM imm:$imm)))>,
Requires<[IsARM, HasV6T2]>;
// Note: These are implemented in C++ code, because they have to generate
// ADD/SUBrs instructions, which use a complex pattern that a xform function

View File

@ -0,0 +1,14 @@
Index: lib/Target/ARM/ARMInstrInfo.td
===================================================================
--- lib/Target/ARM/ARMInstrInfo.td (revision 271024)
+++ lib/Target/ARM/ARMInstrInfo.td (revision 271026)
@@ -3248,7 +3248,8 @@
def : ARMPat<(ARMadde GPR:$src, so_imm_not:$imm, CPSR),
(SBCri GPR:$src, so_imm_not:$imm)>;
def : ARMPat<(ARMadde GPR:$src, imm0_65535_neg:$imm, CPSR),
- (SBCrr GPR:$src, (MOVi16 (imm_not_XFORM imm:$imm)))>;
+ (SBCrr GPR:$src, (MOVi16 (imm_not_XFORM imm:$imm)))>,
+ Requires<[IsARM, HasV6T2]>;
// Note: These are implemented in C++ code, because they have to generate
// ADD/SUBrs instructions, which use a complex pattern that a xform function

View File

@ -643,7 +643,7 @@ recv_thread(void *arg __unused)
* we can use that.
*/
if (TAILQ_EMPTY(&adist_recv_list)) {
rw_unlock(&adist_remote_lock);
mtx_unlock(&adist_recv_list_lock);
continue;
}
mtx_unlock(&adist_recv_list_lock);

View File

@ -1,4 +1,3 @@
# <pre>
# This file is in the public domain, so clarified as of
# 2009-05-17 by Arthur David Olson.
@ -35,13 +34,13 @@
# Previous editions of this database used WAT, CAT, SAT, and EAT
# for +0:00 through +3:00, respectively,
# but Mark R V Murray reports that
# `SAST' is the official abbreviation for +2:00 in the country of South Africa,
# `CAT' is commonly used for +2:00 in countries north of South Africa, and
# `WAT' is probably the best name for +1:00, as the common phrase for
# the area that includes Nigeria is ``West Africa''.
# He has heard of ``Western Sahara Time'' for +0:00 but can find no reference.
# 'SAST' is the official abbreviation for +2:00 in the country of South Africa,
# 'CAT' is commonly used for +2:00 in countries north of South Africa, and
# 'WAT' is probably the best name for +1:00, as the common phrase for
# the area that includes Nigeria is "West Africa".
# He has heard of "Western Sahara Time" for +0:00 but can find no reference.
#
# To make things confusing, `WAT' seems to have been used for -1:00 long ago;
# To make things confusing, 'WAT' seems to have been used for -1:00 long ago;
# I'd guess that this was because people needed _some_ name for -1:00,
# and at the time, far west Africa was the only major land area in -1:00.
# This usage is now obsolete, as the last use of -1:00 on the African
@ -54,7 +53,7 @@
# 2:00 SAST South Africa Standard Time
# and Murray suggests the following abbreviation:
# 1:00 WAT West Africa Time
# I realize that this leads to `WAT' being used for both -1:00 and 1:00
# I realize that this leads to 'WAT' being used for both -1:00 and 1:00
# for times before 1976, but this is the best I can think of
# until we get more information.
#
@ -131,9 +130,7 @@ Zone Africa/Gaborone 1:43:40 - LMT 1885
2:00 - CAT
# Burkina Faso
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Africa/Ouagadougou -0:06:04 - LMT 1912
0:00 - GMT
# See Africa/Abidjan.
# Burundi
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
@ -161,7 +158,7 @@ Zone Africa/Bangui 1:14:20 - LMT 1912
# Chad
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Africa/Ndjamena 1:00:12 - LMT 1912
Zone Africa/Ndjamena 1:00:12 - LMT 1912 # N'Djamena
1:00 - WAT 1979 Oct 14
1:00 1:00 WAST 1980 Mar 8
1:00 - WAT
@ -183,10 +180,20 @@ Zone Africa/Lubumbashi 1:49:52 - LMT 1897 Nov 9
Zone Africa/Brazzaville 1:01:08 - LMT 1912
1:00 - WAT
# Cote D'Ivoire
# Côte D'Ivoire / Ivory Coast
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Africa/Abidjan -0:16:08 - LMT 1912
0:00 - GMT
Link Africa/Abidjan Africa/Bamako # Mali
Link Africa/Abidjan Africa/Banjul # Gambia
Link Africa/Abidjan Africa/Conakry # Guinea
Link Africa/Abidjan Africa/Dakar # Senegal
Link Africa/Abidjan Africa/Freetown # Sierra Leone
Link Africa/Abidjan Africa/Lome # Togo
Link Africa/Abidjan Africa/Nouakchott # Mauritania
Link Africa/Abidjan Africa/Ouagadougou # Burkina Faso
Link Africa/Abidjan Africa/Sao_Tome # São Tomé and Príncipe
Link Africa/Abidjan Atlantic/St_Helena # St Helena
# Djibouti
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
@ -231,13 +238,9 @@ Rule Egypt 1990 1994 - May 1 1:00 1:00 S
# Egyptians would approve the cancellation."
#
# Egypt to cancel daylight saving time
# <a href="http://www.almasryalyoum.com/en/node/407168">
# http://www.almasryalyoum.com/en/node/407168
# </a>
# or
# <a href="http://www.worldtimezone.com/dst_news/dst_news_egypt04.html">
# http://www.worldtimezone.com/dst_news/dst_news_egypt04.html
# </a>
Rule Egypt 1995 2010 - Apr lastFri 0:00s 1:00 S
Rule Egypt 1995 2005 - Sep lastThu 24:00 0 -
# From Steffen Thorsen (2006-09-19):
@ -249,7 +252,7 @@ Rule Egypt 2006 only - Sep 21 24:00 0 -
# From Dirk Losch (2007-08-14):
# I received a mail from an airline which says that the daylight
# saving time in Egypt will end in the night of 2007-09-06 to 2007-09-07.
# From Jesper Norgaard Welen (2007-08-15): [The following agree:]
# From Jesper Nørgaard Welen (2007-08-15): [The following agree:]
# http://www.nentjes.info/Bill/bill5.htm
# http://www.timeanddate.com/worldclock/city.html?n=53
# From Steffen Thorsen (2007-09-04): The official information...:
@ -288,15 +291,9 @@ Rule Egypt 2007 only - Sep Thu>=1 24:00 0 -
#
# timeanddate[2] and another site I've found[3] also support that.
#
# [1] <a href="https://bugzilla.redhat.com/show_bug.cgi?id=492263">
# https://bugzilla.redhat.com/show_bug.cgi?id=492263
# </a>
# [2] <a href="http://www.timeanddate.com/worldclock/clockchange.html?n=53">
# http://www.timeanddate.com/worldclock/clockchange.html?n=53
# </a>
# [3] <a href="http://wwp.greenwichmeantime.com/time-zone/africa/egypt/">
# http://wwp.greenwichmeantime.com/time-zone/africa/egypt/
# </a>
# [1] https://bugzilla.redhat.com/show_bug.cgi?id=492263
# [2] http://www.timeanddate.com/worldclock/clockchange.html?n=53
# [3] http://wwp.greenwichmeantime.com/time-zone/africa/egypt/
# From Arthur David Olson (2009-04-20):
# In 2009 (and for the next several years), Ramadan ends before the fourth
@ -306,14 +303,10 @@ Rule Egypt 2007 only - Sep Thu>=1 24:00 0 -
# From Steffen Thorsen (2009-08-11):
# We have been able to confirm the August change with the Egyptian Cabinet
# Information and Decision Support Center:
# <a href="http://www.timeanddate.com/news/time/egypt-dst-ends-2009.html">
# http://www.timeanddate.com/news/time/egypt-dst-ends-2009.html
# </a>
#
# The Middle East News Agency
# <a href="http://www.mena.org.eg/index.aspx">
# http://www.mena.org.eg/index.aspx
# </a>
# also reports "Egypt starts winter time on August 21"
# today in article numbered "71, 11/08/2009 12:25 GMT."
# Only the title above is available without a subscription to their service,
@ -321,19 +314,14 @@ Rule Egypt 2007 only - Sep Thu>=1 24:00 0 -
# (at least today).
# From Alexander Krivenyshev (2010-07-20):
# According to News from Egypt - Al-Masry Al-Youm Egypt's cabinet has
# According to News from Egypt - Al-Masry Al-Youm Egypt's cabinet has
# decided that Daylight Saving Time will not be used in Egypt during
# Ramadan.
#
# Arabic translation:
# "Clocks to go back during Ramadan--and then forward again"
# <a href="http://www.almasryalyoum.com/en/news/clocks-go-back-during-ramadan-and-then-forward-again">
# "Clocks to go back during Ramadan - and then forward again"
# http://www.almasryalyoum.com/en/news/clocks-go-back-during-ramadan-and-then-forward-again
# </a>
# or
# <a href="http://www.worldtimezone.com/dst_news/dst_news_egypt02.html">
# http://www.worldtimezone.com/dst_news/dst_news_egypt02.html
# </a>
# From Ahmad El-Dardiry (2014-05-07):
# Egypt is to change back to Daylight system on May 15
@ -433,10 +421,15 @@ Zone Africa/Asmara 2:35:32 - LMT 1870
3:00 - EAT
# Ethiopia
# From Paul Eggert (2006-03-22):
# Shanks & Pottenger write that Ethiopia had six narrowly-spaced time zones
# between 1870 and 1890, and that they merged to 38E50 (2:35:20) in 1890.
# We'll guess that 38E50 is for Adis Dera.
# From Paul Eggert (2014-07-31):
# Like the Swahili of Kenya and Tanzania, many Ethiopians keep a
# 12-hour clock starting at our 06:00, so their "8 o'clock" is our
# 02:00 or 14:00. Keep this in mind when you ask the time in Amharic.
#
# Shanks & Pottenger write that Ethiopia had six narrowly-spaced time
# zones between 1870 and 1890, that they merged to 38E50 (2:35:20) in
# 1890, and that they switched to 3:00 on 1936-05-05. Perhaps 38E50
# was for Adis Dera. Quite likely the Shanks data are wrong anyway.
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Africa/Addis_Ababa 2:34:48 - LMT 1870
2:35:20 - ADMT 1936 May 5 # Adis Dera MT
@ -448,28 +441,24 @@ Zone Africa/Libreville 0:37:48 - LMT 1912
1:00 - WAT
# Gambia
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Africa/Banjul -1:06:36 - LMT 1912
-1:06:36 - BMT 1935 # Banjul Mean Time
-1:00 - WAT 1964
0:00 - GMT
# See Africa/Abidjan.
# Ghana
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
# Whitman says DST was observed from 1931 to ``the present'';
# go with Shanks & Pottenger.
Rule Ghana 1936 1942 - Sep 1 0:00 0:20 GHST
Rule Ghana 1936 1942 - Dec 31 0:00 0 GMT
# Whitman says DST was observed from 1931 to "the present";
# Shanks & Pottenger say 1936 to 1942;
# and September 1 to January 1 is given by:
# Scott Keltie J, Epstein M (eds), The Statesman's Year-Book,
# 57th ed. Macmillan, London (1920), OCLC 609408015, pp xxviii.
# For lack of better info, assume DST was observed from 1920 to 1942.
Rule Ghana 1920 1942 - Sep 1 0:00 0:20 GHST
Rule Ghana 1920 1942 - Dec 31 0:00 0 GMT
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Africa/Accra -0:00:52 - LMT 1918
0:00 Ghana %s
# Guinea
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Africa/Conakry -0:54:52 - LMT 1912
0:00 - GMT 1934 Feb 26
-1:00 - WAT 1960
0:00 - GMT
# See Africa/Abidjan.
# Guinea-Bissau
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
@ -577,18 +566,8 @@ Zone Africa/Blantyre 2:20:00 - LMT 1903 Mar
2:00 - CAT
# Mali
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Africa/Bamako -0:32:00 - LMT 1912
0:00 - GMT 1934 Feb 26
-1:00 - WAT 1960 Jun 20
0:00 - GMT
# Mauritania
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Africa/Nouakchott -1:03:48 - LMT 1912
0:00 - GMT 1934 Feb 26
-1:00 - WAT 1960 Nov 28
0:00 - GMT
# See Africa/Abidjan.
# Mauritius
@ -612,9 +591,7 @@ Zone Africa/Nouakchott -1:03:48 - LMT 1912
# From Steffen Thorsen (2008-07-10):
# According to
# <a href="http://www.lexpress.mu/display_article.php?news_id=111216">
# http://www.lexpress.mu/display_article.php?news_id=111216
# </a>
# (in French), Mauritius will start and end their DST a few days earlier
# than previously announced (2008-11-01 to 2009-03-31). The new start
# date is 2008-10-26 at 02:00 and the new end date is 2009-03-27 (no time
@ -633,18 +610,13 @@ Zone Africa/Nouakchott -1:03:48 - LMT 1912
# published on Monday, June 30, 2008...
#
# I guess that article in French "Le gouvernement avance l'introduction
# de l'heure d'ete" stating that DST in Mauritius starting on October 26
# and ending on March 27, 2009 is the most recent one.
# ...
# <a href="http://www.worldtimezone.com/dst_news/dst_news_mauritius02.html">
# de l'heure d'été" stating that DST in Mauritius starting on October 26
# and ending on March 27, 2009 is the most recent one....
# http://www.worldtimezone.com/dst_news/dst_news_mauritius02.html
# </a>
# From Riad M. Hossen Ally (2008-08-03):
# The Government of Mauritius weblink
# <a href="http://www.gov.mu/portal/site/pmosite/menuitem.4ca0efdee47462e7440a600248a521ca/?content_id=4728ca68b2a5b110VgnVCM1000000a04a8c0RCRD">
# http://www.gov.mu/portal/site/pmosite/menuitem.4ca0efdee47462e7440a600248a521ca/?content_id=4728ca68b2a5b110VgnVCM1000000a04a8c0RCRD
# </a>
# Cabinet Decision of July 18th, 2008 states as follows:
#
# 4. ...Cabinet has agreed to the introduction into the National Assembly
@ -654,33 +626,25 @@ Zone Africa/Nouakchott -1:03:48 - LMT 1912
# States of America. It will start at two o'clock in the morning on the
# last Sunday of October and will end at two o'clock in the morning on
# the last Sunday of March the following year. The summer time for the
# year 2008 - 2009 will, therefore, be effective as from 26 October 2008
# year 2008-2009 will, therefore, be effective as from 26 October 2008
# and end on 29 March 2009.
# From Ed Maste (2008-10-07):
# THE TIME BILL (No. XXVII of 2008) Explanatory Memorandum states the
# beginning / ending of summer time is 2 o'clock standard time in the
# morning of the last Sunday of October / last Sunday of March.
# <a href="http://www.gov.mu/portal/goc/assemblysite/file/bill2708.pdf">
# http://www.gov.mu/portal/goc/assemblysite/file/bill2708.pdf
# </a>
# From Steffen Thorsen (2009-06-05):
# According to several sources, Mauritius will not continue to observe
# DST the coming summer...
#
# Some sources, in French:
# <a href="http://www.defimedia.info/news/946/Rashid-Beebeejaun-:-%C2%AB-L%E2%80%99heure-d%E2%80%99%C3%A9t%C3%A9-ne-sera-pas-appliqu%C3%A9e-cette-ann%C3%A9e-%C2%BB">
# http://www.defimedia.info/news/946/Rashid-Beebeejaun-:-%C2%AB-L%E2%80%99heure-d%E2%80%99%C3%A9t%C3%A9-ne-sera-pas-appliqu%C3%A9e-cette-ann%C3%A9e-%C2%BB
# </a>
# <a href="http://lexpress.mu/Story/3398~Beebeejaun---Les-objectifs-d-%C3%A9conomie-d-%C3%A9nergie-de-l-heure-d-%C3%A9t%C3%A9-ont-%C3%A9t%C3%A9-atteints-">
# http://lexpress.mu/Story/3398~Beebeejaun---Les-objectifs-d-%C3%A9conomie-d-%C3%A9nergie-de-l-heure-d-%C3%A9t%C3%A9-ont-%C3%A9t%C3%A9-atteints-
# </a>
#
# Our wrap-up:
# <a href="http://www.timeanddate.com/news/time/mauritius-dst-will-not-repeat.html">
# http://www.timeanddate.com/news/time/mauritius-dst-will-not-repeat.html
# </a>
# From Arthur David Olson (2009-07-11):
# The "mauritius-dst-will-not-repeat" wrapup includes this:
@ -704,7 +668,7 @@ Zone Indian/Mayotte 3:00:56 - LMT 1911 Jul # Mamoutzou
3:00 - EAT
# Morocco
# See the `europe' file for Spanish Morocco (Africa/Ceuta).
# See the 'europe' file for Spanish Morocco (Africa/Ceuta).
# From Alex Krivenyshev (2008-05-09):
# Here is an article that Morocco plan to introduce Daylight Saving Time between
@ -712,60 +676,43 @@ Zone Indian/Mayotte 3:00:56 - LMT 1911 Jul # Mamoutzou
#
# "... Morocco is to save energy by adjusting its clock during summer so it will
# be one hour ahead of GMT between 1 June and 27 September, according to
# Communication Minister and Gov ernment Spokesman, Khalid Naciri...."
# Communication Minister and Government Spokesman, Khalid Naciri...."
#
# <a href="http://www.worldtimezone.net/dst_news/dst_news_morocco01.html">
# http://www.worldtimezone.net/dst_news/dst_news_morocco01.html
# </a>
# OR
# <a href="http://en.afrik.com/news11892.html">
# http://en.afrik.com/news11892.html
# </a>
# From Alex Krivenyshev (2008-05-09):
# The Morocco time change can be confirmed on Morocco web site Maghreb Arabe Presse:
# <a href="http://www.map.ma/eng/sections/box3/morocco_shifts_to_da/view">
# http://www.map.ma/eng/sections/box3/morocco_shifts_to_da/view
# </a>
#
# Morocco shifts to daylight time on June 1st through September 27, Govt.
# spokesman.
# From Patrice Scattolin (2008-05-09):
# According to this article:
# <a href="http://www.avmaroc.com/actualite/heure-dete-comment-a127896.html">
# http://www.avmaroc.com/actualite/heure-dete-comment-a127896.html
# </a>
# (and republished here:
# <a href="http://www.actu.ma/heure-dete-comment_i127896_0.html">
# http://www.actu.ma/heure-dete-comment_i127896_0.html
# </a>
# )
# the changes occurs at midnight:
# (and republished here: <http://www.actu.ma/heure-dete-comment_i127896_0.html>)
# the changes occur at midnight:
#
# saturday night may 31st at midnight (which in french is to be
# intrepreted as the night between saturday and sunday)
# sunday night the 28th at midnight
# Saturday night May 31st at midnight (which in French is to be
# interpreted as the night between Saturday and Sunday)
# Sunday night the 28th at midnight
#
# Seeing that the 28th is monday, I am guessing that she intends to say
# the midnight of the 28th which is the midnight between sunday and
# monday, which jives with other sources that say that it's inclusive
# june1st to sept 27th.
# Seeing that the 28th is Monday, I am guessing that she intends to say
# the midnight of the 28th which is the midnight between Sunday and
# Monday, which jives with other sources that say that it's inclusive
# June 1st to Sept 27th.
#
# The decision was taken by decree *2-08-224 *but I can't find the decree
# published on the web.
#
# It's also confirmed here:
# <a href="http://www.maroc.ma/NR/exeres/FACF141F-D910-44B0-B7FA-6E03733425D1.htm">
# http://www.maroc.ma/NR/exeres/FACF141F-D910-44B0-B7FA-6E03733425D1.htm
# </a>
# on a government portal as being between june 1st and sept 27th (not yet
# posted in english).
# on a government portal as being between June 1st and Sept 27th (not yet
# posted in English).
#
# The following google query will generate many relevant hits:
# <a href="http://www.google.com/search?hl=en&q=Conseil+de+gouvernement+maroc+heure+avance&btnG=Search">
# The following Google query will generate many relevant hits:
# http://www.google.com/search?hl=en&q=Conseil+de+gouvernement+maroc+heure+avance&btnG=Search
# </a>
# From Steffen Thorsen (2008-08-27):
# Morocco will change the clocks back on the midnight between August 31
@ -773,47 +720,32 @@ Zone Indian/Mayotte 3:00:56 - LMT 1911 Jul # Mamoutzou
# of September:
#
# One article about it (in French):
# <a href="http://www.menara.ma/fr/Actualites/Maroc/Societe/ci.retour_a_l_heure_gmt_a_partir_du_dimanche_31_aout_a_minuit_officiel_.default">
# http://www.menara.ma/fr/Actualites/Maroc/Societe/ci.retour_a_l_heure_gmt_a_partir_du_dimanche_31_aout_a_minuit_officiel_.default
# </a>
#
# We have some further details posted here:
# <a href="http://www.timeanddate.com/news/time/morocco-ends-dst-early-2008.html">
# http://www.timeanddate.com/news/time/morocco-ends-dst-early-2008.html
# </a>
# From Steffen Thorsen (2009-03-17):
# Morocco will observe DST from 2009-06-01 00:00 to 2009-08-21 00:00 according
# to many sources, such as
# <a href="http://news.marweb.com/morocco/entertainment/morocco-daylight-saving.html">
# http://news.marweb.com/morocco/entertainment/morocco-daylight-saving.html
# </a>
# <a href="http://www.medi1sat.ma/fr/depeche.aspx?idp=2312">
# http://www.medi1sat.ma/fr/depeche.aspx?idp=2312
# </a>
# (French)
#
# Our summary:
# <a href="http://www.timeanddate.com/news/time/morocco-starts-dst-2009.html">
# http://www.timeanddate.com/news/time/morocco-starts-dst-2009.html
# </a>
# From Alexander Krivenyshev (2009-03-17):
# Here is a link to official document from Royaume du Maroc Premier Ministre,
# Ministere de la Modernisation des Secteurs Publics
# Ministère de la Modernisation des Secteurs Publics
#
# Under Article 1 of Royal Decree No. 455-67 of Act 23 safar 1387 (2 june 1967)
# concerning the amendment of the legal time, the Ministry of Modernization of
# Public Sectors announced that the official time in the Kingdom will be
# advanced 60 minutes from Sunday 31 May 2009 at midnight.
#
# <a href="http://www.mmsp.gov.ma/francais/Actualites_fr/PDF_Actualites_Fr/HeureEte_FR.pdf">
# http://www.mmsp.gov.ma/francais/Actualites_fr/PDF_Actualites_Fr/HeureEte_FR.pdf
# </a>
#
# <a href="http://www.worldtimezone.com/dst_news/dst_news_morocco03.html">
# http://www.worldtimezone.com/dst_news/dst_news_morocco03.html
# </a>
# From Steffen Thorsen (2010-04-13):
# Several news media in Morocco report that the Ministry of Modernization
@ -821,14 +753,10 @@ Zone Indian/Mayotte 3:00:56 - LMT 1911 Jul # Mamoutzou
# 2010-05-02 to 2010-08-08.
#
# Example:
# <a href="http://www.lavieeco.com/actualites/4099-le-maroc-passera-a-l-heure-d-ete-gmt1-le-2-mai.html">
# http://www.lavieeco.com/actualites/4099-le-maroc-passera-a-l-heure-d-ete-gmt1-le-2-mai.html
# </a>
# (French)
# Our page:
# <a href="http://www.timeanddate.com/news/time/morocco-starts-dst-2010.html">
# http://www.timeanddate.com/news/time/morocco-starts-dst-2010.html
# </a>
# From Dan Abitol (2011-03-30):
# ...Rules for Africa/Casablanca are the following (24h format)
@ -838,34 +766,20 @@ Zone Indian/Mayotte 3:00:56 - LMT 1911 Jul # Mamoutzou
# The change was broadcast on the FM Radio
# I ve called ANRT (telecom regulations in Morocco) at
# +212.537.71.84.00
# <a href="http://www.anrt.net.ma/fr/">
# http://www.anrt.net.ma/fr/
# </a>
# They said that
# <a href="http://www.map.ma/fr/sections/accueil/l_heure_legale_au_ma/view">
# http://www.map.ma/fr/sections/accueil/l_heure_legale_au_ma/view
# </a>
# is the official publication to look at.
# They said that the decision was already taken.
#
# More articles in the press
# <a href="http://www.yabiladi.com/articles/details/5058/secret-l-heure-d-ete-maroc-lev">
# http://www.yabiladi.com/articles/details/5058/secret-l-heure-d-ete-maroc-lev
# </a>
# e.html
# <a href="http://www.lematin.ma/Actualite/Express/Article.asp?id=148923">
# http://www.yabiladi.com/articles/details/5058/secret-l-heure-d-ete-maroc-leve.html
# http://www.lematin.ma/Actualite/Express/Article.asp?id=148923
# </a>
# <a href="http://www.lavieeco.com/actualite/Le-Maroc-passe-sur-GMT%2B1-a-partir-de-dim">
# http://www.lavieeco.com/actualite/Le-Maroc-passe-sur-GMT%2B1-a-partir-de-dim
# anche-prochain-5538.html
# </a>
# From Petr Machata (2011-03-30):
# They have it written in English here:
# <a href="http://www.map.ma/eng/sections/home/morocco_to_spring_fo/view">
# http://www.map.ma/eng/sections/home/morocco_to_spring_fo/view
# </a>
#
# It says there that "Morocco will resume its standard time on July 31,
# 2011 at midnight." Now they don't say whether they mean midnight of
@ -873,20 +787,16 @@ Zone Indian/Mayotte 3:00:56 - LMT 1911 Jul # Mamoutzou
# also been like that in the past.
# From Alexander Krivenyshev (2012-03-09):
# According to Infom&eacute;diaire web site from Morocco (infomediaire.ma),
# on March 9, 2012, (in French) Heure l&eacute;gale:
# Le Maroc adopte officiellement l'heure d'&eacute;t&eacute;
# <a href="http://www.infomediaire.ma/news/maroc/heure-l%C3%A9gale-le-maroc-adopte-officiellement-lheure-d%C3%A9t%C3%A9">
# According to Infomédiaire web site from Morocco (infomediaire.ma),
# on March 9, 2012, (in French) Heure légale:
# Le Maroc adopte officiellement l'heure d'été
# http://www.infomediaire.ma/news/maroc/heure-l%C3%A9gale-le-maroc-adopte-officiellement-lheure-d%C3%A9t%C3%A9
# </a>
# Governing Council adopted draft decree, that Morocco DST starts on
# the last Sunday of March (March 25, 2012) and ends on
# last Sunday of September (September 30, 2012)
# except the month of Ramadan.
# or (brief)
# <a href="http://www.worldtimezone.com/dst_news/dst_news_morocco06.html">
# http://www.worldtimezone.com/dst_news/dst_news_morocco06.html
# </a>
# From Arthur David Olson (2012-03-10):
# The infomediaire.ma source indicates that the system is to be in
@ -897,17 +807,13 @@ Zone Indian/Mayotte 3:00:56 - LMT 1911 Jul # Mamoutzou
# From Christophe Tropamer (2012-03-16):
# Seen Morocco change again:
# <a href="http://www.le2uminutes.com/actualite.php">
# http://www.le2uminutes.com/actualite.php
# </a>
# "...&agrave; partir du dernier dimance d'avril et non fins mars,
# comme annonc&eacute; pr&eacute;c&eacute;demment."
# "...à partir du dernier dimanche d'avril et non fins mars,
# comme annoncé précédemment."
# From Milamber Space Network (2012-07-17):
# The official return to GMT is announced by the Moroccan government:
# <a href="http://www.mmsp.gov.ma/fr/actualites.aspx?id=288">
# http://www.mmsp.gov.ma/fr/actualites.aspx?id=288 [in French]
# </a>
#
# Google translation, lightly edited:
# Back to the standard time of the Kingdom (GMT)
@ -1052,7 +958,7 @@ Zone Africa/Casablanca -0:30:20 - LMT 1913 Oct 26
# Assume that this has been true since Western Sahara switched to GMT,
# since most of it was then controlled by Morocco.
Zone Africa/El_Aaiun -0:52:48 - LMT 1934 Jan
Zone Africa/El_Aaiun -0:52:48 - LMT 1934 Jan # El Aaiún
-1:00 - WAT 1976 Apr 14
0:00 Morocco WE%sT
@ -1102,15 +1008,17 @@ Zone Africa/Niamey 0:08:28 - LMT 1912
Zone Africa/Lagos 0:13:36 - LMT 1919 Sep
1:00 - WAT
# Reunion
# Réunion
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Indian/Reunion 3:41:52 - LMT 1911 Jun # Saint-Denis
4:00 - RET # Reunion Time
4:00 - RET # Réunion Time
#
# Scattered Islands (Iles Eparses) administered from Reunion are as follows.
# Crozet Islands also observes Réunion time; see the 'antarctica' file.
#
# Scattered Islands (Îles Éparses) administered from Réunion are as follows.
# The following information about them is taken from
# Iles Eparses (www.outre-mer.gouv.fr/domtom/ile.htm, 1997-07-22, in French;
# no longer available as of 1999-08-17).
# Îles Éparses (<http://www.outre-mer.gouv.fr/domtom/ile.htm>, 1997-07-22,
# in French; no longer available as of 1999-08-17).
# We have no info about their time zone histories.
#
# Bassas da India - uninhabited
@ -1125,28 +1033,17 @@ Zone Africa/Kigali 2:00:16 - LMT 1935 Jun
2:00 - CAT
# St Helena
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Atlantic/St_Helena -0:22:48 - LMT 1890 # Jamestown
-0:22:48 - JMT 1951 # Jamestown Mean Time
0:00 - GMT
# See Africa/Abidjan.
# The other parts of the St Helena territory are similar:
# Tristan da Cunha: on GMT, say Whitman and the CIA
# Ascension: on GMT, says usno1995 and the CIA
# Ascension: on GMT, say the USNO (1995-12-21) and the CIA
# Gough (scientific station since 1955; sealers wintered previously):
# on GMT, says the CIA
# Inaccessible, Nightingale: no information, but probably GMT
# Sao Tome and Principe
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Africa/Sao_Tome 0:26:56 - LMT 1884
-0:36:32 - LMT 1912 # Lisbon Mean Time
0:00 - GMT
# Inaccessible, Nightingale: uninhabited
# São Tomé and Príncipe
# Senegal
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Africa/Dakar -1:09:44 - LMT 1912
-1:00 - WAT 1941 Jun
0:00 - GMT
# See Africa/Abidjan.
# Seychelles
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
@ -1160,17 +1057,7 @@ Zone Indian/Mahe 3:41:48 - LMT 1906 Jun # Victoria
# Possibly the islands were uninhabited.
# Sierra Leone
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
# Whitman gives Mar 31 - Aug 31 for 1931 on; go with Shanks & Pottenger.
Rule SL 1935 1942 - Jun 1 0:00 0:40 SLST
Rule SL 1935 1942 - Oct 1 0:00 0 WAT
Rule SL 1957 1962 - Jun 1 0:00 1:00 SLST
Rule SL 1957 1962 - Sep 1 0:00 0 GMT
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Africa/Freetown -0:53:00 - LMT 1882
-0:53:00 - FMT 1913 Jun # Freetown Mean Time
-1:00 SL %s 1957
0:00 SL %s
# See Africa/Abidjan.
# Somalia
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
@ -1193,9 +1080,9 @@ Zone Africa/Johannesburg 1:52:00 - LMT 1892 Feb 8
# Sudan
#
# From <a href="http://www.sunanews.net/sn13jane.html">
# Sudan News Agency (2000-01-13)
# </a>, also reported by Michael De Beukelaer-Dossche via Steffen Thorsen:
# From <http://www.sunanews.net/sn13jane.html>
# Sudan News Agency (2000-01-13),
# also reported by Michaël De Beukelaer-Dossche via Steffen Thorsen:
# Clocks will be moved ahead for 60 minutes all over the Sudan as of noon
# Saturday.... This was announced Thursday by Caretaker State Minister for
# Manpower Abdul-Rahman Nur-Eddin.
@ -1226,14 +1113,12 @@ Zone Africa/Dar_es_Salaam 2:37:08 - LMT 1931
3:00 - EAT
# Togo
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Africa/Lome 0:04:52 - LMT 1893
0:00 - GMT
# See Africa/Abidjan.
# Tunisia
# From Gwillim Law (2005-04-30):
# My correspondent, Risto Nykanen, has alerted me to another adoption of DST,
# My correspondent, Risto Nykänen, has alerted me to another adoption of DST,
# this time in Tunisia. According to Yahoo France News
# <http://fr.news.yahoo.com/050426/5/4dumk.html>, in a story attributed to AP
# and dated 2005-04-26, "Tunisia has decided to advance its official time by
@ -1242,7 +1127,7 @@ Zone Africa/Lome 0:04:52 - LMT 1893
# Saturday." (My translation)
#
# From Oscar van Vlijmen (2005-05-02):
# LaPresse, the first national daily newspaper ...
# La Presse, the first national daily newspaper ...
# <http://www.lapresse.tn/archives/archives280405/actualites/lheure.html>
# ... DST for 2005: on: Sun May 1 0h standard time, off: Fri Sept. 30,
# 1h standard time.
@ -1256,18 +1141,12 @@ Zone Africa/Lome 0:04:52 - LMT 1893
# From Steffen Thorsen (2009-03-16):
# According to several news sources, Tunisia will not observe DST this year.
# (Arabic)
# <a href="http://www.elbashayer.com/?page=viewn&nid=42546">
# http://www.elbashayer.com/?page=viewn&nid=42546
# </a>
# <a href="http://www.babnet.net/kiwidetail-15295.asp">
# http://www.babnet.net/kiwidetail-15295.asp
# </a>
#
# We have also confirmed this with the US embassy in Tunisia.
# We have a wrap-up about this on the following page:
# <a href="http://www.timeanddate.com/news/time/tunisia-cancels-dst-2009.html">
# http://www.timeanddate.com/news/time/tunisia-cancels-dst-2009.html
# </a>
# From Alexander Krivenyshev (2009-03-17):
# Here is a link to Tunis Afrique Presse News Agency
@ -1275,20 +1154,17 @@ Zone Africa/Lome 0:04:52 - LMT 1893
# Standard time to be kept the whole year long (tap.info.tn):
#
# (in English)
# <a href="http://www.tap.info.tn/en/index.php?option=com_content&task=view&id=26813&Itemid=157">
# http://www.tap.info.tn/en/index.php?option=com_content&task=view&id=26813&Itemid=157
# </a>
#
# (in Arabic)
# <a href="http://www.tap.info.tn/ar/index.php?option=com_content&task=view&id=61240&Itemid=1">
# http://www.tap.info.tn/ar/index.php?option=com_content&task=view&id=61240&Itemid=1
# </a>
# From Arthur David Olson (2009--3-18):
# The Tunis Afrique Presse News Agency notice contains this: "This measure is due to the fact
# that the fasting month of ramadan coincides with the period concerned by summer time.
# Therefore, the standard time will be kept unchanged the whole year long."
# So foregoing DST seems to be an exception (albeit one that may be repeated in the future).
# From Arthur David Olson (2009-03-18):
# The Tunis Afrique Presse News Agency notice contains this: "This measure is
# due to the fact that the fasting month of Ramadan coincides with the period
# concerned by summer time. Therefore, the standard time will be kept
# unchanged the whole year long." So foregoing DST seems to be an exception
# (albeit one that may be repeated in the future).
# From Alexander Krivenyshev (2010-03-27):
# According to some news reports Tunis confirmed not to use DST in 2010
@ -1300,12 +1176,8 @@ Zone Africa/Lome 0:04:52 - LMT 1893
# coincided with the month of Ramadan..."
#
# (in Arabic)
# <a href="http://www.moheet.com/show_news.aspx?nid=358861&pg=1">
# http://www.moheet.com/show_news.aspx?nid=358861&pg=1
# <a href="http://www.almadenahnews.com/newss/news.php?c=118&id=38036">
# http://www.almadenahnews.com/newss/news.php?c=118&id=38036
# or
# <a href="http://www.worldtimezone.com/dst_news/dst_news_tunis02.html">
# http://www.worldtimezone.com/dst_news/dst_news_tunis02.html
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S

View File

@ -1,16 +1,13 @@
# <pre>
# This file is in the public domain, so clarified as of
# 2009-05-17 by Arthur David Olson.
# From Paul Eggert (1999-11-15):
# To keep things manageable, we list only locations occupied year-round; see
# <a href="http://www.comnap.aq/comnap/comnap.nsf/P/Stations/">
# COMNAP - Stations and Bases
# </a>
# <http://www.comnap.aq/comnap/comnap.nsf/P/Stations/>
# and
# <a href="http://www.spri.cam.ac.uk/bob/periant.htm">
# Summary of the Peri-Antarctic Islands (1998-07-23)
# </a>
# <http://www.spri.cam.ac.uk/bob/periant.htm>
# for information.
# Unless otherwise specified, we have no time zone information.
#
@ -55,19 +52,19 @@ Rule ChileAQ 2012 max - Sep Sun>=2 4:00u 1:00 S
# Argentina - year-round bases
# Belgrano II, Confin Coast, -770227-0343737, since 1972-02-05
# Esperanza, San Martin Land, -6323-05659, since 1952-12-17
# Jubany, Potter Peninsula, King George Island, -6414-0602320, since 1982-01
# Marambio, Seymour I, -6414-05637, since 1969-10-29
# Carlini, Potter Cove, King George Island, -6414-0602320, since 1982-01
# Esperanza, Hope Bay, -6323-05659, since 1952-12-17
# Marambio, -6414-05637, since 1969-10-29
# Orcadas, Laurie I, -6016-04444, since 1904-02-22
# San Martin, Debenham I, -6807-06708, since 1951-03-21
# San Martín, Barry I, -6808-06706, since 1951-03-21
# (except 1960-03 / 1976-03-21)
# Australia - territories
# Heard Island, McDonald Islands (uninhabited)
# previously sealers and scientific personnel wintered
# <a href="http://web.archive.org/web/20021204222245/http://www.dstc.qut.edu.au/DST/marg/daylight.html">
# Margaret Turner reports
# </a> (1999-09-30) that they're UTC+5, with no DST;
# <http://web.archive.org/web/20021204222245/http://www.dstc.qut.edu.au/DST/marg/daylight.html>
# (1999-09-30) that they're UTC+5, with no DST;
# presumably this is when they have visitors.
#
# year-round bases
@ -84,14 +81,10 @@ Rule ChileAQ 2012 max - Sep Sun>=2 4:00u 1:00 S
# The changes occurred on 2009-10-18 at 02:00 (local times).
#
# Government source: (Australian Antarctic Division)
# <a href="http://www.aad.gov.au/default.asp?casid=37079">
# http://www.aad.gov.au/default.asp?casid=37079
# </a>
#
# We have more background information here:
# <a href="http://www.timeanddate.com/news/time/antarctica-new-times.html">
# http://www.timeanddate.com/news/time/antarctica-new-times.html
# </a>
# From Steffen Thorsen (2010-03-10):
# We got these changes from the Australian Antarctic Division: ...
@ -106,19 +99,17 @@ Rule ChileAQ 2012 max - Sep Sun>=2 4:00u 1:00 S
# - Mawson station stays on UTC+5.
#
# Background:
# <a href="http://www.timeanddate.com/news/time/antartica-time-changes-2010.html">
# http://www.timeanddate.com/news/time/antartica-time-changes-2010.html
# </a>
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Antarctica/Casey 0 - zzz 1969
8:00 - WST 2009 Oct 18 2:00
# Western (Aus) Standard Time
8:00 - AWST 2009 Oct 18 2:00
# Australian Western Std Time
11:00 - CAST 2010 Mar 5 2:00
# Casey Time
8:00 - WST 2011 Oct 28 2:00
8:00 - AWST 2011 Oct 28 2:00
11:00 - CAST 2012 Feb 21 17:00u
8:00 - WST
8:00 - AWST
Zone Antarctica/Davis 0 - zzz 1957 Jan 13
7:00 - DAVT 1964 Nov # Davis Time
0 - zzz 1969 Feb
@ -132,24 +123,27 @@ Zone Antarctica/Mawson 0 - zzz 1954 Feb 13
# Mawson Time
5:00 - MAWT
# References:
# <a href="http://www.antdiv.gov.au/aad/exop/sfo/casey/casey_aws.html">
# Casey Weather (1998-02-26)
# </a>
# <a href="http://www.antdiv.gov.au/aad/exop/sfo/davis/video.html">
# <http://www.antdiv.gov.au/aad/exop/sfo/casey/casey_aws.html>
# Davis Station, Antarctica (1998-02-26)
# </a>
# <a href="http://www.antdiv.gov.au/aad/exop/sfo/mawson/video.html">
# <http://www.antdiv.gov.au/aad/exop/sfo/davis/video.html>
# Mawson Station, Antarctica (1998-02-25)
# </a>
# <http://www.antdiv.gov.au/aad/exop/sfo/mawson/video.html>
# Belgium - year-round base
# Princess Elisabeth, Queen Maud Land, -713412+0231200, since 2007
# Brazil - year-round base
# Comandante Ferraz, King George Island, -6205+05824, since 1983/4
# Ferraz, King George Island, -6205+05824, since 1983/4
# Bulgaria - year-round base
# St. Kliment Ohridski, Livingston Island, -623829-0602153, since 1988
# Chile - year-round bases and towns
# Escudero, South Shetland Is, -621157-0585735, since 1994
# Presidente Eduadro Frei, King George Island, -6214-05848, since 1969-03-07
# General Bernardo O'Higgins, Antarctic Peninsula, -6319-05704, since 1948-02
# Capitan Arturo Prat, -6230-05941
# Frei Montalva, King George Island, -6214-05848, since 1969-03-07
# O'Higgins, Antarctic Peninsula, -6319-05704, since 1948-02
# Prat, -6230-05941
# Villa Las Estrellas (a town), around the Frei base, since 1984-04-09
# These locations have always used Santiago time; use TZ='America/Santiago'.
@ -157,31 +151,35 @@ Zone Antarctica/Mawson 0 - zzz 1954 Feb 13
# Great Wall, King George Island, -6213-05858, since 1985-02-20
# Zhongshan, Larsemann Hills, Prydz Bay, -6922+07623, since 1989-02-26
# France - year-round bases
# France - year-round bases (also see "France & Italy")
#
# From Antoine Leca (1997-01-20):
# Time data are from Nicole Pailleau at the IFRTP
# (French Institute for Polar Research and Technology).
# She confirms that French Southern Territories and Terre Adelie bases
# don't observe daylight saving time, even if Terre Adelie supplies came
# She confirms that French Southern Territories and Terre Adélie bases
# don't observe daylight saving time, even if Terre Adélie supplies came
# from Tasmania.
#
# French Southern Territories with year-round inhabitants
#
# Martin-de-Vivies Base, Amsterdam Island, -374105+0773155, since 1950
# Alfred-Faure Base, Crozet Islands, -462551+0515152, since 1964
# Port-aux-Francais, Kerguelen Islands, -492110+0701303, since 1951;
# Alfred Faure, Possession Island, Crozet Islands, -462551+0515152, since 1964;
# sealing & whaling stations operated variously 1802/1911+;
# see Indian/Reunion.
#
# Martin-de-Viviès, Amsterdam Island, -374105+0773155, since 1950
# Port-aux-Français, Kerguelen Islands, -492110+0701303, since 1951;
# whaling & sealing station operated 1908/1914, 1920/1929, and 1951/1956
#
# St Paul Island - near Amsterdam, uninhabited
# fishing stations operated variously 1819/1931
#
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Indian/Kerguelen 0 - zzz 1950 # Port-aux-Francais
Zone Indian/Kerguelen 0 - zzz 1950 # Port-aux-Français
5:00 - TFT # ISO code TF Time
#
# year-round base in the main continent
# Dumont-d'Urville, Ile des Petrels, -6640+14001, since 1956-11
# Dumont d'Urville, Île des Pétrels, -6640+14001, since 1956-11
# <http://en.wikipedia.org/wiki/Dumont_d'Urville_Station> (2005-12-05)
#
# Another base at Port-Martin, 50km east, began operation in 1947.
# It was destroyed by fire on 1952-01-14.
@ -191,20 +189,22 @@ Zone Antarctica/DumontDUrville 0 - zzz 1947
10:00 - PMT 1952 Jan 14 # Port-Martin Time
0 - zzz 1956 Nov
10:00 - DDUT # Dumont-d'Urville Time
# Reference:
# <a href="http://en.wikipedia.org/wiki/Dumont_d'Urville_Station">
# Dumont d'Urville Station (2005-12-05)
# </a>
# France & Italy - year-round base
# Concordia, -750600+1232000, since 2005
# Germany - year-round base
# Georg von Neumayer, -7039-00815
# Neumayer III, -704080-0081602, since 2009
# India - year-round base
# Dakshin Gangotri, -7005+01200
# India - year-round bases
# Bharati, -692428+0761114, since 2012
# Maitri, -704558+0114356, since 1989
# Italy - year-round base (also see "France & Italy")
# Zuchelli, Terra Nova Bay, -744140+1640647, since 1986
# Japan - year-round bases
# Dome Fuji, -7719+03942
# Syowa, -690022+0393524
# Syowa (also known as Showa), -690022+0393524, since 1957
#
# From Hideyuki Suzuki (1999-02-06):
# In all Japanese stations, +0300 is used as the standard time.
@ -216,11 +216,11 @@ Zone Antarctica/DumontDUrville 0 - zzz 1947
Zone Antarctica/Syowa 0 - zzz 1957 Jan 29
3:00 - SYOT # Syowa Time
# See:
# <a href="http://www.nipr.ac.jp/english/ara01.html">
# NIPR Antarctic Research Activities (1999-08-17)
# </a>
# <http://www.nipr.ac.jp/english/ara01.html>
# S Korea - year-round base
# Jang Bogo, Terra Nova Bay, -743700+1641205 since 2014
# King Sejong, King George Island, -6213-05847, since 1988
# New Zealand - claims
@ -269,6 +269,9 @@ Zone Antarctica/Troll 0 - zzz 2005 Feb 12
# Poland - year-round base
# Arctowski, King George Island, -620945-0582745, since 1977
# Romania - year-bound base
# Law-Racoviță, Larsemann Hills, -692319+0762251, since 1986
# Russia - year-round bases
# Bellingshausen, King George Island, -621159-0585337, since 1968-02-22
# Mirny, Davis coast, -6633+09301, since 1956-02
@ -278,8 +281,8 @@ Zone Antarctica/Troll 0 - zzz 2005 Feb 12
# year-round from 1960/61 to 1992
# Vostok, since 1957-12-16, temporarily closed 1994-02/1994-11
# <a href="http://quest.arc.nasa.gov/antarctica/QA/computers/Directions,Time,ZIP">
# From Craig Mundell (1994-12-15)</a>:
# From Craig Mundell (1994-12-15)
# <http://quest.arc.nasa.gov/antarctica/QA/computers/Directions,Time,ZIP>:
# Vostok, which is one of the Russian stations, is set on the same
# time as Moscow, Russia.
#
@ -294,7 +297,7 @@ Zone Antarctica/Troll 0 - zzz 2005 Feb 12
#
# From Paul Eggert (2001-05-04):
# This seems to be hopelessly confusing, so I asked Lee Hotz about it
# in person. He said that some Antartic locations set their local
# in person. He said that some Antarctic locations set their local
# time so that noon is the warmest part of the day, and that this
# changes during the year and does not necessarily correspond to mean
# solar noon. So the Vostok time might have been whatever the clocks
@ -306,9 +309,12 @@ Zone Antarctica/Vostok 0 - zzz 1957 Dec 16
# S Africa - year-round bases
# Marion Island, -4653+03752
# Sanae, -7141-00250
# SANAE IV, Vesleskarvet, Queen Maud Land, -714022-0025026, since 1997
# UK
# Ukraine - year-round base
# Vernadsky (formerly Faraday), Galindez Island, -651445-0641526, since 1954
# United Kingdom
#
# British Antarctic Territories (BAT) claims
# South Orkney Islands
@ -364,7 +370,7 @@ Zone Antarctica/Palmer 0 - zzz 1965
# but that he found it more convenient to keep GMT+12
# as supplies for the station were coming from McMurdo Sound,
# which was on GMT+12 because New Zealand was on GMT+12 all year
# at that time (1957). (Source: Siple's book 90 degrees SOUTH.)
# at that time (1957). (Source: Siple's book 90 Degrees South.)
#
# From Susan Smith
# http://www.cybertours.com/whs/pole10.html

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,4 +1,3 @@
# <pre>
# This file is in the public domain, so clarified as of
# 2009-05-17 by Arthur David Olson.
@ -6,7 +5,7 @@
# and their old names. Many names changed in late 1993.
Link Africa/Asmara Africa/Asmera
Link Africa/Bamako Africa/Timbuktu
Link Africa/Abidjan Africa/Timbuktu
Link America/Argentina/Catamarca America/Argentina/ComodRivadavia
Link America/Adak America/Atka
Link America/Argentina/Buenos_Aires America/Buenos_Aires
@ -27,8 +26,11 @@ Link America/Port_of_Spain America/Virgin
Link Pacific/Auckland Antarctica/South_Pole
Link Asia/Ashgabat Asia/Ashkhabad
Link Asia/Kolkata Asia/Calcutta
Link Asia/Chongqing Asia/Chungking
Link Asia/Shanghai Asia/Chongqing
Link Asia/Shanghai Asia/Chungking
Link Asia/Dhaka Asia/Dacca
Link Asia/Shanghai Asia/Harbin
Link Asia/Urumqi Asia/Kashgar
Link Asia/Kathmandu Asia/Katmandu
Link Asia/Macau Asia/Macao
Link Asia/Ho_Chi_Minh Asia/Saigon

View File

@ -1,4 +1,3 @@
# <pre>
# This file is in the public domain, so clarified as of
# 2009-05-17 by Arthur David Olson.
@ -14,7 +13,7 @@ Zone Etc/UTC 0 - UTC
Zone Etc/UCT 0 - UCT
# The following link uses older naming conventions,
# but it belongs here, not in the file `backward',
# but it belongs here, not in the file 'backward',
# as functions like gmtime load the "UTC" file to handle leap seconds properly.
# We want this to work even on installations that omit the other older names.
Link Etc/UTC UTC

File diff suppressed because it is too large Load Diff

View File

@ -1,4 +1,3 @@
# <pre>
# This file is in the public domain, so clarified as of
# 2009-05-17 by Arthur David Olson.

View File

@ -1,10 +1,10 @@
#
# In the following text, the symbol '#' introduces
# a comment, which continues from that symbol until
# a comment, which continues from that symbol until
# the end of the line. A plain comment line has a
# whitespace character following the comment indicator.
# There are also special comment lines defined below.
# A special comment will always have a non-whitespace
# There are also special comment lines defined below.
# A special comment will always have a non-whitespace
# character in column 2.
#
# A blank line should be ignored.
@ -15,17 +15,22 @@
# are transmitted by almost all time services.
#
# The first column shows an epoch as a number of seconds
# since 1900.0 and the second column shows the number of
# seconds that must be added to UTC to compute TAI for
# any timestamp at or after that epoch. The value on
# each line is valid from the indicated initial instant
# until the epoch given on the next one or indefinitely
# into the future if there is no next line.
# since 1 January 1900, 00:00:00 (1900.0 is also used to
# indicate the same epoch.) Both of these time stamp formats
# ignore the complexities of the time scales that were
# used before the current definition of UTC at the start
# of 1972. (See note 3 below.)
# The second column shows the number of seconds that
# must be added to UTC to compute TAI for any timestamp
# at or after that epoch. The value on each line is
# valid from the indicated initial instant until the
# epoch given on the next one or indefinitely into the
# future if there is no next line.
# (The comment on each line shows the representation of
# the corresponding initial epoch in the usual
# the corresponding initial epoch in the usual
# day-month-year format. The epoch always begins at
# 00:00:00 UTC on the indicated day. See Note 5 below.)
#
#
# Important notes:
#
# 1. Coordinated Universal Time (UTC) is often referred to
@ -33,7 +38,7 @@
# longer used, and the use of GMT to designate UTC is
# discouraged.
#
# 2. The UTC time scale is realized by many national
# 2. The UTC time scale is realized by many national
# laboratories and timing centers. Each laboratory
# identifies its realization with its name: Thus
# UTC(NIST), UTC(USNO), etc. The differences among
@ -44,10 +49,10 @@
# by the International Bureau of Weights and Measures
# (BIPM). See www.bipm.fr for more information.
#
# 3. The current defintion of the relationship between UTC
# and TAI dates from 1 January 1972. A number of different
# time scales were in use before than epoch, and it can be
# quite difficult to compute precise timestamps and time
# 3. The current definition of the relationship between UTC
# and TAI dates from 1 January 1972. A number of different
# time scales were in use before that epoch, and it can be
# quite difficult to compute precise timestamps and time
# intervals in those "prehistoric" days. For more information,
# consult:
#
@ -58,36 +63,34 @@
# of Time," Proc. of the IEEE, Vol. 79, pp. 894-905,
# July, 1991.
#
# 4. The insertion of leap seconds into UTC is currently the
# responsibility of the International Earth Rotation Service,
# which is located at the Paris Observatory:
# 4. The decision to insert a leap second into UTC is currently
# the responsibility of the International Earth Rotation and
# Reference Systems Service. (The name was changed from the
# International Earth Rotation Service, but the acronym IERS
# is still used.)
#
# Central Bureau of IERS
# 61, Avenue de l'Observatoire
# 75014 Paris, France.
# Leap seconds are announced by the IERS in its Bulletin C.
#
# Leap seconds are announced by the IERS in its Bulletin C
# See www.iers.org for more details.
#
# See hpiers.obspm.fr or www.iers.org for more details.
#
# All national laboratories and timing centers use the
# data from the BIPM and the IERS to construct their
# local realizations of UTC.
# Every national laboratory and timing center uses the
# data from the BIPM and the IERS to construct UTC(lab),
# their local realization of UTC.
#
# Although the definition also includes the possibility
# of dropping seconds ("negative" leap seconds), this has
# never been done and is unlikely to be necessary in the
# of dropping seconds ("negative" leap seconds), this has
# never been done and is unlikely to be necessary in the
# foreseeable future.
#
# 5. If your system keeps time as the number of seconds since
# some epoch (e.g., NTP timestamps), then the algorithm for
# assigning a UTC time stamp to an event that happens during a positive
# leap second is not well defined. The official name of that leap
# second is 23:59:60, but there is no way of representing that time
# in these systems.
# Many systems of this type effectively stop the system clock for
# one second during the leap second and use a time that is equivalent
# to 23:59:59 UTC twice. For these systems, the corresponding TAI
# leap second is not well defined. The official name of that leap
# second is 23:59:60, but there is no way of representing that time
# in these systems.
# Many systems of this type effectively stop the system clock for
# one second during the leap second and use a time that is equivalent
# to 23:59:59 UTC twice. For these systems, the corresponding TAI
# timestamp would be obtained by advancing to the next entry in the
# following table when the time equivalent to 23:59:59 UTC
# is used for the second time. Thus the leap second which
@ -102,7 +105,7 @@
#
# If your system realizes the leap second by repeating 00:00:00 UTC twice
# (this is possible but not usual), then the advance to the next entry
# in the table must occur the second time that a time equivlent to
# in the table must occur the second time that a time equivalent to
# 00:00:00 UTC is used. Thus, using the same example as above:
#
# ...
@ -112,13 +115,16 @@
# ...
#
# in both cases the use of timestamps based on TAI produces a smooth
# time scale with no discontinuity in the time interval.
# time scale with no discontinuity in the time interval. However,
# although the long-term behavior of the time scale is correct in both
# methods, the second method is technically not correct because it adds
# the extra second to the wrong day.
#
# This complexity would not be needed for negative leap seconds (if they
# are ever used). The UTC time would skip 23:59:59 and advance from
# 23:59:58 to 00:00:00 in that case. The TAI offset would decrease by
# 1 second at the same instant. This is a much easier situation to deal
# with, since the difficulty of unambiguously representing the epoch
# This complexity would not be needed for negative leap seconds (if they
# are ever used). The UTC time would skip 23:59:59 and advance from
# 23:59:58 to 00:00:00 in that case. The TAI offset would decrease by
# 1 second at the same instant. This is a much easier situation to deal
# with, since the difficulty of unambiguously representing the epoch
# during the leap second does not arise.
#
# Questions or comments to:
@ -126,66 +132,68 @@
# Time and Frequency Division
# NIST
# Boulder, Colorado
# jlevine@boulder.nist.gov
# Judah.Levine@nist.gov
#
# Last Update of leap second values: 11 January 2012
#
# The following line shows this last update date in NTP timestamp
# The following line shows this last update date in NTP timestamp
# format. This is the date on which the most recent change to
# the leap second data was added to the file. This line can
# be identified by the unique pair of characters in the first two
# be identified by the unique pair of characters in the first two
# columns as shown below.
#
#$ 3535228800
#
# The NTP timestamps are in units of seconds since the NTP epoch,
# which is 1900.0. The Modified Julian Day number corresponding
# to the NTP time stamp, X, can be computed as
# which is 1 January 1900, 00:00:00. The Modified Julian Day number
# corresponding to the NTP time stamp, X, can be computed as
#
# X/86400 + 15020
#
# where the first term converts seconds to days and the second
# term adds the MJD corresponding to 1900.0. The integer portion
# of the result is the integer MJD for that day, and any remainder
# is the time of day, expressed as the fraction of the day since 0
# hours UTC. The conversion from day fraction to seconds or to
# hours, minutes, and seconds may involve rounding or truncation,
# depending on the method used in the computation.
# where the first term converts seconds to days and the second
# term adds the MJD corresponding to the time origin defined above.
# The integer portion of the result is the integer MJD for that
# day, and any remainder is the time of day, expressed as the
# fraction of the day since 0 hours UTC. The conversion from day
# fraction to seconds or to hours, minutes, and seconds may involve
# rounding or truncation, depending on the method used in the
# computation.
#
# The data in this file will be updated periodically as new leap
# The data in this file will be updated periodically as new leap
# seconds are announced. In addition to being entered on the line
# above, the update time (in NTP format) will be added to the basic
# above, the update time (in NTP format) will be added to the basic
# file name leap-seconds to form the name leap-seconds.<NTP TIME>.
# In addition, the generic name leap-seconds.list will always point to
# In addition, the generic name leap-seconds.list will always point to
# the most recent version of the file.
#
# This update procedure will be performed only when a new leap second
# is announced.
# is announced.
#
# The following entry specifies the expiration date of the data
# in this file in units of seconds since 1900.0. This expiration date
# will be changed at least twice per year whether or not a new leap
# second is announced. These semi-annual changes will be made no
# later than 1 June and 1 December of each year to indicate what
# action (if any) is to be taken on 30 June and 31 December,
# in this file in units of seconds since the origin at the instant
# 1 January 1900, 00:00:00. This expiration date will be changed
# at least twice per year whether or not a new leap second is
# announced. These semi-annual changes will be made no later
# than 1 June and 1 December of each year to indicate what
# action (if any) is to be taken on 30 June and 31 December,
# respectively. (These are the customary effective dates for new
# leap seconds.) This expiration date will be identified by a
# unique pair of characters in columns 1 and 2 as shown below.
# In the unlikely event that a leap second is announced with an
# In the unlikely event that a leap second is announced with an
# effective date other than 30 June or 31 December, then this
# file will be edited to include that leap second as soon as it is
# announced or at least one month before the effective date
# (whichever is later).
# If an announcement by the IERS specifies that no leap second is
# scheduled, then only the expiration date of the file will
# (whichever is later).
# If an announcement by the IERS specifies that no leap second is
# scheduled, then only the expiration date of the file will
# be advanced to show that the information in the file is still
# current -- the update time stamp, the data and the name of the file
# current -- the update time stamp, the data and the name of the file
# will not change.
#
# Updated through IERS Bulletin C46
# File expires on: 28 June 2014
# Updated through IERS Bulletin C48
# File expires on: 28 June 2015
#
#@ 3612902400
#@ 3644438400
#
2272060800 10 # 1 Jan 1972
2287785600 11 # 1 Jul 1972
@ -222,10 +230,10 @@
# computed. Note that the hash computation
# ignores comments and whitespace characters
# in data lines. It includes the NTP values
# of both the last modification time and the
# of both the last modification time and the
# expiration time of the file, but not the
# white space on those lines.
# the hash line is also ignored in the
# computation.
#
#h 1151a8f e85a5069 9000fcdb 3d5e5365 1d505b37
#h a4862ccd c6f43c6 964f3604 85944a26 b5cfad4e

View File

@ -1,4 +1,3 @@
# <pre>
# This file is in the public domain, so clarified as of
# 2009-05-17 by Arthur David Olson.
@ -55,13 +54,13 @@
# to push people into bed earlier, and get them up earlier, to make
# them healthy, wealthy and wise in spite of themselves.
#
# -- Robertson Davies, The diary of Samuel Marchbanks,
# -- Robertson Davies, The diary of Samuel Marchbanks,
# Clarke, Irwin (1947), XIX, Sunday
#
# For more about the first ten years of DST in the United States, see
# Robert Garland's <a href="http://www.clpgh.org/exhibit/dst.html">
# Ten years of daylight saving from the Pittsburgh standpoint
# (Carnegie Library of Pittsburgh, 1927)</a>.
# Robert Garland, Ten years of daylight saving from the Pittsburgh standpoint
# (Carnegie Library of Pittsburgh, 1927)
# <http://www.clpgh.org/exhibit/dst.html>.
#
# Shanks says that DST was called "War Time" in the US in 1918 and 1919.
# However, DST was imposed by the Standard Time Act of 1918, which
@ -81,10 +80,10 @@
# Last night I heard part of a rebroadcast of a 1945 Arch Oboler radio drama.
# In the introduction, Oboler spoke of "Eastern Peace Time."
# An AltaVista search turned up
# <a href="http://rowayton.org/rhs/hstaug45.html">:
# <http://rowayton.org/rhs/hstaug45.html>:
# "When the time is announced over the radio now, it is 'Eastern Peace
# Time' instead of the old familiar 'Eastern War Time.' Peace is wonderful."
# </a> (August 1945) by way of confirmation.
# (August 1945) by way of confirmation.
# From Joseph Gallant citing
# George H. Douglas, _The Early Days of Radio Broadcasting_ (1987):
@ -182,7 +181,7 @@ Zone PST8PDT -8:00 US P%sT
# USA ALASKA STD 9 H BEHIND UTC MOST OF ALASKA (AKST)
# USA ALASKA STD 8 H BEHIND UTC APR 3 - OCT 30 (AKDT)
# USA ALEUTIAN 10 H BEHIND UTC ISLANDS WEST OF 170W
# USA - " - 9 H BEHIND UTC APR 3 - OCT 30
# USA " 9 H BEHIND UTC APR 3 - OCT 30
# USA HAWAII 10 H BEHIND UTC
# USA BERING 11 H BEHIND UTC SAMOA, MIDWAY
@ -235,19 +234,19 @@ Zone PST8PDT -8:00 US P%sT
# The following was signed into law on 2005-08-08.
#
# H.R. 6, Energy Policy Act of 2005, SEC. 110. DAYLIGHT SAVINGS.
# (a) Amendment- Section 3(a) of the Uniform Time Act of 1966 (15
# (a) Amendment.--Section 3(a) of the Uniform Time Act of 1966 (15
# U.S.C. 260a(a)) is amended--
# (1) by striking 'first Sunday of April' and inserting 'second
# Sunday of March'; and
# (2) by striking 'last Sunday of October' and inserting 'first
# (1) by striking "first Sunday of April" and inserting "second
# Sunday of March"; and
# (2) by striking "last Sunday of October" and inserting "first
# Sunday of November'.
# (b) Effective Date- Subsection (a) shall take effect 1 year after the
# (b) Effective Date.--Subsection (a) shall take effect 1 year after the
# date of enactment of this Act or March 1, 2007, whichever is later.
# (c) Report to Congress- Not later than 9 months after the effective
# (c) Report to Congress.--Not later than 9 months after the effective
# date stated in subsection (b), the Secretary shall report to Congress
# on the impact of this section on energy consumption in the United
# States.
# (d) Right to Revert- Congress retains the right to revert the
# (d) Right to Revert.--Congress retains the right to revert the
# Daylight Saving Time back to the 2005 time schedules once the
# Department study is complete.
@ -349,18 +348,15 @@ Zone America/North_Dakota/New_Salem -6:45:39 - LMT 1883 Nov 18 12:14:21
# ...it appears that Mercer County, North Dakota, changed from the
# mountain time zone to the central time zone at the last transition from
# daylight-saving to standard time (on Nov. 7, 2010):
# <a href="http://www.gpo.gov/fdsys/pkg/FR-2010-09-29/html/2010-24376.htm">
# http://www.gpo.gov/fdsys/pkg/FR-2010-09-29/html/2010-24376.htm
# </a>
# <a href="http://www.bismarcktribune.com/news/local/article_1eb1b588-c758-11df-b472-001cc4c03286.html">
# http://www.bismarcktribune.com/news/local/article_1eb1b588-c758-11df-b472-001cc4c03286.html
# </a>
# From Andy Lipscomb (2011-01-24):
# ...according to the Census Bureau, the largest city is Beulah (although
# it's commonly referred to as Beulah-Hazen, with Hazen being the next
# largest city in Mercer County). Google Maps places Beulah's city hall
# at 4715'51" north, 10146'40" west, which yields an offset of 6h47'07".
# at 47 degrees 15' 51" N, 101 degrees 46' 40" W, which yields an offset
# of 6h47'07".
Zone America/North_Dakota/Beulah -6:47:07 - LMT 1883 Nov 18 12:12:53
-7:00 US M%sT 2010 Nov 7 2:00
@ -425,15 +421,18 @@ Zone America/Los_Angeles -7:52:58 - LMT 1883 Nov 18 12:07:02
# was destroyed in 1805 by a Yakutat-kon war party.) However, there
# were nearby inhabitants in some cases and for our purposes perhaps
# it's best to simply use the official transition.
#
# From Steve Ferguson (2011-01-31):
# The author lives in Alaska and many of the references listed are only
# available to Alaskan residents.
# From Paul Eggert (2014-07-18):
# One opinion of the early-1980s turmoil in Alaska over time zones and
# daylight saving time appeared as graffiti on a Juneau airport wall:
# "Welcome to Juneau. Please turn your watch back to the 19th century."
# See: Turner W. Alaska's four time zones now two. NY Times 1983-11-01.
# http://www.nytimes.com/1983/11/01/us/alaska-s-four-time-zones-now-two.html
#
# <a href="http://www.alaskahistoricalsociety.org/index.cfm?section=discover%20alaska&page=Glimpses%20of%20the%20Past&viewpost=2&ContentId=98">
# http://www.alaskahistoricalsociety.org/index.cfm?section=discover%20alaska&page=Glimpses%20of%20the%20Past&viewpost=2&ContentId=98
# </a>
# Steve Ferguson (2011-01-31) referred to the following source:
# Norris F. Keeping time in Alaska: national directives, local response.
# Alaska History 2001;16(1-2).
# http://alaskahistoricalsociety.org/discover-alaska/glimpses-of-the-past/keeping-time-in-alaska/
# From Arthur David Olson (2011-02-01):
# Here's database-relevant material from the 2001 "Alaska History" article:
@ -459,12 +458,10 @@ Zone America/Los_Angeles -7:52:58 - LMT 1883 Nov 18 12:07:02
# From Arthur David Olson (2011-02-09):
# I just spoke by phone with a staff member at the Metlakatla Indian
# Community office (using contact information available at
# <a href="http://www.commerce.state.ak.us/dca/commdb/CIS.cfm?Comm_Boro_name=Metlakatla">
# http://www.commerce.state.ak.us/dca/commdb/CIS.cfm?Comm_Boro_name=Metlakatla
# </a>).
# It's shortly after 1:00 here on the east coast of the United States;
# the staffer said it was shortly after 10:00 there. When I asked whether
# that meant they were on Pacific time, they said no--they were on their
# that meant they were on Pacific time, they said no - they were on their
# own time. I asked about daylight saving; they said it wasn't used. I
# did not inquire about practices in the past.
@ -497,7 +494,7 @@ Zone America/Metlakatla 15:13:42 - LMT 1867 Oct 18
-8:00 US P%sT 1946
-8:00 - PST 1969
-8:00 US P%sT 1983 Oct 30 2:00
-8:00 - MeST
-8:00 - PST
Zone America/Yakutat 14:41:05 - LMT 1867 Oct 18
-9:18:55 - LMT 1900 Aug 20 12:00
-9:00 - YST 1942
@ -560,9 +557,7 @@ Zone America/Adak 12:13:21 - LMT 1867 Oct 18
# "Hawaiian Time" by Robert C. Schmitt and Doak C. Cox appears on pages 207-225
# of volume 26 of The Hawaiian Journal of History (1992). As of 2010-12-09,
# the article is available at
# <a href="http://evols.library.manoa.hawaii.edu/bitstream/10524/239/2/JL26215.pdf">
# http://evols.library.manoa.hawaii.edu/bitstream/10524/239/2/JL26215.pdf
# </a>
# and indicates that standard time was adopted effective noon, January
# 13, 1896 (page 218), that in "1933, the Legislature decreed daylight
# saving for the period between the last Sunday of each April and the
@ -610,9 +605,9 @@ Link Pacific/Honolulu Pacific/Johnston
# From Paul Eggert (2002-10-20):
#
# The information in the rest of this paragraph is derived from the
# <a href="http://www.dlapr.lib.az.us/links/daylight.htm">
# Daylight Saving Time web page (2002-01-23)</a> maintained by the
# Arizona State Library, Archives and Public Records.
# Daylight Saving Time web page
# <http://www.dlapr.lib.az.us/links/daylight.htm> (2002-01-23)
# maintained by the Arizona State Library, Archives and Public Records.
# Between 1944-01-01 and 1944-04-01 the State of Arizona used standard
# time, but by federal law railroads, airlines, bus lines, military
# personnel, and some engaged in interstate commerce continued to
@ -661,16 +656,15 @@ Zone America/Boise -7:44:49 - LMT 1883 Nov 18 12:15:11
# Indiana
#
# For a map of Indiana's time zone regions, see:
# <a href="http://www.mccsc.edu/time.html">
# What time is it in Indiana?
# </a> (2006-03-01)
# What time is it in Indiana? (2006-03-01)
# <http://www.mccsc.edu/time.html>
#
# From Paul Eggert (2007-08-17):
# Since 1970, most of Indiana has been like America/Indiana/Indianapolis,
# with the following exceptions:
#
# - Gibson, Jasper, Lake, LaPorte, Newton, Porter, Posey, Spencer,
# Vandenburgh, and Warrick counties have been like America/Chicago.
# Vanderburgh, and Warrick counties have been like America/Chicago.
#
# - Dearborn and Ohio counties have been like America/New_York.
#
@ -692,19 +686,16 @@ Zone America/Boise -7:44:49 - LMT 1883 Nov 18 12:15:11
# From Paul Eggert (2005-08-16):
# http://www.mccsc.edu/time.html says that Indiana will use DST starting 2006.
# From Nathan Stratton Treadway (2006-03-30):
# http://www.dot.gov/affairs/dot0406.htm [3705 B]
# From Deborah Goldsmith (2006-01-18):
# http://dmses.dot.gov/docimages/pdf95/382329_web.pdf [2.9 MB]
# From Paul Eggert (2006-01-20):
# It says "DOT is relocating the time zone boundary in Indiana to move Starke,
# From Paul Eggert (2014-06-26):
# https://www.federalregister.gov/articles/2006/01/20/06-563/standard-time-zone-boundary-in-the-state-of-indiana
# says "DOT is relocating the time zone boundary in Indiana to move Starke,
# Pulaski, Knox, Daviess, Martin, Pike, Dubois, and Perry Counties from the
# Eastern Time Zone to the Central Time Zone.... The effective date of
# this rule is 2:OO a.m. EST Sunday, April 2, 2006, which is the
# this rule is 2 a.m. EST Sunday, April 2, 2006, which is the
# changeover date from standard time to Daylight Saving Time."
# Strictly speaking, this means the affected counties will change their
# clocks twice that night, but this obviously is in error. The intent
# is that 01:59:59 EST be followed by 02:00:00 CDT.
# Strictly speaking, this meant the affected counties changed their
# clocks twice that night, but this obviously was in error. The intent
# was that 01:59:59 EST be followed by 02:00:00 CDT.
# From Gwillim Law (2007-02-10):
# The Associated Press has been reporting that Pulaski County, Indiana is
@ -876,10 +867,9 @@ Zone America/Kentucky/Louisville -5:43:02 - LMT 1883 Nov 18 12:16:58
#
# Wayne County, Kentucky
#
# From
# <a href="http://www.lake-cumberland.com/life/archive/news990129time.shtml">
# Lake Cumberland LIFE
# </a> (1999-01-29) via WKYM-101.7:
# From Lake Cumberland LIFE
# <http://www.lake-cumberland.com/life/archive/news990129time.shtml>
# (1999-01-29) via WKYM-101.7:
# Clinton County has joined Wayne County in asking the DoT to change from
# the Central to the Eastern time zone.... The Wayne County government made
# the same request in December. And while Russell County officials have not
@ -896,9 +886,8 @@ Zone America/Kentucky/Louisville -5:43:02 - LMT 1883 Nov 18 12:16:58
#
# From Paul Eggert (2001-07-16):
# The final rule was published in the
# <a href="http://frwebgate.access.gpo.gov/cgi-bin/getdoc.cgi?dbname=2000_register&docid=fr17au00-22">
# Federal Register 65, 160 (2000-08-17), page 50154-50158.
# </a>
# Federal Register 65, 160 (2000-08-17), pp 50154-50158.
# <http://frwebgate.access.gpo.gov/cgi-bin/getdoc.cgi?dbname=2000_register&docid=fr17au00-22>
#
Zone America/Kentucky/Monticello -5:39:24 - LMT 1883 Nov 18 12:20:36
-6:00 US C%sT 1946
@ -923,9 +912,8 @@ Zone America/Kentucky/Monticello -5:39:24 - LMT 1883 Nov 18 12:20:36
# See America/North_Dakota/Center for the Oliver County, ND change.
# West Wendover, NV officially switched from Pacific to mountain time on
# 1999-10-31. See the
# <a href="http://frwebgate.access.gpo.gov/cgi-bin/getdoc.cgi?dbname=1999_register&docid=fr21oc99-15">
# Federal Register 64, 203 (1999-10-21), page 56705-56707.
# </a>
# Federal Register 64, 203 (1999-10-21), pp 56705-56707.
# <http://frwebgate.access.gpo.gov/cgi-bin/getdoc.cgi?dbname=1999_register&docid=fr21oc99-15>
# However, the Federal Register says that West Wendover already operated
# on mountain time, and the rule merely made this official;
# hence a separate tz entry is not needed.
@ -1030,11 +1018,11 @@ Zone America/Menominee -5:50:27 - LMT 1885 Sep 18 12:00
# Canada
# From Alain LaBont<e'> (1994-11-14):
# From Alain LaBonté (1994-11-14):
# I post here the time zone abbreviations standardized in Canada
# for both English and French in the CAN/CSA-Z234.4-89 standard....
#
# UTC Standard time Daylight savings time
# UTC Standard time Daylight saving time
# offset French English French English
# -2:30 - - HAT NDT
# -3 - - HAA ADT
@ -1047,7 +1035,7 @@ Zone America/Menominee -5:50:27 - LMT 1885 Sep 18 12:00
# -9 HNY YST - -
#
# HN: Heure Normale ST: Standard Time
# HA: Heure Avanc<e'>e DT: Daylight saving Time
# HA: Heure Avancée DT: Daylight saving Time
#
# A: de l'Atlantique Atlantic
# C: du Centre Central
@ -1111,15 +1099,15 @@ Zone America/Menominee -5:50:27 - LMT 1885 Sep 18 12:00
# From Paul Eggert (2006-04-25):
# H. David Matthews and Mary Vincent's map
# <a href="http://www.canadiangeographic.ca/Magazine/SO98/geomap.asp">
# "It's about TIME", _Canadian Geographic_ (September-October 1998)
# </a> contains detailed boundaries for regions observing nonstandard
# <http://www.canadiangeographic.ca/Magazine/SO98/geomap.asp>
# contains detailed boundaries for regions observing nonstandard
# time and daylight saving time arrangements in Canada circa 1998.
#
# INMS, the Institute for National Measurement Standards in Ottawa, has <a
# href="http://inms-ienm.nrc-cnrc.gc.ca/en/time_services/daylight_saving_e.php">
# INMS, the Institute for National Measurement Standards in Ottawa, has
# information about standard and daylight saving time zones in Canada.
# </a> (updated periodically).
# <http://inms-ienm.nrc-cnrc.gc.ca/en/time_services/daylight_saving_e.php>
# (updated periodically).
# Its unofficial information is often taken from Matthews and Vincent.
# From Paul Eggert (2006-06-27):
@ -1128,9 +1116,7 @@ Zone America/Menominee -5:50:27 - LMT 1885 Sep 18 12:00
# From Chris Walton (2011-12-01)
# In the first of Tammy Hardwick's articles
# <a href="http://www.ilovecreston.com/?p=articles&t=spec&ar=260">
# http://www.ilovecreston.com/?p=articles&t=spec&ar=260
# </a>
# she quotes the Friday November 1/1918 edition of the Creston Review.
# The quote includes these two statements:
# 'Sunday the CPR went back to the old system of time...'
@ -1198,9 +1184,7 @@ Rule StJohns 1960 1986 - Oct lastSun 2:00 0 S
# Time to Standard Time and from Standard Time to Daylight Savings Time
# now occurs at 2:00AM.
# ...
# <a href="http://www.assembly.nl.ca/legislation/sr/annualstatutes/2011/1106.chp.htm">
# http://www.assembly.nl.ca/legislation/sr/annualstatutes/2011/1106.chp.htm
# </a>
# ...
# MICHAEL PELLEY | Manager of Enterprise Architecture - Solution Delivery
# Office of the Chief Information Officer
@ -1356,7 +1340,7 @@ Zone America/Moncton -4:19:08 - LMT 1883 Dec 9
# meridian is supposed to observe AST, but residents as far east as
# Natashquan use EST/EDT, and residents east of Natashquan use AST.
# The Quebec department of justice writes in
# "The situation in Minganie and Basse-Cote-Nord"
# "The situation in Minganie and Basse-Côte-Nord"
# http://www.justice.gouv.qc.ca/english/publications/generale/temps-minganie-a.htm
# that the coastal strip from just east of Natashquan to Blanc-Sablon
# observes Atlantic standard time all year round.
@ -1364,7 +1348,6 @@ Zone America/Moncton -4:19:08 - LMT 1883 Dec 9
# says this common practice was codified into law as of 2007.
# For lack of better info, guess this practice began around 1970, contra to
# Shanks & Pottenger who have this region observing AST/ADT.
# for post-1970 data America/Puerto_Rico.
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
Rule Mont 1917 only - Mar 25 2:00 1:00 D
@ -1425,7 +1408,7 @@ Zone America/Montreal -4:54:16 - LMT 1884
# have already done so. In Orillia DST was to run until Saturday,
# 1912-08-31 (no time mentioned), but it was met with considerable
# hostility from certain segments of the public, and was revoked after
# only two weeks -- I copied it as Saturday, 1912-07-07, 22:00, but
# only two weeks - I copied it as Saturday, 1912-07-07, 22:00, but
# presumably that should be -07-06. (1912-06-19, -07-12; also letters
# earlier in June).
#
@ -1435,10 +1418,8 @@ Zone America/Montreal -4:54:16 - LMT 1884
# Mark Brader writes that an article in the 1997-10-14 Toronto Star
# says that Atikokan, Ontario currently does not observe DST,
# but will vote on 11-10 whether to use EST/EDT.
# He also writes that the
# <a href="http://www.gov.on.ca/MBS/english/publications/statregs/conttext.html">
# Ontario Time Act (1990, Chapter T.9)
# </a>
# He also writes that the Ontario Time Act (1990, Chapter T.9)
# <http://www.gov.on.ca/MBS/english/publications/statregs/conttext.html>
# says that Ontario east of 90W uses EST/EDT, and west of 90W uses CST/CDT.
# Officially Atikokan is therefore on CST/CDT, and most likely this report
# concerns a non-official time observed as a matter of local practice.
@ -1517,9 +1498,7 @@ Zone America/Montreal -4:54:16 - LMT 1884
# The Journal of The Royal Astronomical Society of Canada,
# volume 26, number 2 (February 1932) and, as of 2010-07-17,
# was available at
# <a href="http://adsabs.harvard.edu/full/1932JRASC..26...49S">
# http://adsabs.harvard.edu/full/1932JRASC..26...49S
# </a>
#
# It includes the text below (starting on page 57):
#
@ -1537,19 +1516,19 @@ Zone America/Montreal -4:54:16 - LMT 1884
# Quebec In the following places:
# Montreal Lachine
# Quebec Mont-Royal
# Levis Iberville
# St. Lambert Cap de la Madeleine
# Lévis Iberville
# St. Lambert Cap de la Madelèine
# Verdun Loretteville
# Westmount Richmond
# Outremont St. Jerome
# Outremont St. Jérôme
# Longueuil Greenfield Park
# Arvida Waterloo
# Chambly-Canton Beaulieu
# Melbourne La Tuque
# St. Theophile Buckingham
# St. Théophile Buckingham
# Ontario Used generally in the cities and towns along
# the southerly part of the province. Not
# used in the northwesterlhy part.
# used in the northwesterly part.
# Manitoba Not used.
# Saskatchewan In Regina only.
# Alberta Not used.
@ -1653,7 +1632,7 @@ Zone America/Atikokan -6:06:28 - LMT 1895
# the first Sunday of April of each year and two o'clock Central
# Standard Time in the morning of the last Sunday of October next
# following, one hour in advance of Central Standard Time."...
# I believe that the English legislation [of the old time act] had =
# I believe that the English legislation [of the old time act] had
# been assented to (March 22, 1967)....
# Also, as far as I can tell, there was no order-in-council varying
# the time of Daylight Saving Time for 2005 and so the provisions of
@ -1831,9 +1810,7 @@ Zone America/Edmonton -7:33:52 - LMT 1906 Sep
# Earlier this year I stumbled across a detailed article about the time
# keeping history of Creston; it was written by Tammy Hardwick who is the
# manager of the Creston & District Museum. The article was written in May 2009.
# <a href="http://www.ilovecreston.com/?p=articles&t=spec&ar=260">
# http://www.ilovecreston.com/?p=articles&t=spec&ar=260
# </a>
# According to the article, Creston has not changed its clocks since June 1918.
# i.e. Creston has been stuck on UTC-7 for 93 years.
# Dawson Creek, on the other hand, changed its clocks as recently as April 1972.
@ -1844,9 +1821,7 @@ Zone America/Edmonton -7:33:52 - LMT 1906 Sep
# as plausible as any other date (in June). She also said that after writing the
# article she had discovered another time change in 1916; this is the subject
# of another article which she wrote in October 2010.
# <a href="http://www.creston.museum.bc.ca/index.php?module=comments&uop=view_comment&cm+id=56">
# http://www.creston.museum.bc.ca/index.php?module=comments&uop=view_comment&cm+id=56
# </a>
# Here is a summary of the three clock change events in Creston's history:
# 1. 1884 or 1885: adoption of Mountain Standard Time (GMT-7)
@ -1865,9 +1840,7 @@ Zone America/Edmonton -7:33:52 - LMT 1906 Sep
# There is no guarantee that Creston will remain on Mountain Standard Time
# (UTC-7) forever.
# The subject was debated at least once this year by the town Council.
# <a href="http://www.bclocalnews.com/kootenay_rockies/crestonvalleyadvance/news/116760809.html">
# http://www.bclocalnews.com/kootenay_rockies/crestonvalleyadvance/news/116760809.html
# </a>
# During a period WWII, summer time (Daylight saying) was mandatory in Canada.
# In Creston, that was handled by shifting the area to PST (-8:00) then applying
@ -1921,18 +1894,17 @@ Zone America/Creston -7:46:04 - LMT 1884
# From Rives McDow (1999-09-04):
# Nunavut ... moved ... to incorporate the whole territory into one time zone.
# <a href="http://www.nunatsiaq.com/nunavut/nvt90903_13.html">
# Nunavut moves to single time zone Oct. 31
# </a>
# <http://www.nunatsiaq.com/nunavut/nvt90903_13.html>
#
# From Antoine Leca (1999-09-06):
# We then need to create a new timezone for the Kitikmeot region of Nunavut
# to differentiate it from the Yellowknife region.
# From Paul Eggert (1999-09-20):
# <a href="http://www.nunavut.com/basicfacts/english/basicfacts_1territory.html">
# Basic Facts: The New Territory
# </a> (1999) reports that Pangnirtung operates on eastern time,
# <http://www.nunavut.com/basicfacts/english/basicfacts_1territory.html>
# (1999) reports that Pangnirtung operates on eastern time,
# and that Coral Harbour does not observe DST. We don't know when
# Pangnirtung switched to eastern time; we'll guess 1995.
@ -1960,8 +1932,8 @@ Zone America/Creston -7:46:04 - LMT 1884
# the current state of affairs.
# From Michaela Rodrigue, writing in the
# <a href="http://www.nunatsiaq.com/archives/nunavut991130/nvt91119_17.html">
# Nunatsiaq News (1999-11-19)</a>:
# Nunatsiaq News (1999-11-19)
# <http://www.nunatsiaq.com/archives/nunavut991130/nvt91119_17.html>:
# Clyde River, Pangnirtung and Sanikiluaq now operate with two time zones,
# central - or Nunavut time - for government offices, and eastern time
# for municipal offices and schools.... Igloolik [was similar but then]
@ -1979,10 +1951,8 @@ Zone America/Creston -7:46:04 - LMT 1884
# Central Time and Southampton Island [in the Central zone] is not
# required to use daylight savings.
# From
# <a href="http://www.nunatsiaq.com/archives/nunavut001130/nvt21110_02.html">
# Nunavut now has two time zones
# </a> (2000-11-10):
# From <http://www.nunatsiaq.com/archives/nunavut001130/nvt21110_02.html>
# Nunavut now has two time zones (2000-11-10):
# The Nunavut government would allow its employees in Kugluktuk and
# Cambridge Bay to operate on central time year-round, putting them
# one hour behind the rest of Nunavut for six months during the winter.
@ -2073,9 +2043,7 @@ Zone America/Creston -7:46:04 - LMT 1884
# used to be the mayor of Resolute Bay and he apparently owns half the
# businesses including "South Camp Inn." This website has some info on
# Aziz:
# <a href="http://www.uphere.ca/node/493">
# http://www.uphere.ca/node/493
# </a>
#
# I sent Aziz an e-mail asking when Resolute Bay had stopped using
# Eastern Standard Time.
@ -2165,9 +2133,8 @@ Zone America/Dawson -9:17:40 - LMT 1900 Aug 20
# From Paul Eggert (2001-03-05):
# The Investigation and Analysis Service of the
# Mexican Library of Congress (MLoC) has published a
# <a href="http://www.cddhcu.gob.mx/bibliot/publica/inveyana/polisoc/horver/">
# history of Mexican local time (in Spanish)
# </a>.
# <http://www.cddhcu.gob.mx/bibliot/publica/inveyana/polisoc/horver/>.
#
# Here are the discrepancies between Shanks & Pottenger (S&P) and the MLoC.
# (In all cases we go with the MLoC.)
@ -2212,9 +2179,8 @@ Zone America/Dawson -9:17:40 - LMT 1900 Aug 20
# -------------- End Forwarded Message --------------
# From Paul Eggert (1996-06-12):
# For an English translation of the decree, see
# <a href="http://mexico-travel.com/extra/timezone_eng.html">
# "Diario Oficial: Time Zone Changeover" (1996-01-04).
# </a>
# "Diario Oficial: Time Zone Changeover" (1996-01-04)
# <http://mexico-travel.com/extra/timezone_eng.html>.
# From Rives McDow (1998-10-08):
# The State of Quintana Roo has reverted back to central STD and DST times
@ -2226,7 +2192,7 @@ Zone America/Dawson -9:17:40 - LMT 1900 Aug 20
# savings time so as to stay on the same time zone as the southern part of
# Arizona year round.
# From Jesper Norgaard, translating
# From Jesper Nørgaard, translating
# <http://www.reforma.com/nacional/articulo/064327/> (2001-01-17):
# In Oaxaca, the 55.000 teachers from the Section 22 of the National
# Syndicate of Education Workers, refuse to apply daylight saving each
@ -2247,23 +2213,22 @@ Zone America/Dawson -9:17:40 - LMT 1900 Aug 20
# The 2001-01-24 traditional Washington Post contained the page one
# story "Timely Issue Divides Mexicans."...
# http://www.washingtonpost.com/wp-dyn/articles/A37383-2001Jan23.html
# ... Mexico City Mayor Lopez Obrador "...is threatening to keep
# ... Mexico City Mayor López Obrador "...is threatening to keep
# Mexico City and its 20 million residents on a different time than
# the rest of the country..." In particular, Lopez Obrador would abolish
# the rest of the country..." In particular, López Obrador would abolish
# observation of Daylight Saving Time.
# <a href="http://www.conae.gob.mx/ahorro/decretohorver2001.html#decre">
# Official statute published by the Energy Department
# </a> (2001-02-01) shows Baja and Chihauhua as still using US DST rules,
# and Sonora with no DST. This was reported by Jesper Norgaard (2001-02-03).
# <http://www.conae.gob.mx/ahorro/decretohorver2001.html#decre>
# (2001-02-01) shows Baja and Chihauhua as still using US DST rules,
# and Sonora with no DST. This was reported by Jesper Nørgaard (2001-02-03).
# From Paul Eggert (2001-03-03):
#
# <a href="http://www.latimes.com/news/nation/20010303/t000018766.html">
# <http://www.latimes.com/news/nation/20010303/t000018766.html>
# James F. Smith writes in today's LA Times
# </a>
# * Sonora will continue to observe standard time.
# * Last week Mexico City's mayor Andres Manuel Lopez Obrador decreed that
# * Last week Mexico City's mayor Andrés Manuel López Obrador decreed that
# the Federal District will not adopt DST.
# * 4 of 16 district leaders announced they'll ignore the decree.
# * The decree does not affect federal-controlled facilities including
@ -2271,7 +2236,7 @@ Zone America/Dawson -9:17:40 - LMT 1900 Aug 20
#
# For now we'll assume that the Federal District will bow to federal rules.
# From Jesper Norgaard (2001-04-01):
# From Jesper Nørgaard (2001-04-01):
# I found some references to the Mexican application of daylight
# saving, which modifies what I had already sent you, stating earlier
# that a number of northern Mexican states would go on daylight
@ -2280,7 +2245,7 @@ Zone America/Dawson -9:17:40 - LMT 1900 Aug 20
# saving all year) will follow the original decree of president
# Vicente Fox, starting daylight saving May 6, 2001 and ending
# September 30, 2001.
# References: "Diario de Monterrey" <www.diariodemonterrey.com/index.asp>
# References: "Diario de Monterrey" <http://www.diariodemonterrey.com/index.asp>
# Palabra <http://palabra.infosel.com/010331/primera/ppri3101.pdf> (2001-03-31)
# From Reuters (2001-09-04):
@ -2292,7 +2257,7 @@ Zone America/Dawson -9:17:40 - LMT 1900 Aug 20
# standard time. "This is so residents of the Federal District are not
# subject to unexpected time changes," a statement from the court said.
# From Jesper Norgaard Welen (2002-03-12):
# From Jesper Nørgaard Welen (2002-03-12):
# ... consulting my local grocery store(!) and my coworkers, they all insisted
# that a new decision had been made to reinstate US style DST in Mexico....
# http://www.conae.gob.mx/ahorro/horaver2001_m1_2002.html (2002-02-20)
@ -2306,48 +2271,36 @@ Zone America/Dawson -9:17:40 - LMT 1900 Aug 20
# > the United States.
# Now this has passed both the Congress and the Senate, so starting from
# 2010, some border regions will be the same:
# <a href="http://www.signonsandiego.com/news/2009/dec/28/clocks-will-match-both-sides-border/">
# http://www.signonsandiego.com/news/2009/dec/28/clocks-will-match-both-sides-border/
# </a>
# <a href="http://www.elmananarey.com/diario/noticia/nacional/noticias/empatan_horario_de_frontera_con_eu/621939">
# http://www.elmananarey.com/diario/noticia/nacional/noticias/empatan_horario_de_frontera_con_eu/621939
# </a>
# (Spanish)
#
# Could not find the new law text, but the proposed law text changes are here:
# <a href="http://gaceta.diputados.gob.mx/Gaceta/61/2009/dic/20091210-V.pdf">
# http://gaceta.diputados.gob.mx/Gaceta/61/2009/dic/20091210-V.pdf
# </a>
# (Gaceta Parlamentaria)
#
# There is also a list of the votes here:
# <a href="http://gaceta.diputados.gob.mx/Gaceta/61/2009/dic/V2-101209.html">
# http://gaceta.diputados.gob.mx/Gaceta/61/2009/dic/V2-101209.html
# </a>
#
# Our page:
# <a href="http://www.timeanddate.com/news/time/north-mexico-dst-change.html">
# http://www.timeanddate.com/news/time/north-mexico-dst-change.html
# </a>
# From Arthur David Olson (2010-01-20):
# The page
# <a href="http://dof.gob.mx/nota_detalle.php?codigo=5127480&fecha=06/01/2010">
# http://dof.gob.mx/nota_detalle.php?codigo=5127480&fecha=06/01/2010
# </a>
# includes this text:
# En los municipios fronterizos de Tijuana y Mexicali en Baja California;
# Ju&aacute;rez y Ojinaga en Chihuahua; Acu&ntilde;a y Piedras Negras en Coahuila;
# An&aacute;huac en Nuevo Le&oacute;n; y Nuevo Laredo, Reynosa y Matamoros en
# Tamaulipas, la aplicaci&oacute;n de este horario estacional surtir&aacute; efecto
# desde las dos horas del segundo domingo de marzo y concluir&aacute; a las dos
# Juárez y Ojinaga en Chihuahua; Acuña y Piedras Negras en Coahuila;
# Anáhuac en Nuevo León; y Nuevo Laredo, Reynosa y Matamoros en
# Tamaulipas, la aplicación de este horario estacional surtirá efecto
# desde las dos horas del segundo domingo de marzo y concluirá a las dos
# horas del primer domingo de noviembre.
# En los municipios fronterizos que se encuentren ubicados en la franja
# fronteriza norte en el territorio comprendido entre la l&iacute;nea
# internacional y la l&iacute;nea paralela ubicada a una distancia de veinte
# kil&oacute;metros, as&iacute; como la Ciudad de Ensenada, Baja California, hacia el
# interior del pa&iacute;s, la aplicaci&oacute;n de este horario estacional surtir&aacute;
# efecto desde las dos horas del segundo domingo de marzo y concluir&aacute; a
# fronteriza norte en el territorio comprendido entre la línea
# internacional y la línea paralela ubicada a una distancia de veinte
# kilómetros, así como la Ciudad de Ensenada, Baja California, hacia el
# interior del país, la aplicación de este horario estacional surtirá
# efecto desde las dos horas del segundo domingo de marzo y concluirá a
# las dos horas del primer domingo de noviembre.
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
@ -2366,23 +2319,23 @@ Rule Mexico 2001 only - Sep lastSun 2:00 0 S
Rule Mexico 2002 max - Apr Sun>=1 2:00 1:00 D
Rule Mexico 2002 max - Oct lastSun 2:00 0 S
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
# Quintana Roo
# Quintana Roo; represented by Cancún
Zone America/Cancun -5:47:04 - LMT 1922 Jan 1 0:12:56
-6:00 - CST 1981 Dec 23
-5:00 Mexico E%sT 1998 Aug 2 2:00
-6:00 Mexico C%sT
# Campeche, Yucatan
# Campeche, Yucatán; represented by Mérida
Zone America/Merida -5:58:28 - LMT 1922 Jan 1 0:01:32
-6:00 - CST 1981 Dec 23
-5:00 - EST 1982 Dec 2
-6:00 Mexico C%sT
# Coahuila, Durango, Nuevo Leon, Tamaulipas (near US border)
# Coahuila, Durango, Nuevo León, Tamaulipas (near US border)
Zone America/Matamoros -6:40:00 - LMT 1921 Dec 31 23:20:00
-6:00 - CST 1988
-6:00 US C%sT 1989
-6:00 Mexico C%sT 2010
-6:00 US C%sT
# Coahuila, Durango, Nuevo Leon, Tamaulipas (away from US border)
# Coahuila, Durango, Nuevo León, Tamaulipas (away from US border)
Zone America/Monterrey -6:41:16 - LMT 1921 Dec 31 23:18:44
-6:00 - CST 1988
-6:00 US C%sT 1989
@ -2434,42 +2387,33 @@ Zone America/Hermosillo -7:23:52 - LMT 1921 Dec 31 23:36:08
-7:00 - MST
# From Alexander Krivenyshev (2010-04-21):
# According to news, Bah&iacute;a de Banderas (Mexican state of Nayarit)
# According to news, Bahía de Banderas (Mexican state of Nayarit)
# changed time zone UTC-7 to new time zone UTC-6 on April 4, 2010 (to
# share the same time zone as nearby city Puerto Vallarta, Jalisco).
#
# (Spanish)
# Bah&iacute;a de Banderas homologa su horario al del centro del
# pa&iacute;s, a partir de este domingo
# <a href="http://www.nayarit.gob.mx/notes.asp?id=20748">
# Bahía de Banderas homologa su horario al del centro del
# país, a partir de este domingo
# http://www.nayarit.gob.mx/notes.asp?id=20748
# </a>
#
# Bah&iacute;a de Banderas homologa su horario con el del Centro del
# Pa&iacute;s
# <a href="http://www.bahiadebanderas.gob.mx/principal/index.php?option=com_content&view=article&id=261:bahia-de-banderas-homologa-su-horario-con-el-del-centro-del-pais&catid=42:comunicacion-social&Itemid=50">
# http://www.bahiadebanderas.gob.mx/principal/index.php?option=com_content&view=article&id=261:bahia-de-banderas-homologa-su-horario-con-el-del-centro-del-pais&catid=42:comunicacion-social&Itemid=50"
# </a>
# Bahía de Banderas homologa su horario con el del Centro del
# País
# http://www.bahiadebanderas.gob.mx/principal/index.php?option=com_content&view=article&id=261:bahia-de-banderas-homologa-su-horario-con-el-del-centro-del-pais&catid=42:comunicacion-social&Itemid=50
#
# (English)
# Puerto Vallarta and Bah&iacute;a de Banderas: One Time Zone
# <a href="http://virtualvallarta.com/puertovallarta/puertovallarta/localnews/2009-12-03-Puerto-Vallarta-and-Bahia-de-Banderas-One-Time-Zone.shtml">
# Puerto Vallarta and Bahía de Banderas: One Time Zone
# http://virtualvallarta.com/puertovallarta/puertovallarta/localnews/2009-12-03-Puerto-Vallarta-and-Bahia-de-Banderas-One-Time-Zone.shtml
# </a>
#
# or
# <a href="http://www.worldtimezone.com/dst_news/dst_news_mexico08.html">
# http://www.worldtimezone.com/dst_news/dst_news_mexico08.html
# </a>
#
# "Mexico's Senate approved the amendments to the Mexican Schedule System that
# will allow Bah&iacute;a de Banderas and Puerto Vallarta to share the same time
# will allow Bahía de Banderas and Puerto Vallarta to share the same time
# zone ..."
# Baja California Sur, Nayarit, Sinaloa
# From Arthur David Olson (2010-05-01):
# Use "Bahia_Banderas" to keep the name to fourteen characters.
# Mazatlán
Zone America/Mazatlan -7:05:40 - LMT 1921 Dec 31 23:54:20
-7:00 - MST 1927 Jun 10 23:00
-6:00 - CST 1930 Nov 15
@ -2481,6 +2425,7 @@ Zone America/Mazatlan -7:05:40 - LMT 1921 Dec 31 23:54:20
-8:00 - PST 1970
-7:00 Mexico M%sT
# Bahía de Banderas
Zone America/Bahia_Banderas -7:01:00 - LMT 1921 Dec 31 23:59:00
-7:00 - MST 1927 Jun 10 23:00
-6:00 - CST 1930 Nov 15
@ -2537,7 +2482,7 @@ Zone America/Santa_Isabel -7:39:28 - LMT 1922 Jan 1 0:20:32
# America/Tijuana only in that it did not observe DST from 1976
# through 1995. This was as per Shanks (1999). But Shanks & Pottenger say
# Ensenada did not observe DST from 1948 through 1975. Guy Harris reports
# that the 1987 OAG says "Only Ensenada, Mexicale, San Felipe and
# that the 1987 OAG says "Only Ensenada, Mexicali, San Felipe and
# Tijuana observe DST," which agrees with Shanks & Pottenger but implies that
# DST-observance was a town-by-town matter back then. This concerns
# data after 1970 so most likely there should be at least one Zone
@ -2550,7 +2495,7 @@ Zone America/Santa_Isabel -7:39:28 - LMT 1922 Jan 1 0:20:32
###############################################################################
# Anguilla
# See 'southamerica'.
# See America/Port_of_Spain.
# Antigua and Barbuda
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
@ -2630,7 +2575,7 @@ Zone America/Cayman -5:25:32 - LMT 1890 # Georgetown
# Costa Rica
# Milne gives -5:36:13.3 as San Jose mean time; round to nearest.
# Milne gives -5:36:13.3 as San José mean time; round to nearest.
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
Rule CR 1979 1980 - Feb lastSun 0:00 1:00 D
@ -2640,10 +2585,10 @@ Rule CR 1991 1992 - Jan Sat>=15 0:00 1:00 D
# go with Shanks & Pottenger.
Rule CR 1991 only - Jul 1 0:00 0 S
Rule CR 1992 only - Mar 15 0:00 0 S
# There are too many San Joses elsewhere, so we'll use 'Costa Rica'.
# There are too many San Josés elsewhere, so we'll use 'Costa Rica'.
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone America/Costa_Rica -5:36:13 - LMT 1890 # San Jose
-5:36:13 - SJMT 1921 Jan 15 # San Jose Mean Time
Zone America/Costa_Rica -5:36:13 - LMT 1890 # San José
-5:36:13 - SJMT 1921 Jan 15 # San José Mean Time
-6:00 CR C%sT
# Coco
# no information; probably like America/Costa_Rica
@ -2662,8 +2607,8 @@ Zone America/Costa_Rica -5:36:13 - LMT 1890 # San Jose
# During the game, play-by-play announcer Jim Hunter noted that
# "We'll be losing two hours of sleep...Cuba switched to Daylight Saving
# Time today." (The "two hour" remark referred to losing one hour of
# sleep on 1999-03-28--when the announcers were in Cuba as it switched
# to DST--and one more hour on 1999-04-04--when the announcers will have
# sleep on 1999-03-28 - when the announcers were in Cuba as it switched
# to DST - and one more hour on 1999-04-04 - when the announcers will have
# returned to Baltimore, which switches on that date.)
# From Steffen Thorsen (2013-11-11):
@ -2685,16 +2630,16 @@ Zone America/Costa_Rica -5:36:13 - LMT 1890 # San Jose
# adjustment in Cuba. We will stay in daylight saving time:
# http://www.granma.cu/espanol/2005/noviembre/mier9/horario.html
# From Jesper Norgaard Welen (2006-10-21):
# From Jesper Nørgaard Welen (2006-10-21):
# An article in GRANMA INTERNACIONAL claims that Cuba will end
# the 3 years of permanent DST next weekend, see
# http://www.granma.cu/ingles/2006/octubre/lun16/43horario.html
# "On Saturday night, October 28 going into Sunday, October 29, at 01:00,
# watches should be set back one hour -- going back to 00:00 hours -- returning
# watches should be set back one hour - going back to 00:00 hours - returning
# to the normal schedule....
# From Paul Eggert (2007-03-02):
# http://www.granma.cubaweb.cu/english/news/art89.html, dated yesterday,
# <http://www.granma.cubaweb.cu/english/news/art89.html>, dated yesterday,
# says Cuban clocks will advance at midnight on March 10.
# For lack of better information, assume Cuba will use US rules,
# except that it switches at midnight standard time as usual.
@ -2708,10 +2653,10 @@ Zone America/Costa_Rica -5:36:13 - LMT 1890 # San Jose
# http://www.prensalatina.com.mx/article.asp?ID=%7B4CC32C1B-A9F7-42FB-8A07-8631AFC923AF%7D&language=ES
# http://actualidad.terra.es/sociedad/articulo/cuba_llama_ahorrar_energia_cambio_1957044.htm
#
# From Alex Kryvenishev (2007-10-25):
# From Alex Krivenyshev (2007-10-25):
# Here is also article from Granma (Cuba):
#
# [Regira] el Horario Normal desde el [proximo] domingo 28 de octubre
# Regirá el Horario Normal desde el próximo domingo 28 de octubre
# http://www.granma.cubaweb.cu/2007/10/24/nacional/artic07.html
#
# http://www.worldtimezone.com/dst_news/dst_news_cuba03.html
@ -2719,23 +2664,18 @@ Zone America/Costa_Rica -5:36:13 - LMT 1890 # San Jose
# From Arthur David Olson (2008-03-09):
# I'm in Maryland which is now observing United States Eastern Daylight
# Time. At 9:44 local time I used RealPlayer to listen to
# <a href="http://media.enet.cu/radioreloj">
# http://media.enet.cu/radioreloj
# </a>, a Cuban information station, and heard
# a Cuban information station, and heard
# the time announced as "ocho cuarenta y cuatro" ("eight forty-four"),
# indicating that Cuba is still on standard time.
# From Steffen Thorsen (2008-03-12):
# It seems that Cuba will start DST on Sunday, 2007-03-16...
# It was announced yesterday, according to this source (in Spanish):
# <a href="http://www.nnc.cubaweb.cu/marzo-2008/cien-1-11-3-08.htm">
# http://www.nnc.cubaweb.cu/marzo-2008/cien-1-11-3-08.htm
# </a>
#
# Some more background information is posted here:
# <a href="http://www.timeanddate.com/news/time/cuba-starts-dst-march-16.html">
# http://www.timeanddate.com/news/time/cuba-starts-dst-march-16.html
# </a>
#
# The article also says that Cuba has been observing DST since 1963,
# while Shanks (and tzdata) has 1965 as the first date (except in the
@ -2745,18 +2685,14 @@ Zone America/Costa_Rica -5:36:13 - LMT 1890 # San Jose
# change some historic records as well.
#
# One example:
# <a href="http://www.radiohc.cu/espanol/noticias/mar07/11mar/hor.htm">
# http://www.radiohc.cu/espanol/noticias/mar07/11mar/hor.htm
# </a>
# From Jesper Norgaard Welen (2008-03-13):
# From Jesper Nørgaard Welen (2008-03-13):
# The Cuban time change has just been confirmed on the most authoritative
# web site, the Granma. Please check out
# <a href="http://www.granma.cubaweb.cu/2008/03/13/nacional/artic10.html">
# http://www.granma.cubaweb.cu/2008/03/13/nacional/artic10.html
# </a>
#
# Basically as expected after Steffen Thorsens information, the change
# Basically as expected after Steffen Thorsen's information, the change
# will take place midnight between Saturday and Sunday.
# From Arthur David Olson (2008-03-12):
@ -2767,18 +2703,14 @@ Zone America/Costa_Rica -5:36:13 - LMT 1890 # San Jose
# midnight between Saturday, March 07, 2009 and Sunday, March 08, 2009-
# not on midnight March 14 / March 15 as previously thought.
#
# <a href="http://www.worldtimezone.com/dst_news/dst_news_cuba05.html">
# http://www.worldtimezone.com/dst_news/dst_news_cuba05.html
# (in Spanish)
# </a>
# From Arthur David Olson (2009-03-09)
# I listened over the Internet to
# <a href="http://media.enet.cu/readioreloj">
# http://media.enet.cu/readioreloj
# </a>
# this morning; when it was 10:05 a. m. here in Bethesda, Maryland the
# the time was announced as "diez cinco"--the same time as here, indicating
# the time was announced as "diez cinco" - the same time as here, indicating
# that has indeed switched to DST. Assume second Sunday from 2009 forward.
# From Steffen Thorsen (2011-03-08):
@ -2787,42 +2719,30 @@ Zone America/Costa_Rica -5:36:13 - LMT 1890 # San Jose
# changed at all).
#
# Source:
# <a href="http://granma.co.cu/2011/03/08/nacional/artic01.html">
# http://granma.co.cu/2011/03/08/nacional/artic01.html
# </a>
#
# Our info:
# <a href="http://www.timeanddate.com/news/time/cuba-starts-dst-2011.html">
# http://www.timeanddate.com/news/time/cuba-starts-dst-2011.html
# </a>
#
# From Steffen Thorsen (2011-10-30)
# Cuba will end DST two weeks later this year. Instead of going back
# tonight, it has been delayed to 2011-11-13 at 01:00.
#
# One source (Spanish)
# <a href="http://www.radioangulo.cu/noticias/cuba/17105-cuba-restablecera-el-horario-del-meridiano-de-greenwich.html">
# http://www.radioangulo.cu/noticias/cuba/17105-cuba-restablecera-el-horario-del-meridiano-de-greenwich.html
# </a>
#
# Our page:
# <a href="http://www.timeanddate.com/news/time/cuba-time-changes-2011.html">
# http://www.timeanddate.com/news/time/cuba-time-changes-2011.html
# </a>
#
# From Steffen Thorsen (2012-03-01)
# According to Radio Reloj, Cuba will start DST on Midnight between March
# 31 and April 1.
#
# Radio Reloj has the following info (Spanish):
# <a href="http://www.radioreloj.cu/index.php/noticias-radio-reloj/71-miscelaneas/7529-cuba-aplicara-el-horario-de-verano-desde-el-1-de-abril">
# http://www.radioreloj.cu/index.php/noticias-radio-reloj/71-miscelaneas/7529-cuba-aplicara-el-horario-de-verano-desde-el-1-de-abril
# </a>
#
# Our info on it:
# <a href="http://www.timeanddate.com/news/time/cuba-starts-dst-2012.html">
# http://www.timeanddate.com/news/time/cuba-starts-dst-2012.html
# </a>
# From Steffen Thorsen (2012-11-03):
# Radio Reloj and many other sources report that Cuba is changing back
@ -2878,7 +2798,7 @@ Zone America/Havana -5:29:28 - LMT 1890
-5:00 Cuba C%sT
# Dominica
# See 'southamerica'.
# See America/Port_of_Spain.
# Dominican Republic
@ -2928,15 +2848,15 @@ Zone America/El_Salvador -5:56:48 - LMT 1921 # San Salvador
# Grenada
# Guadeloupe
# St Barthelemy
# St Barthélemy
# St Martin (French part)
# See 'southamerica'.
# See America/Port_of_Spain.
# Guatemala
#
# From Gwillim Law (2006-04-22), after a heads-up from Oscar van Vlijmen:
# Diario Co Latino, at
# http://www.diariocolatino.com/internacionales/detalles.asp?NewsID=8079,
# <http://www.diariocolatino.com/internacionales/detalles.asp?NewsID=8079>,
# says in an article dated 2006-04-19 that the Guatemalan government had
# decided on that date to advance official time by 60 minutes, to lessen the
# impact of the elevated cost of oil.... Daylight saving time will last from
@ -2961,11 +2881,10 @@ Zone America/Guatemala -6:02:04 - LMT 1918 Oct 5
# Haiti
# From Gwillim Law (2005-04-15):
# Risto O. Nykanen wrote me that Haiti is now on DST.
# I searched for confirmation, and I found a
# <a href="http://www.haitianconsulate.org/time.doc"> press release
# Risto O. Nykänen wrote me that Haiti is now on DST.
# I searched for confirmation, and I found a press release
# on the Web page of the Haitian Consulate in Chicago (2005-03-31),
# </a>. Translated from French, it says:
# <http://www.haitianconsulate.org/time.doc>. Translated from French, it says:
#
# "The Prime Minister's Communication Office notifies the public in general
# and the press in particular that, following a decision of the Interior
@ -3042,7 +2961,7 @@ Zone America/Port-au-Prince -4:49:20 - LMT 1890
# <http://www.latribuna.hn/99299.html> that Manuel Zelaya, the president
# of Honduras, refused to back down on this.
# From Jesper Norgaard Welen (2006-08-08):
# From Jesper Nørgaard Welen (2006-08-08):
# It seems that Honduras has returned from DST to standard time this Monday at
# 00:00 hours (prolonging Sunday to 25 hours duration).
# http://www.worldtimezone.com/dst_news/dst_news_honduras04.html
@ -3092,7 +3011,7 @@ Zone America/Martinique -4:04:20 - LMT 1890 # Fort-de-France
-4:00 - AST
# Montserrat
# See 'southamerica'.
# See America/Port_of_Spain.
# Nicaragua
#
@ -3117,25 +3036,25 @@ Zone America/Martinique -4:04:20 - LMT 1890 # Fort-de-France
# http://www.lapalmainteractivo.com/guias/content/gen/ap/America_Latina/AMC_GEN_NICARAGUA_HORA.html
# and elsewhere, says (fifth paragraph, translated from Spanish): "The last
# time that a change of clocks was applied to save energy was in the year 2000
# during the Arnoldo Aleman administration."...
# during the Arnoldo Alemán administration."...
# The northamerica file says that Nicaragua has been on UTC-6 continuously
# since December 1998. I wasn't able to find any details of Nicaraguan time
# changes in 2000. Perhaps a note could be added to the northamerica file, to
# the effect that we have indirect evidence that DST was observed in 2000.
#
# From Jesper Norgaard Welen (2005-11-02):
# From Jesper Nørgaard Welen (2005-11-02):
# Nicaragua left DST the 2005-10-02 at 00:00 (local time).
# http://www.presidencia.gob.ni/presidencia/files_index/secretaria/comunicados/2005/septiembre/26septiembre-cambio-hora.htm
# (2005-09-26)
#
# From Jesper Norgaard Welen (2006-05-05):
# From Jesper Nørgaard Welen (2006-05-05):
# http://www.elnuevodiario.com.ni/2006/05/01/nacionales/18410
# (my informal translation)
# By order of the president of the republic, Enrique Bolanos, Nicaragua
# By order of the president of the republic, Enrique Bolaños, Nicaragua
# advanced by sixty minutes their official time, yesterday at 2 in the
# morning, and will stay that way until 30.th. of september.
# morning, and will stay that way until 30th of September.
#
# From Jesper Norgaard Welen (2006-09-30):
# From Jesper Nørgaard Welen (2006-09-30):
# http://www.presidencia.gob.ni/buscador_gaceta/BD/DECRETOS/2006/D-063-2006P-PRN-Cambio-Hora.pdf
# My informal translation runs:
# The natural sun time is restored in all the national territory, in that the
@ -3162,7 +3081,7 @@ Zone America/Managua -5:45:08 - LMT 1890
# Panama
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone America/Panama -5:18:08 - LMT 1890
-5:19:36 - CMT 1908 Apr 22 # Colon Mean Time
-5:19:36 - CMT 1908 Apr 22 # Colón Mean Time
-5:00 - EST
# Puerto Rico
@ -3175,7 +3094,7 @@ Zone America/Puerto_Rico -4:24:25 - LMT 1899 Mar 28 12:00 # San Juan
# St Kitts-Nevis
# St Lucia
# See 'southamerica'.
# See America/Port_of_Spain.
# St Pierre and Miquelon
# There are too many St Pierres elsewhere, so we'll use 'Miquelon'.
@ -3186,7 +3105,7 @@ Zone America/Miquelon -3:44:40 - LMT 1911 May 15 # St Pierre
-3:00 Canada PM%sT
# St Vincent and the Grenadines
# See 'southamerica'.
# See America/Port_of_Spain.
# Turks and Caicos
#
@ -3221,4 +3140,9 @@ Zone America/Grand_Turk -4:44:32 - LMT 1890
# British Virgin Is
# Virgin Is
# See 'southamerica'.
# See America/Port_of_Spain.
# Local Variables:
# coding: utf-8
# End:

View File

@ -1,4 +1,3 @@
# <pre>
# This file is in the public domain, so clarified as of
# 2009-05-17 by Arthur David Olson.

View File

@ -1,4 +1,3 @@
# <pre>
# This file is in the public domain, so clarified as of
# 2009-05-17 by Arthur David Olson.
@ -30,24 +29,24 @@
# I suggest the use of _Summer time_ instead of the more cumbersome
# _daylight-saving time_. _Summer time_ seems to be in general use
# in Europe and South America.
# -- E O Cutler, _New York Times_ (1937-02-14), quoted in
# --E O Cutler, _New York Times_ (1937-02-14), quoted in
# H L Mencken, _The American Language: Supplement I_ (1960), p 466
#
# Earlier editions of these tables also used the North American style
# for time zones in Brazil, but this was incorrect, as Brazilians say
# "summer time". Reinaldo Goulart, a Sao Paulo businessman active in
# "summer time". Reinaldo Goulart, a São Paulo businessman active in
# the railroad sector, writes (1999-07-06):
# The subject of time zones is currently a matter of discussion/debate in
# Brazil. Let's say that "the Brasilia time" is considered the
# "official time" because Brasilia is the capital city.
# The other three time zones are called "Brasilia time "minus one" or
# Brazil. Let's say that "the Brasília time" is considered the
# "official time" because Brasília is the capital city.
# The other three time zones are called "Brasília time "minus one" or
# "plus one" or "plus two". As far as I know there is no such
# name/designation as "Eastern Time" or "Central Time".
# So I invented the following (English-language) abbreviations for now.
# Corrections are welcome!
# std dst
# -2:00 FNT FNST Fernando de Noronha
# -3:00 BRT BRST Brasilia
# -3:00 BRT BRST Brasília
# -4:00 AMT AMST Amazon
# -5:00 ACT ACST Acre
@ -61,7 +60,7 @@
# Argentina: first Sunday in October to first Sunday in April since 1976.
# Double Summer time from 1969 to 1974. Switches at midnight.
# From U. S. Naval Observatory (1988-01-199):
# From U. S. Naval Observatory (1988-01-19):
# ARGENTINA 3 H BEHIND UTC
# From Hernan G. Otero (1995-06-26):
@ -95,7 +94,7 @@ Rule Arg 1988 only - Dec 1 0:00 1:00 S
# From Hernan G. Otero (1995-06-26):
# These corrections were contributed by InterSoft Argentina S.A.,
# obtaining the data from the:
# Talleres de Hidrografia Naval Argentina
# Talleres de Hidrografía Naval Argentina
# (Argentine Naval Hydrography Institute)
Rule Arg 1989 1993 - Mar Sun>=1 0:00 0 -
Rule Arg 1989 1992 - Oct Sun>=15 0:00 1:00 S
@ -117,13 +116,13 @@ Rule Arg 1999 only - Oct Sun>=1 0:00 1:00 S
Rule Arg 2000 only - Mar 3 0:00 0 -
#
# From Peter Gradelski via Steffen Thorsen (2000-03-01):
# We just checked with our Sao Paulo office and they say the government of
# We just checked with our São Paulo office and they say the government of
# Argentina decided not to become one of the countries that go on or off DST.
# So Buenos Aires should be -3 hours from GMT at all times.
#
# From Fabian L. Arce Jofre (2000-04-04):
# From Fabián L. Arce Jofré (2000-04-04):
# The law that claimed DST for Argentina was derogated by President Fernando
# de la Rua on March 2, 2000, because it would make people spend more energy
# de la Rúa on March 2, 2000, because it would make people spend more energy
# in the winter time, rather than less. The change took effect on March 3.
#
# From Mariano Absatz (2001-06-06):
@ -156,15 +155,13 @@ Rule Arg 2000 only - Mar 3 0:00 0 -
# that Argentina will use DST next year as well, from October to
# March, although exact rules are not given.
#
# From Jesper Norgaard Welen (2007-12-26)
# From Jesper Nørgaard Welen (2007-12-26)
# The last hurdle of Argentina DST is over, the proposal was approved in
# the lower chamber too (Deputados) with a vote 192 for and 2 against.
# the lower chamber too (Diputados) with a vote 192 for and 2 against.
# By the way thanks to Mariano Absatz and Daniel Mario Vega for the link to
# the original scanned proposal, where the dates and the zero hours are
# clear and unambiguous...This is the article about final approval:
# <a href="http://www.lanacion.com.ar/politica/nota.asp?nota_id=973996">
# http://www.lanacion.com.ar/politica/nota.asp?nota_id=973996
# </a>
#
# From Paul Eggert (2007-12-22):
# For dates after mid-2008, the following rules are my guesses and
@ -174,13 +171,8 @@ Rule Arg 2000 only - Mar 3 0:00 0 -
# As per message from Carlos Alberto Fonseca Arauz (Nicaragua),
# Argentina will start DST on Sunday October 19, 2008.
#
# <a href="http://www.worldtimezone.com/dst_news/dst_news_argentina03.html">
# http://www.worldtimezone.com/dst_news/dst_news_argentina03.html
# </a>
# OR
# <a href="http://www.impulsobaires.com.ar/nota.php?id=57832 (in spanish)">
# http://www.impulsobaires.com.ar/nota.php?id=57832 (in spanish)
# </a>
# From Rodrigo Severo (2008-10-06):
# Here is some info available at a Gentoo bug related to TZ on Argentina's DST:
@ -189,48 +181,37 @@ Rule Arg 2000 only - Mar 3 0:00 0 -
# Hi, there is a problem with timezone-data-2008e and maybe with
# timezone-data-2008f
# Argentinian law [Number] 25.155 is no longer valid.
# <a href="http://www.infoleg.gov.ar/infolegInternet/anexos/60000-64999/60036/norma.htm">
# http://www.infoleg.gov.ar/infolegInternet/anexos/60000-64999/60036/norma.htm
# </a>
# The new one is law [Number] 26.350
# <a href="http://www.infoleg.gov.ar/infolegInternet/anexos/135000-139999/136191/norma.htm">
# http://www.infoleg.gov.ar/infolegInternet/anexos/135000-139999/136191/norma.htm
# </a>
# So there is no summer time in Argentina for now.
# From Mariano Absatz (2008-10-20):
# Decree 1693/2008 applies Law 26.350 for the summer 2008/2009 establishing DST in Argentina
# From 2008-10-19 until 2009-03-15
# <a href="http://www.boletinoficial.gov.ar/Bora.Portal/CustomControls/PdfContent.aspx?fp=16102008&pi=3&pf=4&s=0&sec=01">
# http://www.boletinoficial.gov.ar/Bora.Portal/CustomControls/PdfContent.aspx?fp=16102008&pi=3&pf=4&s=0&sec=01
# </a>
#
# Decree 1705/2008 excepting 12 Provinces from applying DST in the summer 2008/2009:
# Catamarca, La Rioja, Mendoza, Salta, San Juan, San Luis, La Pampa, Neuquen, Rio Negro, Chubut, Santa Cruz
# and Tierra del Fuego
# <a href="http://www.boletinoficial.gov.ar/Bora.Portal/CustomControls/PdfContent.aspx?fp=17102008&pi=1&pf=1&s=0&sec=01">
# Decree 1705/2008 excepting 12 Provinces from applying DST in the summer
# 2008/2009: Catamarca, La Rioja, Mendoza, Salta, San Juan, San Luis, La
# Pampa, Neuquén, Rio Negro, Chubut, Santa Cruz and Tierra del Fuego
# http://www.boletinoficial.gov.ar/Bora.Portal/CustomControls/PdfContent.aspx?fp=17102008&pi=1&pf=1&s=0&sec=01
# </a>
#
# Press release 235 dated Saturday October 18th, from the Government of the Province of Jujuy saying
# it will not apply DST either (even when it was not included in Decree 1705/2008)
# <a href="http://www.jujuy.gov.ar/index2/partes_prensa/18_10_08/235-181008.doc">
# http://www.jujuy.gov.ar/index2/partes_prensa/18_10_08/235-181008.doc
# </a>
# From fullinet (2009-10-18):
# As announced in
# <a hef="http://www.argentina.gob.ar/argentina/portal/paginas.dhtml?pagina=356">
# http://www.argentina.gob.ar/argentina/portal/paginas.dhtml?pagina=356
# </a>
# (an official .gob.ar) under title: "Sin Cambio de Hora" (english: "No hour change")
#
# "Por el momento, el Gobierno Nacional resolvio no modificar la hora
# oficial, decision que estaba en estudio para su implementacion el
# domingo 18 de octubre. Desde el Ministerio de Planificacion se anuncio
# que la Argentina hoy, en estas condiciones meteorologicas, no necesita
# la modificacion del huso horario, ya que 2009 nos encuentra con
# crecimiento en la produccion y distribucion energetica."
# "Por el momento, el Gobierno Nacional resolvió no modificar la hora
# oficial, decisión que estaba en estudio para su implementación el
# domingo 18 de octubre. Desde el Ministerio de Planificación se anunció
# que la Argentina hoy, en estas condiciones meteorológicas, no necesita
# la modificación del huso horario, ya que 2009 nos encuentra con
# crecimiento en la producción y distribución energética."
Rule Arg 2007 only - Dec 30 0:00 1:00 S
Rule Arg 2008 2009 - Mar Sun>=15 0:00 0 -
@ -245,9 +226,9 @@ Rule Arg 2008 only - Oct Sun>=15 0:00 1:00 S
# now we'll assume it's for this year only.
#
# From Paul Eggert (2006-03-22):
# <a href="http://www.spicasc.net/horvera.html">
# Hora de verano para la Republica Argentina (2003-06-08)
# </a> says that standard time in Argentina from 1894-10-31
# <http://www.spicasc.net/horvera.html>
# says that standard time in Argentina from 1894-10-31
# to 1920-05-01 was -4:16:48.25. Go with this more-precise value
# over Shanks & Pottenger.
#
@ -262,10 +243,10 @@ Rule Arg 2008 only - Oct Sun>=15 0:00 1:00 S
# time in October 17th.
#
# Catamarca, Chubut, La Rioja, San Juan, San Luis, Santa Cruz,
# Tierra del Fuego, Tucuman.
# Tierra del Fuego, Tucumán.
#
# From Mariano Absatz (2004-06-14):
# ... this weekend, the Province of Tucuman decided it'd go back to UTC-03:00
# ... this weekend, the Province of Tucumán decided it'd go back to UTC-03:00
# yesterday midnight (that is, at 24:00 Saturday 12th), since the people's
# annoyance with the change is much higher than the power savings obtained....
#
@ -300,28 +281,19 @@ Rule Arg 2008 only - Oct Sun>=15 0:00 1:00 S
# Here are articles that Argentina Province San Luis is planning to end DST
# as earlier as upcoming Monday January 21, 2008 or February 2008:
#
# Provincia argentina retrasa reloj y marca diferencia con resto del pais
# Provincia argentina retrasa reloj y marca diferencia con resto del país
# (Argentine Province delayed clock and mark difference with the rest of the
# country)
# <a href="http://cl.invertia.com/noticias/noticia.aspx?idNoticia=200801171849_EFE_ET4373&idtel">
# http://cl.invertia.com/noticias/noticia.aspx?idNoticia=200801171849_EFE_ET4373&idtel
# </a>
#
# Es inminente que en San Luis atrasen una hora los relojes
# (It is imminent in San Luis clocks one hour delay)
# <a href="http://www.lagaceta.com.ar/vernotae.asp?id_nota=253414">
# http://www.lagaceta.com.ar/vernotae.asp?id_nota=253414
# </a>
#
# <a href="http://www.worldtimezone.net/dst_news/dst_news_argentina02.html">
# http://www.lagaceta.com.ar/nota/253414/Economia/Es-inminente-que-en-San-Luis-atrasen-una-hora-los-relojes.html
# http://www.worldtimezone.net/dst_news/dst_news_argentina02.html
# </a>
# From Jesper Norgaard Welen (2008-01-18):
# From Jesper Nørgaard Welen (2008-01-18):
# The page of the San Luis provincial government
# <a href="http://www.sanluis.gov.ar/notas.asp?idCanal=0&id=22812">
# http://www.sanluis.gov.ar/notas.asp?idCanal=0&id=22812
# </a>
# confirms what Alex Krivenyshev has earlier sent to the tz
# emailing list about that San Luis plans to return to standard
# time much earlier than the rest of the country. It also
@ -334,15 +306,13 @@ Rule Arg 2008 only - Oct Sun>=15 0:00 1:00 S
# independent changes in the southamerica file of San Luis in
# 1990 and 1991 which has not been confirmed).
# From Jesper Norgaard Welen (2008-01-25):
# From Jesper Nørgaard Welen (2008-01-25):
# Unfortunately the below page has become defunct, about the San Luis
# time change. Perhaps because it now is part of a group of pages "Most
# important pages of 2008."
#
# You can use
# <a href="http://www.sanluis.gov.ar/notas.asp?idCanal=8141&id=22834">
# http://www.sanluis.gov.ar/notas.asp?idCanal=8141&id=22834
# </a>
# instead it seems. Or use "Buscador" from the main page of the San Luis
# government, and fill in "huso" and click OK, and you will get 3 pages
# from which the first one is identical to the above.
@ -376,14 +346,9 @@ Rule Arg 2008 only - Oct Sun>=15 0:00 1:00 S
# to utc-04:00 until the second Saturday in October...
#
# The press release is at
# <a href="http://www.sanluis.gov.ar/SL/Paginas/NoticiaDetalle.asp?TemaId=1&InfoPrensaId=3102">
# http://www.sanluis.gov.ar/SL/Paginas/NoticiaDetalle.asp?TemaId=1&InfoPrensaId=3102
# </a>
# (I couldn't find the decree, but
# <a href="http://www.sanluis.gov.ar">
# www.sanluis.gov.ar
# <a/>
# is the official page for the Province Government).
# (I couldn't find the decree, but www.sanluis.gov.ar
# is the official page for the Province Government.)
#
# There's also a note in only one of the major national papers ...
# http://www.lanacion.com.ar/nota.asp?nota_id=1107912
@ -400,9 +365,7 @@ Rule Arg 2008 only - Oct Sun>=15 0:00 1:00 S
# ...the Province of San Luis is a case in itself.
#
# The Law at
# <a href="http://www.diputadossanluis.gov.ar/diputadosasp/paginas/verNorma.asp?NormaID=276>"
# http://www.diputadossanluis.gov.ar/diputadosasp/paginas/verNorma.asp?NormaID=276
# </a>
# is ambiguous because establishes a calendar from the 2nd Sunday in
# October at 0:00 thru the 2nd Saturday in March at 24:00 and the
# complement of that starting on the 2nd Sunday of March at 0:00 and
@ -433,17 +396,13 @@ Rule Arg 2008 only - Oct Sun>=15 0:00 1:00 S
# From Alexander Krivenyshev (2010-04-09):
# According to news reports from El Diario de la Republica Province San
# Luis, Argentina (standard time UTC-04) will keep Daylight Saving Time
# after April 11, 2010--will continue to have same time as rest of
# after April 11, 2010 - will continue to have same time as rest of
# Argentina (UTC-3) (no DST).
#
# Confirmaron la pr&oacute;rroga del huso horario de verano (Spanish)
# <a href="http://www.eldiariodelarepublica.com/index.php?option=com_content&task=view&id=29383&Itemid=9">
# Confirmaron la prórroga del huso horario de verano (Spanish)
# http://www.eldiariodelarepublica.com/index.php?option=com_content&task=view&id=29383&Itemid=9
# </a>
# or (some English translation):
# <a href="http://www.worldtimezone.com/dst_news/dst_news_argentina08.html">
# http://www.worldtimezone.com/dst_news/dst_news_argentina08.html
# </a>
# From Mariano Absatz (2010-04-12):
# yes...I can confirm this...and given that San Luis keeps calling
@ -463,20 +422,20 @@ Rule Arg 2008 only - Oct Sun>=15 0:00 1:00 S
# setting for time stamps past 2038.
# From Paul Eggert (2013-02-21):
# Milne says Cordoba time was -4:16:48.2. Round to the nearest second.
# Milne says Córdoba time was -4:16:48.2. Round to the nearest second.
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
#
# Buenos Aires (BA), Capital Federal (CF),
Zone America/Argentina/Buenos_Aires -3:53:48 - LMT 1894 Oct 31
-4:16:48 - CMT 1920 May # Cordoba Mean Time
-4:16:48 - CMT 1920 May # Córdoba Mean Time
-4:00 - ART 1930 Dec
-4:00 Arg AR%sT 1969 Oct 5
-3:00 Arg AR%sT 1999 Oct 3
-4:00 Arg AR%sT 2000 Mar 3
-3:00 Arg AR%sT
#
# Cordoba (CB), Santa Fe (SF), Entre Rios (ER), Corrientes (CN), Misiones (MN),
# Córdoba (CB), Santa Fe (SF), Entre Ríos (ER), Corrientes (CN), Misiones (MN),
# Chaco (CC), Formosa (FM), Santiago del Estero (SE)
#
# Shanks & Pottenger also make the following claims, which we haven't verified:
@ -496,7 +455,7 @@ Zone America/Argentina/Cordoba -4:16:48 - LMT 1894 Oct 31
-4:00 Arg AR%sT 2000 Mar 3
-3:00 Arg AR%sT
#
# Salta (SA), La Pampa (LP), Neuquen (NQ), Rio Negro (RN)
# Salta (SA), La Pampa (LP), Neuquén (NQ), Rio Negro (RN)
Zone America/Argentina/Salta -4:21:40 - LMT 1894 Oct 31
-4:16:48 - CMT 1920 May
-4:00 - ART 1930 Dec
@ -508,7 +467,7 @@ Zone America/Argentina/Salta -4:21:40 - LMT 1894 Oct 31
-3:00 Arg AR%sT 2008 Oct 18
-3:00 - ART
#
# Tucuman (TM)
# Tucumán (TM)
Zone America/Argentina/Tucuman -4:20:52 - LMT 1894 Oct 31
-4:16:48 - CMT 1920 May
-4:00 - ART 1930 Dec
@ -620,7 +579,7 @@ Zone America/Argentina/San_Luis -4:25:24 - LMT 1894 Oct 31
#
# Santa Cruz (SC)
Zone America/Argentina/Rio_Gallegos -4:36:52 - LMT 1894 Oct 31
-4:16:48 - CMT 1920 May # Cordoba Mean Time
-4:16:48 - CMT 1920 May # Córdoba Mean Time
-4:00 - ART 1930 Dec
-4:00 Arg AR%sT 1969 Oct 5
-3:00 Arg AR%sT 1999 Oct 3
@ -630,9 +589,9 @@ Zone America/Argentina/Rio_Gallegos -4:36:52 - LMT 1894 Oct 31
-3:00 Arg AR%sT 2008 Oct 18
-3:00 - ART
#
# Tierra del Fuego, Antartida e Islas del Atlantico Sur (TF)
# Tierra del Fuego, Antártida e Islas del Atlántico Sur (TF)
Zone America/Argentina/Ushuaia -4:33:12 - LMT 1894 Oct 31
-4:16:48 - CMT 1920 May # Cordoba Mean Time
-4:16:48 - CMT 1920 May # Córdoba Mean Time
-4:00 - ART 1930 Dec
-4:00 Arg AR%sT 1969 Oct 5
-3:00 Arg AR%sT 1999 Oct 3
@ -663,13 +622,13 @@ Zone America/La_Paz -4:32:36 - LMT 1890
# From IATA SSIM (1996-02):
# _Only_ the following states in BR1 observe DST: Rio Grande do Sul (RS),
# Santa Catarina (SC), Parana (PR), Sao Paulo (SP), Rio de Janeiro (RJ),
# Espirito Santo (ES), Minas Gerais (MG), Bahia (BA), Goias (GO),
# Santa Catarina (SC), Paraná (PR), São Paulo (SP), Rio de Janeiro (RJ),
# Espírito Santo (ES), Minas Gerais (MG), Bahia (BA), Goiás (GO),
# Distrito Federal (DF), Tocantins (TO), Sergipe [SE] and Alagoas [AL].
# [The last three states are new to this issue of the IATA SSIM.]
# From Gwillim Law (1996-10-07):
# Geography, history (Tocantins was part of Goias until 1989), and other
# Geography, history (Tocantins was part of Goiás until 1989), and other
# sources of time zone information lead me to believe that AL, SE, and TO were
# always in BR1, and so the only change was whether or not they observed DST....
# The earliest issue of the SSIM I have is 2/91. Each issue from then until
@ -683,16 +642,14 @@ Zone America/La_Paz -4:32:36 - LMT 1890
# However, some conclusions can be drawn from another IATA manual: the Airline
# Coding Directory, which lists close to 400 airports in Brazil. For each
# airport it gives a time zone which is coded to the SSIM. From that
# information, I'm led to conclude that the states of Amapa (AP), Ceara (CE),
# Maranhao (MA), Paraiba (PR), Pernambuco (PE), Piaui (PI), and Rio Grande do
# Norte (RN), and the eastern part of Para (PA) are all in BR1 without DST.
# information, I'm led to conclude that the states of Amapá (AP), Ceará (CE),
# Maranhão (MA), Paraíba (PR), Pernambuco (PE), Piauí (PI), and Rio Grande do
# Norte (RN), and the eastern part of Pará (PA) are all in BR1 without DST.
# From Marcos Tadeu (1998-09-27):
# <a href="http://pcdsh01.on.br/verao1.html">
# Brazilian official page
# </a>
# Brazilian official page <http://pcdsh01.on.br/verao1.html>
# From Jesper Norgaard (2000-11-03):
# From Jesper Nørgaard (2000-11-03):
# [For an official list of which regions in Brazil use which time zones, see:]
# http://pcdsh01.on.br/Fusbr.htm
# http://pcdsh01.on.br/Fusbrhv.htm
@ -725,13 +682,13 @@ Zone America/La_Paz -4:32:36 - LMT 1890
# From Paul Schulze (2008-06-24):
# ...by law number 11.662 of April 24, 2008 (published in the "Diario
# Oficial da Uniao"...) in Brazil there are changes in the timezones,
# Oficial da União"...) in Brazil there are changes in the timezones,
# effective today (00:00am at June 24, 2008) as follows:
#
# a) The timezone UTC+5 is e[x]tinguished, with all the Acre state and the
# part of the Amazonas state that had this timezone now being put to the
# timezone UTC+4
# b) The whole Para state now is put at timezone UTC+3, instead of just
# b) The whole Pará state now is put at timezone UTC+3, instead of just
# part of it, as was before.
#
# This change follows a proposal of senator Tiao Viana of Acre state, that
@ -744,13 +701,11 @@ Zone America/La_Paz -4:32:36 - LMT 1890
# From Rodrigo Severo (2008-06-24):
# Just correcting the URL:
# <a href="https://www.in.gov.br/imprensa/visualiza/index.jsp?jornal=do&secao=1&pagina=1&data=25/04/2008">
# https://www.in.gov.br/imprensa/visualiza/index.jsp?jornal=do&secao=1&pagina=1&data=25/04/2008
# </a>
#
# As a result of the above Decree I believe the America/Rio_Branco
# timezone shall be modified from UTC-5 to UTC-4 and a new timezone shall
# be created to represent the...west side of the Para State. I
# be created to represent the...west side of the Pará State. I
# suggest this new timezone be called Santarem as the most
# important/populated city in the affected area.
#
@ -759,19 +714,16 @@ Zone America/La_Paz -4:32:36 - LMT 1890
# From Alex Krivenyshev (2008-06-24):
# This is a quick reference page for New and Old Brazil Time Zones map.
# <a href="http://www.worldtimezone.com/brazil-time-new-old.php">
# http://www.worldtimezone.com/brazil-time-new-old.php
# </a>
#
# - 4 time zones replaced by 3 time zones-eliminating time zone UTC- 05
# (state Acre and the part of the Amazonas will be UTC/GMT- 04) - western
# part of Par state is moving to one timezone UTC- 03 (from UTC -04).
# - 4 time zones replaced by 3 time zones - eliminating time zone UTC-05
# (state Acre and the part of the Amazonas will be UTC/GMT-04) - western
# part of Par state is moving to one timezone UTC-03 (from UTC-04).
# From Paul Eggert (2002-10-10):
# The official decrees referenced below are mostly taken from
# <a href="http://pcdsh01.on.br/DecHV.html">
# Decretos sobre o Horario de Verao no Brasil
# </a>.
# Decretos sobre o Horário de Verão no Brasil
# <http://pcdsh01.on.br/DecHV.html>.
# From Steffen Thorsen (2008-08-29):
# As announced by the government and many newspapers in Brazil late
@ -783,25 +735,17 @@ Zone America/La_Paz -4:32:36 - LMT 1890
# It has not yet been posted to http://pcdsh01.on.br/DecHV.html
#
# An official page about it:
# <a href="http://www.mme.gov.br/site/news/detail.do?newsId=16722">
# http://www.mme.gov.br/site/news/detail.do?newsId=16722
# </a>
# Note that this link does not always work directly, but must be accessed
# by going to
# <a href="http://www.mme.gov.br/first">
# http://www.mme.gov.br/first
# </a>
#
# One example link that works directly:
# <a href="http://jornale.com.br/index.php?option=com_content&task=view&id=13530&Itemid=54">
# http://jornale.com.br/index.php?option=com_content&task=view&id=13530&Itemid=54
# (Portuguese)
# </a>
#
# We have a written a short article about it as well:
# <a href="http://www.timeanddate.com/news/time/brazil-dst-2008-2009.html">
# http://www.timeanddate.com/news/time/brazil-dst-2008-2009.html
# </a>
#
# From Alexander Krivenyshev (2011-10-04):
# State Bahia will return to Daylight savings time this year after 8 years off.
@ -809,17 +753,12 @@ Zone America/La_Paz -4:32:36 - LMT 1890
# television station in Salvador.
# In Portuguese:
# <a href="http://g1.globo.com/bahia/noticia/2011/10/governador-jaques-wagner-confirma-horario-de-verao-na-bahia.html">
# http://g1.globo.com/bahia/noticia/2011/10/governador-jaques-wagner-confirma-horario-de-verao-na-bahia.html
# </a> and
# <a href="http://noticias.terra.com.br/brasil/noticias/0,,OI5390887-EI8139,00-Bahia+volta+a+ter+horario+de+verao+apos+oito+anos.html">
# http://noticias.terra.com.br/brasil/noticias/0,,OI5390887-EI8139,00-Bahia+volta+a+ter+horario+de+verao+apos+oito+anos.html
# </a>
# From Guilherme Bernardes Rodrigues (2011-10-07):
# There is news in the media, however there is still no decree about it.
# I just send a e-mail to Zulmira Brandao at
# <a href="http://pcdsh01.on.br/">http://pcdsh01.on.br/</a> the
# I just send a e-mail to Zulmira Brandao at http://pcdsh01.on.br/ the
# official agency about time in Brazil, and she confirmed that the old rule is
# still in force.
@ -831,9 +770,7 @@ Zone America/La_Paz -4:32:36 - LMT 1890
#
# DECRETO No- 7.584, DE 13 DE OUTUBRO DE 2011
# Link :
# <a href="http://www.in.gov.br/visualiza/index.jsp?data=13/10/2011&jornal=1000&pagina=6&totalArquivos=6">
# http://www.in.gov.br/visualiza/index.jsp?data=13/10/2011&jornal=1000&pagina=6&totalArquivos=6
# </a>
# From Kelley Cook (2012-10-16):
# The governor of state of Bahia in Brazil announced on Thursday that
@ -861,42 +798,42 @@ Zone America/La_Paz -4:32:36 - LMT 1890
# For now, assume western Amazonas will change as well.
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
# Decree <a href="http://pcdsh01.on.br/HV20466.htm">20,466</a> (1931-10-01)
# Decree <a href="http://pcdsh01.on.br/HV21896.htm">21,896</a> (1932-01-10)
# Decree 20,466 <http://pcdsh01.on.br/HV20466.htm> (1931-10-01)
# Decree 21,896 <http://pcdsh01.on.br/HV21896.htm> (1932-01-10)
Rule Brazil 1931 only - Oct 3 11:00 1:00 S
Rule Brazil 1932 1933 - Apr 1 0:00 0 -
Rule Brazil 1932 only - Oct 3 0:00 1:00 S
# Decree <a href="http://pcdsh01.on.br/HV23195.htm">23,195</a> (1933-10-10)
# Decree 23,195 <http://pcdsh01.on.br/HV23195.htm> (1933-10-10)
# revoked DST.
# Decree <a href="http://pcdsh01.on.br/HV27496.htm">27,496</a> (1949-11-24)
# Decree <a href="http://pcdsh01.on.br/HV27998.htm">27,998</a> (1950-04-13)
# Decree 27,496 <http://pcdsh01.on.br/HV27496.htm> (1949-11-24)
# Decree 27,998 <http://pcdsh01.on.br/HV27998.htm> (1950-04-13)
Rule Brazil 1949 1952 - Dec 1 0:00 1:00 S
Rule Brazil 1950 only - Apr 16 1:00 0 -
Rule Brazil 1951 1952 - Apr 1 0:00 0 -
# Decree <a href="http://pcdsh01.on.br/HV32308.htm">32,308</a> (1953-02-24)
# Decree 32,308 <http://pcdsh01.on.br/HV32308.htm> (1953-02-24)
Rule Brazil 1953 only - Mar 1 0:00 0 -
# Decree <a href="http://pcdsh01.on.br/HV34724.htm">34,724</a> (1953-11-30)
# Decree 34,724 <http://pcdsh01.on.br/HV34724.htm> (1953-11-30)
# revoked DST.
# Decree <a href="http://pcdsh01.on.br/HV52700.htm">52,700</a> (1963-10-18)
# Decree 52,700 <http://pcdsh01.on.br/HV52700.htm> (1963-10-18)
# established DST from 1963-10-23 00:00 to 1964-02-29 00:00
# in SP, RJ, GB, MG, ES, due to the prolongation of the drought.
# Decree <a href="http://pcdsh01.on.br/HV53071.htm">53,071</a> (1963-12-03)
# Decree 53,071 <http://pcdsh01.on.br/HV53071.htm> (1963-12-03)
# extended the above decree to all of the national territory on 12-09.
Rule Brazil 1963 only - Dec 9 0:00 1:00 S
# Decree <a href="http://pcdsh01.on.br/HV53604.htm">53,604</a> (1964-02-25)
# Decree 53,604 <http://pcdsh01.on.br/HV53604.htm> (1964-02-25)
# extended summer time by one day to 1964-03-01 00:00 (start of school).
Rule Brazil 1964 only - Mar 1 0:00 0 -
# Decree <a href="http://pcdsh01.on.br/HV55639.htm">55,639</a> (1965-01-27)
# Decree 55,639 <http://pcdsh01.on.br/HV55639.htm> (1965-01-27)
Rule Brazil 1965 only - Jan 31 0:00 1:00 S
Rule Brazil 1965 only - Mar 31 0:00 0 -
# Decree <a href="http://pcdsh01.on.br/HV57303.htm">57,303</a> (1965-11-22)
# Decree 57,303 <http://pcdsh01.on.br/HV57303.htm> (1965-11-22)
Rule Brazil 1965 only - Dec 1 0:00 1:00 S
# Decree <a href="http://pcdsh01.on.br/HV57843.htm">57,843</a> (1966-02-18)
# Decree 57,843 <http://pcdsh01.on.br/HV57843.htm> (1966-02-18)
Rule Brazil 1966 1968 - Mar 1 0:00 0 -
Rule Brazil 1966 1967 - Nov 1 0:00 1:00 S
# Decree <a href="http://pcdsh01.on.br/HV63429.htm">63,429</a> (1968-10-15)
# Decree 63,429 <http://pcdsh01.on.br/HV63429.htm> (1968-10-15)
# revoked DST.
# Decree <a href="http://pcdsh01.on.br/HV91698.htm">91,698</a> (1985-09-27)
# Decree 91,698 <http://pcdsh01.on.br/HV91698.htm> (1985-09-27)
Rule Brazil 1985 only - Nov 2 0:00 1:00 S
# Decree 92,310 (1986-01-21)
# Decree 92,463 (1986-03-13)
@ -904,42 +841,42 @@ Rule Brazil 1986 only - Mar 15 0:00 0 -
# Decree 93,316 (1986-10-01)
Rule Brazil 1986 only - Oct 25 0:00 1:00 S
Rule Brazil 1987 only - Feb 14 0:00 0 -
# Decree <a href="http://pcdsh01.on.br/HV94922.htm">94,922</a> (1987-09-22)
# Decree 94,922 <http://pcdsh01.on.br/HV94922.htm> (1987-09-22)
Rule Brazil 1987 only - Oct 25 0:00 1:00 S
Rule Brazil 1988 only - Feb 7 0:00 0 -
# Decree <a href="http://pcdsh01.on.br/HV96676.htm">96,676</a> (1988-09-12)
# Decree 96,676 <http://pcdsh01.on.br/HV96676.htm> (1988-09-12)
# except for the states of AC, AM, PA, RR, RO, and AP (then a territory)
Rule Brazil 1988 only - Oct 16 0:00 1:00 S
Rule Brazil 1989 only - Jan 29 0:00 0 -
# Decree <a href="http://pcdsh01.on.br/HV98077.htm">98,077</a> (1989-08-21)
# Decree 98,077 <http://pcdsh01.on.br/HV98077.htm> (1989-08-21)
# with the same exceptions
Rule Brazil 1989 only - Oct 15 0:00 1:00 S
Rule Brazil 1990 only - Feb 11 0:00 0 -
# Decree <a href="http://pcdsh01.on.br/HV99530.htm">99,530</a> (1990-09-17)
# Decree 99,530 <http://pcdsh01.on.br/HV99530.htm> (1990-09-17)
# adopted by RS, SC, PR, SP, RJ, ES, MG, GO, MS, DF.
# Decree 99,629 (1990-10-19) adds BA, MT.
Rule Brazil 1990 only - Oct 21 0:00 1:00 S
Rule Brazil 1991 only - Feb 17 0:00 0 -
# <a href="http://pcdsh01.on.br/HV1991.htm">Unnumbered decree</a> (1991-09-25)
# Unnumbered decree <http://pcdsh01.on.br/HV1991.htm> (1991-09-25)
# adopted by RS, SC, PR, SP, RJ, ES, MG, BA, GO, MT, MS, DF.
Rule Brazil 1991 only - Oct 20 0:00 1:00 S
Rule Brazil 1992 only - Feb 9 0:00 0 -
# <a href="http://pcdsh01.on.br/HV1992.htm">Unnumbered decree</a> (1992-10-16)
# Unnumbered decree <http://pcdsh01.on.br/HV1992.htm> (1992-10-16)
# adopted by same states.
Rule Brazil 1992 only - Oct 25 0:00 1:00 S
Rule Brazil 1993 only - Jan 31 0:00 0 -
# Decree <a href="http://pcdsh01.on.br/HV942.htm">942</a> (1993-09-28)
# Decree 942 <http://pcdsh01.on.br/HV942.htm> (1993-09-28)
# adopted by same states, plus AM.
# Decree <a href="http://pcdsh01.on.br/HV1252.htm">1,252</a> (1994-09-22;
# Decree 1,252 <http://pcdsh01.on.br/HV1252.htm> (1994-09-22;
# web page corrected 2004-01-07) adopted by same states, minus AM.
# Decree <a href="http://pcdsh01.on.br/HV1636.htm">1,636</a> (1995-09-14)
# Decree 1,636 <http://pcdsh01.on.br/HV1636.htm> (1995-09-14)
# adopted by same states, plus MT and TO.
# Decree <a href="http://pcdsh01.on.br/HV1674.htm">1,674</a> (1995-10-13)
# Decree 1,674 <http://pcdsh01.on.br/HV1674.htm> (1995-10-13)
# adds AL, SE.
Rule Brazil 1993 1995 - Oct Sun>=11 0:00 1:00 S
Rule Brazil 1994 1995 - Feb Sun>=15 0:00 0 -
Rule Brazil 1996 only - Feb 11 0:00 0 -
# Decree <a href="http://pcdsh01.on.br/HV2000.htm">2,000</a> (1996-09-04)
# Decree 2,000 <http://pcdsh01.on.br/HV2000.htm> (1996-09-04)
# adopted by same states, minus AL, SE.
Rule Brazil 1996 only - Oct 6 0:00 1:00 S
Rule Brazil 1997 only - Feb 16 0:00 0 -
@ -952,53 +889,51 @@ Rule Brazil 1997 only - Feb 16 0:00 0 -
#
# Decree 2,317 (1997-09-04), adopted by same states.
Rule Brazil 1997 only - Oct 6 0:00 1:00 S
# Decree <a href="http://pcdsh01.on.br/figuras/HV2495.JPG">2,495</a>
# Decree 2,495 <http://pcdsh01.on.br/figuras/HV2495.JPG>
# (1998-02-10)
Rule Brazil 1998 only - Mar 1 0:00 0 -
# Decree <a href="http://pcdsh01.on.br/figuras/Hv98.jpg">2,780</a> (1998-09-11)
# Decree 2,780 <http://pcdsh01.on.br/figuras/Hv98.jpg> (1998-09-11)
# adopted by the same states as before.
Rule Brazil 1998 only - Oct 11 0:00 1:00 S
Rule Brazil 1999 only - Feb 21 0:00 0 -
# Decree <a href="http://pcdsh01.on.br/figuras/HV3150.gif">3,150</a>
# Decree 3,150 <http://pcdsh01.on.br/figuras/HV3150.gif>
# (1999-08-23) adopted by same states.
# Decree <a href="http://pcdsh01.on.br/DecHV99.gif">3,188</a> (1999-09-30)
# Decree 3,188 <http://pcdsh01.on.br/DecHV99.gif> (1999-09-30)
# adds SE, AL, PB, PE, RN, CE, PI, MA and RR.
Rule Brazil 1999 only - Oct 3 0:00 1:00 S
Rule Brazil 2000 only - Feb 27 0:00 0 -
# Decree <a href="http://pcdsh01.on.br/DEC3592.htm">3,592</a> (2000-09-06)
# Decree 3,592 <http://pcdsh01.on.br/DEC3592.htm> (2000-09-06)
# adopted by the same states as before.
# Decree <a href="http://pcdsh01.on.br/Dec3630.jpg">3,630</a> (2000-10-13)
# Decree 3,630 <http://pcdsh01.on.br/Dec3630.jpg> (2000-10-13)
# repeals DST in PE and RR, effective 2000-10-15 00:00.
# Decree <a href="http://pcdsh01.on.br/Dec3632.jpg">3,632</a> (2000-10-17)
# Decree 3,632 <http://pcdsh01.on.br/Dec3632.jpg> (2000-10-17)
# repeals DST in SE, AL, PB, RN, CE, PI and MA, effective 2000-10-22 00:00.
# Decree <a href="http://pcdsh01.on.br/figuras/HV3916.gif">3,916</a>
# Decree 3,916 <http://pcdsh01.on.br/figuras/HV3916.gif>
# (2001-09-13) reestablishes DST in AL, CE, MA, PB, PE, PI, RN, SE.
Rule Brazil 2000 2001 - Oct Sun>=8 0:00 1:00 S
Rule Brazil 2001 2006 - Feb Sun>=15 0:00 0 -
# Decree 4,399 (2002-10-01) repeals DST in AL, CE, MA, PB, PE, PI, RN, SE.
# <a href="http://www.presidencia.gov.br/CCIVIL/decreto/2002/D4399.htm">4,399</a>
# 4,399 <http://www.presidencia.gov.br/CCIVIL/decreto/2002/D4399.htm>
Rule Brazil 2002 only - Nov 3 0:00 1:00 S
# Decree 4,844 (2003-09-24; corrected 2003-09-26) repeals DST in BA, MT, TO.
# <a href="http://www.presidencia.gov.br/CCIVIL/decreto/2003/D4844.htm">4,844</a>
# 4,844 <http://www.presidencia.gov.br/CCIVIL/decreto/2003/D4844.htm>
Rule Brazil 2003 only - Oct 19 0:00 1:00 S
# Decree 5,223 (2004-10-01) reestablishes DST in MT.
# <a href="http://www.planalto.gov.br/ccivil_03/_Ato2004-2006/2004/Decreto/D5223.htm">5,223</a>
# 5,223 <http://www.planalto.gov.br/ccivil_03/_Ato2004-2006/2004/Decreto/D5223.htm>
Rule Brazil 2004 only - Nov 2 0:00 1:00 S
# Decree <a href="http://pcdsh01.on.br/DecHV5539.gif">5,539</a> (2005-09-19),
# Decree 5,539 <http://pcdsh01.on.br/DecHV5539.gif> (2005-09-19),
# adopted by the same states as before.
Rule Brazil 2005 only - Oct 16 0:00 1:00 S
# Decree <a href="http://pcdsh01.on.br/DecHV5920.gif">5,920</a> (2006-10-03),
# Decree 5,920 <http://pcdsh01.on.br/DecHV5920.gif> (2006-10-03),
# adopted by the same states as before.
Rule Brazil 2006 only - Nov 5 0:00 1:00 S
Rule Brazil 2007 only - Feb 25 0:00 0 -
# Decree <a href="http://pcdsh01.on.br/DecHV6212.gif">6,212</a> (2007-09-26),
# Decree 6,212 <http://pcdsh01.on.br/DecHV6212.gif> (2007-09-26),
# adopted by the same states as before.
Rule Brazil 2007 only - Oct Sun>=8 0:00 1:00 S
# From Frederico A. C. Neves (2008-09-10):
# According to this decree
# <a href="http://www.planalto.gov.br/ccivil_03/_Ato2007-2010/2008/Decreto/D6558.htm">
# http://www.planalto.gov.br/ccivil_03/_Ato2007-2010/2008/Decreto/D6558.htm
# </a>
# [t]he DST period in Brazil now on will be from the 3rd Oct Sunday to the
# 3rd Feb Sunday. There is an exception on the return date when this is
# the Carnival Sunday then the return date will be the next Sunday...
@ -1033,29 +968,29 @@ Zone America/Noronha -2:09:40 - LMT 1914
-2:00 Brazil FN%sT 2002 Oct 1
-2:00 - FNT
# Other Atlantic islands have no permanent settlement.
# These include Trindade and Martin Vaz (administratively part of ES),
# Atol das Rocas (RN), and Penedos de Sao Pedro e Sao Paulo (PE).
# These include Trindade and Martim Vaz (administratively part of ES),
# Rocas Atoll (RN), and the St Peter and St Paul Archipelago (PE).
# Fernando de Noronha was a separate territory from 1942-09-02 to 1989-01-01;
# it also included the Penedos.
#
# Amapa (AP), east Para (PA)
# East Para includes Belem, Maraba, Serra Norte, and Sao Felix do Xingu.
# The division between east and west Para is the river Xingu.
# Amapá (AP), east Pará (PA)
# East Pará includes Belém, Marabá, Serra Norte, and São Félix do Xingu.
# The division between east and west Pará is the river Xingu.
# In the north a very small part from the river Javary (now Jari I guess,
# the border with Amapa) to the Amazon, then to the Xingu.
# the border with Amapá) to the Amazon, then to the Xingu.
Zone America/Belem -3:13:56 - LMT 1914
-3:00 Brazil BR%sT 1988 Sep 12
-3:00 - BRT
#
# west Para (PA)
# West Para includes Altamira, Oribidos, Prainha, Oriximina, and Santarem.
# west Pará (PA)
# West Pará includes Altamira, Óbidos, Prainha, Oriximiná, and Santarém.
Zone America/Santarem -3:38:48 - LMT 1914
-4:00 Brazil AM%sT 1988 Sep 12
-4:00 - AMT 2008 Jun 24 00:00
-3:00 - BRT
#
# Maranhao (MA), Piaui (PI), Ceara (CE), Rio Grande do Norte (RN),
# Paraiba (PB)
# Maranhão (MA), Piauí (PI), Ceará (CE), Rio Grande do Norte (RN),
# Paraíba (PB)
Zone America/Fortaleza -2:34:00 - LMT 1914
-3:00 Brazil BR%sT 1990 Sep 17
-3:00 - BRT 1999 Sep 30
@ -1102,8 +1037,8 @@ Zone America/Bahia -2:34:04 - LMT 1914
-3:00 Brazil BR%sT 2012 Oct 21
-3:00 - BRT
#
# Goias (GO), Distrito Federal (DF), Minas Gerais (MG),
# Espirito Santo (ES), Rio de Janeiro (RJ), Sao Paulo (SP), Parana (PR),
# Goiás (GO), Distrito Federal (DF), Minas Gerais (MG),
# Espírito Santo (ES), Rio de Janeiro (RJ), São Paulo (SP), Paraná (PR),
# Santa Catarina (SC), Rio Grande do Sul (RS)
Zone America/Sao_Paulo -3:06:28 - LMT 1914
-3:00 Brazil BR%sT 1963 Oct 23 00:00
@ -1120,7 +1055,7 @@ Zone America/Cuiaba -3:44:20 - LMT 1914
-4:00 - AMT 2004 Oct 1
-4:00 Brazil AM%sT
#
# Rondonia (RO)
# Rondônia (RO)
Zone America/Porto_Velho -4:15:36 - LMT 1914
-4:00 Brazil AM%sT 1988 Sep 12
-4:00 - AMT
@ -1132,7 +1067,7 @@ Zone America/Boa_Vista -4:02:40 - LMT 1914
-4:00 Brazil AM%sT 2000 Oct 15
-4:00 - AMT
#
# east Amazonas (AM): Boca do Acre, Jutai, Manaus, Floriano Peixoto
# east Amazonas (AM): Boca do Acre, Jutaí, Manaus, Floriano Peixoto
# The great circle line from Tabatinga to Porto Acre divides
# east from west Amazonas.
Zone America/Manaus -4:00:04 - LMT 1914
@ -1142,7 +1077,7 @@ Zone America/Manaus -4:00:04 - LMT 1914
-4:00 - AMT
#
# west Amazonas (AM): Atalaia do Norte, Boca do Maoco, Benjamin Constant,
# Eirunepe, Envira, Ipixuna
# Eirunepé, Envira, Ipixuna
Zone America/Eirunepe -4:39:28 - LMT 1914
-5:00 Brazil AC%sT 1988 Sep 12
-5:00 - ACT 1993 Sep 28
@ -1175,7 +1110,7 @@ Zone America/Rio_Branco -4:31:12 - LMT 1914
# From Oscar van Vlijmen (2006-10-08):
# http://www.horaoficial.cl/cambio.htm
# From Jesper Norgaard Welen (2006-10-08):
# From Jesper Nørgaard Welen (2006-10-08):
# I think that there are some obvious mistakes in the suggested link
# from Oscar van Vlijmen,... for instance entry 66 says that GMT-4
# ended 1990-09-12 while entry 67 only begins GMT-3 at 1990-09-15
@ -1185,36 +1120,28 @@ Zone America/Rio_Branco -4:31:12 - LMT 1914
# From Paul Eggert (2006-12-27):
# The following data for Chile and America/Santiago are from
# <http://www.horaoficial.cl/horaof.htm> (2006-09-20), transcribed by
# Jesper Norgaard Welen. The data for Pacific/Easter are from Shanks
# Jesper Nørgaard Welen. The data for Pacific/Easter are from Shanks
# & Pottenger, except with DST transitions after 1932 cloned from
# America/Santiago. The pre-1980 Pacific/Easter data are dubious,
# but we have no other source.
# From German Poo-Caaman~o (2008-03-03):
# From Germán Poo-Caamaño (2008-03-03):
# Due to drought, Chile extends Daylight Time in three weeks. This
# is one-time change (Saturday 3/29 at 24:00 for America/Santiago
# and Saturday 3/29 at 22:00 for Pacific/Easter)
# The Supreme Decree is located at
# <a href="http://www.shoa.cl/servicios/supremo316.pdf">
# http://www.shoa.cl/servicios/supremo316.pdf
# </a>
# and the instructions for 2008 are located in:
# <a href="http://www.horaoficial.cl/cambio.htm">
# http://www.horaoficial.cl/cambio.htm
# </a>.
# From Jose Miguel Garrido (2008-03-05):
# From José Miguel Garrido (2008-03-05):
# ...
# You could see the announces of the change on
# <a href="http://www.shoa.cl/noticias/2008/04hora/hora.htm">
# http://www.shoa.cl/noticias/2008/04hora/hora.htm
# </a>.
# From Angel Chiang (2010-03-04):
# Subject: DST in Chile exceptionally extended to 3 April due to earthquake
# <a href="http://www.gobiernodechile.cl/viewNoticia.aspx?idArticulo=30098">
# http://www.gobiernodechile.cl/viewNoticia.aspx?idArticulo=30098
# </a>
# (in Spanish, last paragraph).
#
# This is breaking news. There should be more information available later.
@ -1226,15 +1153,11 @@ Zone America/Rio_Branco -4:31:12 - LMT 1914
# It appears that the Chilean government has decided to postpone the
# change from summer time to winter time again, by three weeks to April
# 2nd:
# <a href="http://www.emol.com/noticias/nacional/detalle/detallenoticias.asp?idnoticia=467651">
# http://www.emol.com/noticias/nacional/detalle/detallenoticias.asp?idnoticia=467651
# </a>
#
# This is not yet reflected in the official "cambio de hora" site, but
# probably will be soon:
# <a href="http://www.horaoficial.cl/cambio.htm">
# http://www.horaoficial.cl/cambio.htm
# </a>
# From Arthur David Olson (2011-03-02):
# The emol.com article mentions a water shortage as the cause of the
@ -1242,9 +1165,7 @@ Zone America/Rio_Branco -4:31:12 - LMT 1914
# From Glenn Eychaner (2011-03-28):
# The article:
# <a href="http://diario.elmercurio.com/2011/03/28/_portada/_portada/noticias/7565897A-CA86-49E6-9E03-660B21A4883E.htm?id=3D{7565897A-CA86-49E6-9E03-660B21A4883E}">
# http://diario.elmercurio.com/2011/03/28/_portada/_portada/noticias/7565897A-CA86-49E6-9E03-660B21A4883E.htm?id=3D{7565897A-CA86-49E6-9E03-660B21A4883E}
# </a>
#
# In English:
# Chile's clocks will go back an hour this year on the 7th of May instead
@ -1275,7 +1196,7 @@ Zone America/Rio_Branco -4:31:12 - LMT 1914
# start date is 2013-09-08 00:00....
# http://www.gob.cl/informa/2013/02/15/gobierno-anuncia-fechas-de-cambio-de-hora-para-el-ano-2013.htm
# From Jose Miguel Garrido (2014-02-19):
# From José Miguel Garrido (2014-02-19):
# Today appeared in the Diario Oficial a decree amending the time change
# dates to 2014.
# DST End: last Saturday of April 2014 (Sun 27 Apr 2014 03:00 UTC)
@ -1341,13 +1262,13 @@ Zone Pacific/Easter -7:17:44 - LMT 1890
-7:00 Chile EAS%sT 1982 Mar 13 21:00 # Easter I Time
-6:00 Chile EAS%sT
#
# Sala y Gomez Island is like Pacific/Easter.
# Other Chilean locations, including Juan Fernandez Is, San Ambrosio,
# San Felix, and Antarctic bases, are like America/Santiago.
# Salas y Gómez Island is uninhabited.
# Other Chilean locations, including Juan Fernández Is, Desventuradas Is,
# and Antarctic bases, are like America/Santiago.
# Colombia
# Milne gives 4:56:16.4 for Bogota time in 1899; round to nearest. He writes,
# Milne gives 4:56:16.4 for Bogotá time in 1899; round to nearest. He writes,
# "A variation of fifteen minutes in the public clocks of Bogota is not rare."
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
@ -1355,24 +1276,24 @@ Rule CO 1992 only - May 3 0:00 1:00 S
Rule CO 1993 only - Apr 4 0:00 0 -
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone America/Bogota -4:56:16 - LMT 1884 Mar 13
-4:56:16 - BMT 1914 Nov 23 # Bogota Mean Time
-4:56:16 - BMT 1914 Nov 23 # Bogotá Mean Time
-5:00 CO CO%sT # Colombia Time
# Malpelo, Providencia, San Andres
# no information; probably like America/Bogota
# Curacao
# Curaçao
# Milne gives 4:35:46.9 for Curacao mean time; round to nearest.
# Milne gives 4:35:46.9 for Curaçao mean time; round to nearest.
#
# From Paul Eggert (2006-03-22):
# Shanks & Pottenger say that The Bottom and Philipsburg have been at
# -4:00 since standard time was introduced on 1912-03-02; and that
# Kralendijk and Rincon used Kralendijk Mean Time (-4:33:08) from
# 1912-02-02 to 1965-01-01. The former is dubious, since S&P also say
# Saba Island has been like Curacao.
# Saba Island has been like Curaçao.
# This all predates our 1970 cutoff, though.
#
# By July 2007 Curacao and St Maarten are planned to become
# By July 2007 Curaçao and St Maarten are planned to become
# associated states within the Netherlands, much like Aruba;
# Bonaire, Saba and St Eustatius would become directly part of the
# Netherlands as Kingdom Islands. This won't affect their time zones
@ -1385,7 +1306,7 @@ Zone America/Curacao -4:35:47 - LMT 1912 Feb 12 # Willemstad
# From Arthur David Olson (2011-06-15):
# use links for places with new iso3166 codes.
# The name "Lower Prince's Quarter" is both longer than fourteen charaters
# The name "Lower Prince's Quarter" is both longer than fourteen characters
# and contains an apostrophe; use "Lower_Princes" below.
Link America/Curacao America/Lower_Princes # Sint Maarten
@ -1393,7 +1314,7 @@ Link America/Curacao America/Kralendijk # Caribbean Netherlands
# Ecuador
#
# Milne says the Sentral and South American Telegraph Company used -5:24:15.
# Milne says the Central and South American Telegraph Company used -5:24:15.
#
# From Paul Eggert (2007-03-04):
# Apparently Ecuador had a failed experiment with DST in 1992.
@ -1407,7 +1328,7 @@ Zone America/Guayaquil -5:19:20 - LMT 1890
-5:00 - ECT # Ecuador Time
Zone Pacific/Galapagos -5:58:24 - LMT 1931 # Puerto Baquerizo Moreno
-5:00 - ECT 1986
-6:00 - GALT # Galapagos Time
-6:00 - GALT # Galápagos Time
# Falklands
@ -1416,7 +1337,7 @@ Zone Pacific/Galapagos -5:58:24 - LMT 1931 # Puerto Baquerizo Moreno
# the IATA gives 1996-09-08. Go with Shanks & Pottenger.
# From Falkland Islands Government Office, London (2001-01-22)
# via Jesper Norgaard:
# via Jesper Nørgaard:
# ... the clocks revert back to Local Mean Time at 2 am on Sunday 15
# April 2001 and advance one hour to summer time at 2 am on Sunday 2
# September. It is anticipated that the clocks will revert back at 2
@ -1465,9 +1386,7 @@ Zone Pacific/Galapagos -5:58:24 - LMT 1931 # Puerto Baquerizo Moreno
# daylight saving time.
#
# One source:
# <a href="http://www.falklandnews.com/public/story.cfm?get=5914&source=3">
# http://www.falklandnews.com/public/story.cfm?get=5914&source=3
# </a>
#
# We have gotten this confirmed by a clerk of the legislative assembly:
# Normally the clocks revert to Local Mean Time (UTC/GMT -4 hours) on the
@ -1532,8 +1451,8 @@ Zone America/Guyana -3:52:40 - LMT 1915 Mar # Georgetown
# Paraguay
#
# From Paul Eggert (2006-03-22):
# Shanks & Pottenger say that spring transitions are from 01:00 -> 02:00,
# and autumn transitions are from 00:00 -> 23:00. Go with pre-1999
# Shanks & Pottenger say that spring transitions are 01:00 -> 02:00,
# and autumn transitions are 00:00 -> 23:00. Go with pre-1999
# editions of Shanks, and with the IATA, who say transitions occur at 00:00.
#
# From Waldemar Villamayor-Venialbo (2013-09-20):
@ -1559,9 +1478,8 @@ Rule Para 1996 only - Mar 1 0:00 0 -
# (10-01).
#
# Translated by Gwillim Law (2001-02-27) from
# <a href="http://www.diarionoticias.com.py/011000/nacional/naciona1.htm">
# Noticias, a daily paper in Asuncion, Paraguay (2000-10-01)
# </a>:
# Noticias, a daily paper in Asunción, Paraguay (2000-10-01)
# <http://www.diarionoticias.com.py/011000/nacional/naciona1.htm>:
# Starting at 0:00 today, the clock will be set forward 60 minutes, in
# fulfillment of Decree No. 7,273 of the Executive Power.... The time change
# system has been operating for several years. Formerly there was a separate
@ -1582,21 +1500,18 @@ Rule Para 1998 2001 - Mar Sun>=1 0:00 0 -
Rule Para 2002 2004 - Apr Sun>=1 0:00 0 -
Rule Para 2002 2003 - Sep Sun>=1 0:00 1:00 S
#
# From Jesper Norgaard Welen (2005-01-02):
# From Jesper Nørgaard Welen (2005-01-02):
# There are several sources that claim that Paraguay made
# a timezone rule change in autumn 2004.
# From Steffen Thorsen (2005-01-05):
# Decree 1,867 (2004-03-05)
# From Carlos Raul Perasso via Jesper Norgaard Welen (2006-10-13)
# From Carlos Raúl Perasso via Jesper Nørgaard Welen (2006-10-13)
# <http://www.presidencia.gov.py/decretos/D1867.pdf>
Rule Para 2004 2009 - Oct Sun>=15 0:00 1:00 S
Rule Para 2005 2009 - Mar Sun>=8 0:00 0 -
# From Carlos Raul Perasso (2010-02-18):
# By decree number 3958 issued yesterday (
# <a href="http://www.presidencia.gov.py/v1/wp-content/uploads/2010/02/decreto3958.pdf">
# From Carlos Raúl Perasso (2010-02-18):
# By decree number 3958 issued yesterday
# http://www.presidencia.gov.py/v1/wp-content/uploads/2010/02/decreto3958.pdf
# </a>
# )
# Paraguay changes its DST schedule, postponing the March rule to April and
# modifying the October date. The decree reads:
# ...
@ -1612,25 +1527,25 @@ Rule Para 2010 2012 - Apr Sun>=8 0:00 0 -
# Paraguay will end DST on 2013-03-24 00:00....
# http://www.ande.gov.py/interna.php?id=1075
#
# From Carlos Raul Perasso (2013-03-15):
# From Carlos Raúl Perasso (2013-03-15):
# The change in Paraguay is now final. Decree number 10780
# http://www.presidencia.gov.py/uploads/pdf/presidencia-3b86ff4b691c79d4f5927ca964922ec74772ce857c02ca054a52a37b49afc7fb.pdf
# From Carlos Raul Perasso (2014-02-28):
# From Carlos Raúl Perasso (2014-02-28):
# Decree 1264 can be found at:
# http://www.presidencia.gov.py/archivos/documentos/DECRETO1264_ey9r8zai.pdf
Rule Para 2013 max - Mar Sun>=22 0:00 0 -
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone America/Asuncion -3:50:40 - LMT 1890
-3:50:40 - AMT 1931 Oct 10 # Asuncion Mean Time
-3:50:40 - AMT 1931 Oct 10 # Asunción Mean Time
-4:00 - PYT 1972 Oct # Paraguay Time
-3:00 - PYT 1974 Apr
-4:00 Para PY%sT
# Peru
#
# <a href="news:xrGmb.39935$gA1.13896113@news4.srv.hcvlny.cv.net">
# From Evelyn C. Leeper via Mark Brader (2003-10-26):</a>
# From Evelyn C. Leeper via Mark Brader (2003-10-26)
# <news:xrGmb.39935$gA1.13896113@news4.srv.hcvlny.cv.net>:
# When we were in Peru in 1985-1986, they apparently switched over
# sometime between December 29 and January 3 while we were on the Amazon.
#
@ -1683,7 +1598,7 @@ Link America/Port_of_Spain America/Grenada
Link America/Port_of_Spain America/Guadeloupe
Link America/Port_of_Spain America/Marigot # St Martin (French part)
Link America/Port_of_Spain America/Montserrat
Link America/Port_of_Spain America/St_Barthelemy
Link America/Port_of_Spain America/St_Barthelemy # St Barthélemy
Link America/Port_of_Spain America/St_Kitts # St Kitts & Nevis
Link America/Port_of_Spain America/St_Lucia
Link America/Port_of_Spain America/St_Thomas # Virgin Islands (US)
@ -1756,7 +1671,7 @@ Rule Uruguay 2005 only - Mar 27 2:00 0 -
# 02:00 local time, official time in Uruguay will be at GMT -2.
Rule Uruguay 2005 only - Oct 9 2:00 1:00 S
Rule Uruguay 2006 only - Mar 12 2:00 0 -
# From Jesper Norgaard Welen (2006-09-06):
# From Jesper Nørgaard Welen (2006-09-06):
# http://www.presidencia.gub.uy/_web/decretos/2006/09/CM%20210_08%2006%202006_00001.PDF
Rule Uruguay 2006 max - Oct Sun>=1 2:00 1:00 S
Rule Uruguay 2007 max - Mar Sun>=8 2:00 0 -
@ -1771,8 +1686,8 @@ Zone America/Montevideo -3:44:44 - LMT 1898 Jun 28
# From John Stainforth (2007-11-28):
# ... the change for Venezuela originally expected for 2007-12-31 has
# been brought forward to 2007-12-09. The official announcement was
# published today in the "Gaceta Oficial de la Republica Bolivariana
# de Venezuela, numero 38.819" (official document for all laws or
# published today in the "Gaceta Oficial de la República Bolivariana
# de Venezuela, número 38.819" (official document for all laws or
# resolution publication)
# http://www.globovision.com/news.php?nid=72208

View File

@ -1,4 +1,3 @@
# <pre>
# This file is in the public domain, so clarified as of
# 2009-05-17 by Arthur David Olson.

View File

@ -5,7 +5,7 @@
case $#-$1 in
2-|2-0*|2-*[!0-9]*)
echo "$0: wild year - $1" >&2
echo "$0: wild year: $1" >&2
exit 1 ;;
esac
@ -31,7 +31,7 @@ case $#-$2 in
*) exit 1 ;;
esac ;;
2-*)
echo "$0: wild type - $2" >&2 ;;
echo "$0: wild type: $2" >&2 ;;
esac
echo "$0: usage is $0 year even|odd|uspres|nonpres|nonuspres" >&2

View File

@ -1,33 +1,20 @@
# TZ zone descriptions
# tz zone descriptions (deprecated version)
#
# This file is in the public domain, so clarified as of
# 2009-05-17 by Arthur David Olson.
#
# From Paul Eggert (2013-08-14):
# From Paul Eggert (2014-07-31):
# This file is intended as a backward-compatibility aid for older programs.
# New programs should use zone1970.tab. This file is like zone1970.tab (see
# zone1970.tab's comments), but with the following additional restrictions:
#
# This file contains a table where each row stands for an area that is
# the intersection of a region identified by a country code and of a
# zone where civil clocks have agreed since 1970. The columns of the
# table are as follows:
# 1. This file contains only ASCII characters.
# 2. The first data column contains exactly one country code.
#
# 1. ISO 3166 2-character country code.
# See the file '/usr/share/misc/iso3166.tab'.
# 2. Latitude and longitude of the area's principal location
# in ISO 6709 sign-degrees-minutes-seconds format,
# either +-DDMM+-DDDMM or +-DDMMSS+-DDDMMSS,
# first latitude (+ is north), then longitude (+ is east).
# 3. Zone name used in value of TZ environment variable.
# Please see the 'Theory' file for how zone names are chosen.
# If multiple zones overlap a country, each has a row in the
# table, with column 1 being duplicated.
# 4. Comments; present if and only if the country has multiple rows.
#
# Columns are separated by a single tab.
# The table is sorted first by country, then an order within the country that
# (1) makes some geographical sense, and
# (2) puts the most populous areas first, where that does not contradict (1).
#
# Lines beginning with '#' are comments.
# Because of (2), each row stands for an area that is the intersection
# of a region identified by a country code and of a zone where civil
# clocks have agreed since 1970; this is a narrower definition than
# that of zone1970.tab.
#
# This table is intended as an aid for users, to help them select time
# zone data appropriate for their practical needs. It is not intended
@ -129,7 +116,7 @@ CA +4901-08816 America/Nipigon Eastern Time - Ontario & Quebec - places that did
CA +4823-08915 America/Thunder_Bay Eastern Time - Thunder Bay, Ontario
CA +6344-06828 America/Iqaluit Eastern Time - east Nunavut - most locations
CA +6608-06544 America/Pangnirtung Eastern Time - Pangnirtung, Nunavut
CA +744144-0944945 America/Resolute Central Standard Time - Resolute, Nunavut
CA +744144-0944945 America/Resolute Central Time - Resolute, Nunavut
CA +484531-0913718 America/Atikokan Eastern Standard Time - Atikokan, Ontario and Southampton I, Nunavut
CA +624900-0920459 America/Rankin_Inlet Central Time - central Nunavut
CA +4953-09709 America/Winnipeg Central Time - Manitoba & west Ontario
@ -154,13 +141,10 @@ CH +4723+00832 Europe/Zurich
CI +0519-00402 Africa/Abidjan
CK -2114-15946 Pacific/Rarotonga
CL -3327-07040 America/Santiago most locations
CL -2709-10926 Pacific/Easter Easter Island & Sala y Gomez
CL -2709-10926 Pacific/Easter Easter Island
CM +0403+00942 Africa/Douala
CN +3114+12128 Asia/Shanghai east China - Beijing, Guangdong, Shanghai, etc.
CN +4545+12641 Asia/Harbin Heilongjiang (except Mohe), Jilin
CN +2934+10635 Asia/Chongqing central China - Sichuan, Yunnan, Guangxi, Shaanxi, Guizhou, etc.
CN +4348+08735 Asia/Urumqi most of Tibet & Xinjiang
CN +3929+07559 Asia/Kashgar west Tibet & Xinjiang
CN +3114+12128 Asia/Shanghai Beijing Time
CN +4348+08735 Asia/Urumqi Xinjiang Time
CO +0436-07405 America/Bogota
CR +0956-08405 America/Costa_Rica
CU +2308-08222 America/Havana
@ -342,24 +326,26 @@ RE -2052+05528 Indian/Reunion
RO +4426+02606 Europe/Bucharest
RS +4450+02030 Europe/Belgrade
RU +5443+02030 Europe/Kaliningrad Moscow-01 - Kaliningrad
RU +5545+03735 Europe/Moscow Moscow+00 - west Russia
RU +4844+04425 Europe/Volgograd Moscow+00 - Caspian Sea
RU +5312+05009 Europe/Samara Moscow+00 - Samara, Udmurtia
RU +554521+0373704 Europe/Moscow Moscow+00 - west Russia
RU +4457+03406 Europe/Simferopol Moscow+00 - Crimea
RU +4844+04425 Europe/Volgograd Moscow+00 - Caspian Sea
RU +5312+05009 Europe/Samara Moscow+00 (Moscow+01 after 2014-10-26) - Samara, Udmurtia
RU +5651+06036 Asia/Yekaterinburg Moscow+02 - Urals
RU +5500+07324 Asia/Omsk Moscow+03 - west Siberia
RU +5502+08255 Asia/Novosibirsk Moscow+03 - Novosibirsk
RU +5345+08707 Asia/Novokuznetsk Moscow+03 - Novokuznetsk
RU +5345+08707 Asia/Novokuznetsk Moscow+03 (Moscow+04 after 2014-10-26) - Kemerovo
RU +5601+09250 Asia/Krasnoyarsk Moscow+04 - Yenisei River
RU +5216+10420 Asia/Irkutsk Moscow+05 - Lake Baikal
RU +5203+11328 Asia/Chita Moscow+06 (Moscow+05 after 2014-10-26) - Zabaykalsky
RU +6200+12940 Asia/Yakutsk Moscow+06 - Lena River
RU +623923+1353314 Asia/Khandyga Moscow+06 - Tomponsky, Ust-Maysky
RU +4310+13156 Asia/Vladivostok Moscow+07 - Amur River
RU +4658+14242 Asia/Sakhalin Moscow+07 - Sakhalin Island
RU +643337+1431336 Asia/Ust-Nera Moscow+07 - Oymyakonsky
RU +5934+15048 Asia/Magadan Moscow+08 - Magadan
RU +5301+15839 Asia/Kamchatka Moscow+08 - Kamchatka
RU +6445+17729 Asia/Anadyr Moscow+08 - Bering Sea
RU +5934+15048 Asia/Magadan Moscow+08 (Moscow+07 after 2014-10-26) - Magadan
RU +6728+15343 Asia/Srednekolymsk Moscow+08 - E Sakha, N Kuril Is
RU +5301+15839 Asia/Kamchatka Moscow+08 (Moscow+09 after 2014-10-26) - Kamchatka
RU +6445+17729 Asia/Anadyr Moscow+08 (Moscow+09 after 2014-10-26) - Bering Sea
RW -0157+03004 Africa/Kigali
SA +2438+04643 Asia/Riyadh
SB -0932+16012 Pacific/Guadalcanal
@ -426,13 +412,13 @@ US +394421-1045903 America/Denver Mountain Time
US +433649-1161209 America/Boise Mountain Time - south Idaho & east Oregon
US +332654-1120424 America/Phoenix Mountain Standard Time - Arizona (except Navajo)
US +340308-1181434 America/Los_Angeles Pacific Time
US +550737-1313435 America/Metlakatla Pacific Standard Time - Annette Island, Alaska
US +611305-1495401 America/Anchorage Alaska Time
US +581807-1342511 America/Juneau Alaska Time - Alaska panhandle
US +571035-1351807 America/Sitka Alaska Time - southeast Alaska panhandle
US +593249-1394338 America/Yakutat Alaska Time - Alaska panhandle neck
US +643004-1652423 America/Nome Alaska Time - west Alaska
US +515248-1763929 America/Adak Aleutian Islands
US +550737-1313435 America/Metlakatla Metlakatla Time - Annette Island
US +211825-1575130 Pacific/Honolulu Hawaii
UY -3453-05611 America/Montevideo
UZ +3940+06648 Asia/Samarkand west Uzbekistan

370
contrib/tzdata/zone1970.tab Normal file
View File

@ -0,0 +1,370 @@
# tz zone descriptions
#
# This file is in the public domain.
#
# From Paul Eggert (2014-07-31):
# This file contains a table where each row stands for a zone where
# civil time stamps have agreed since 1970. Columns are separated by
# a single tab. Lines beginning with '#' are comments. All text uses
# UTF-8 encoding. The columns of the table are as follows:
#
# 1. The countries that overlap the zone, as a comma-separated list
# of ISO 3166 2-character country codes.
# See the file '/usr/share/misc/iso3166'.
# 2. Latitude and longitude of the zone's principal location
# in ISO 6709 sign-degrees-minutes-seconds format,
# either +-DDMM+-DDDMM or +-DDMMSS+-DDDMMSS,
# first latitude (+ is north), then longitude (+ is east).
# 3. Zone name used in value of TZ environment variable.
# Please see the 'Theory' file for how zone names are chosen.
# If multiple zones overlap a country, each has a row in the
# table, with each column 1 containing the country code.
# 4. Comments; present if and only if a country has multiple zones.
#
# If a zone covers multiple countries, the most-populous city is used,
# and that country is listed first in column 1; any other countries
# are listed alphabetically by country code. The table is sorted
# first by country code, then (if possible) by an order within the
# country that (1) makes some geographical sense, and (2) puts the
# most populous zones first, where that does not contradict (1).
#
# This table is intended as an aid for users, to help them select time
# zone data appropriate for their practical needs. It is not intended
# to take or endorse any position on legal or territorial claims.
#
#country-
#codes coordinates TZ comments
AD +4230+00131 Europe/Andorra
AE,OM +2518+05518 Asia/Dubai
AF +3431+06912 Asia/Kabul
AL +4120+01950 Europe/Tirane
AM +4011+04430 Asia/Yerevan
AQ -6734-06808 Antarctica/Rothera Rothera Station, Adelaide Island
AQ -6448-06406 Antarctica/Palmer Palmer Station, Anvers Island
AQ -6736+06253 Antarctica/Mawson Mawson Station, Holme Bay
AQ -6835+07758 Antarctica/Davis Davis Station, Vestfold Hills
AQ -6617+11031 Antarctica/Casey Casey Station, Bailey Peninsula
AQ -7824+10654 Antarctica/Vostok Vostok Station, Lake Vostok
AQ -6640+14001 Antarctica/DumontDUrville Dumont-d'Urville Station, Terre Adelie
AQ -690022+0393524 Antarctica/Syowa Syowa Station, E Ongul I
AQ -720041+0023206 Antarctica/Troll Troll Station, Queen Maud Land
AR -3436-05827 America/Argentina/Buenos_Aires Buenos Aires (BA, CF)
AR -3124-06411 America/Argentina/Cordoba most locations (CB, CC, CN, ER, FM, MN, SE, SF)
AR -2447-06525 America/Argentina/Salta (SA, LP, NQ, RN)
AR -2411-06518 America/Argentina/Jujuy Jujuy (JY)
AR -2649-06513 America/Argentina/Tucuman Tucumán (TM)
AR -2828-06547 America/Argentina/Catamarca Catamarca (CT), Chubut (CH)
AR -2926-06651 America/Argentina/La_Rioja La Rioja (LR)
AR -3132-06831 America/Argentina/San_Juan San Juan (SJ)
AR -3253-06849 America/Argentina/Mendoza Mendoza (MZ)
AR -3319-06621 America/Argentina/San_Luis San Luis (SL)
AR -5138-06913 America/Argentina/Rio_Gallegos Santa Cruz (SC)
AR -5448-06818 America/Argentina/Ushuaia Tierra del Fuego (TF)
AS,UM -1416-17042 Pacific/Pago_Pago Samoa, Midway
AT +4813+01620 Europe/Vienna
AU -3133+15905 Australia/Lord_Howe Lord Howe Island
AU -5430+15857 Antarctica/Macquarie Macquarie Island
AU -4253+14719 Australia/Hobart Tasmania - most locations
AU -3956+14352 Australia/Currie Tasmania - King Island
AU -3749+14458 Australia/Melbourne Victoria
AU -3352+15113 Australia/Sydney New South Wales - most locations
AU -3157+14127 Australia/Broken_Hill New South Wales - Yancowinna
AU -2728+15302 Australia/Brisbane Queensland - most locations
AU -2016+14900 Australia/Lindeman Queensland - Holiday Islands
AU -3455+13835 Australia/Adelaide South Australia
AU -1228+13050 Australia/Darwin Northern Territory
AU -3157+11551 Australia/Perth Western Australia - most locations
AU -3143+12852 Australia/Eucla Western Australia - Eucla area
AZ +4023+04951 Asia/Baku
BB +1306-05937 America/Barbados
BD +2343+09025 Asia/Dhaka
BE +5050+00420 Europe/Brussels
BG +4241+02319 Europe/Sofia
BM +3217-06446 Atlantic/Bermuda
BN +0456+11455 Asia/Brunei
BO -1630-06809 America/La_Paz
BR -0351-03225 America/Noronha Atlantic islands
BR -0127-04829 America/Belem Amapá, E Pará
BR -0343-03830 America/Fortaleza NE Brazil (MA, PI, CE, RN, PB)
BR -0803-03454 America/Recife Pernambuco
BR -0712-04812 America/Araguaina Tocantins
BR -0940-03543 America/Maceio Alagoas, Sergipe
BR -1259-03831 America/Bahia Bahia
BR -2332-04637 America/Sao_Paulo S & SE Brazil (GO, DF, MG, ES, RJ, SP, PR, SC, RS)
BR -2027-05437 America/Campo_Grande Mato Grosso do Sul
BR -1535-05605 America/Cuiaba Mato Grosso
BR -0226-05452 America/Santarem W Pará
BR -0846-06354 America/Porto_Velho Rondônia
BR +0249-06040 America/Boa_Vista Roraima
BR -0308-06001 America/Manaus E Amazonas
BR -0640-06952 America/Eirunepe W Amazonas
BR -0958-06748 America/Rio_Branco Acre
BS +2505-07721 America/Nassau
BT +2728+08939 Asia/Thimphu
BY +5354+02734 Europe/Minsk
BZ +1730-08812 America/Belize
CA +4734-05243 America/St_Johns Newfoundland Time, including SE Labrador
CA +4439-06336 America/Halifax Atlantic Time - Nova Scotia (most places), PEI
CA +4612-05957 America/Glace_Bay Atlantic Time - Nova Scotia - places that did not observe DST 1966-1971
CA +4606-06447 America/Moncton Atlantic Time - New Brunswick
CA +5320-06025 America/Goose_Bay Atlantic Time - Labrador - most locations
CA +5125-05707 America/Blanc-Sablon Atlantic Standard Time - Quebec - Lower North Shore
CA +4339-07923 America/Toronto Eastern Time - Ontario & Quebec - most locations
CA +4901-08816 America/Nipigon Eastern Time - Ontario & Quebec - places that did not observe DST 1967-1973
CA +4823-08915 America/Thunder_Bay Eastern Time - Thunder Bay, Ontario
CA +6344-06828 America/Iqaluit Eastern Time - east Nunavut - most locations
CA +6608-06544 America/Pangnirtung Eastern Time - Pangnirtung, Nunavut
CA +744144-0944945 America/Resolute Central Time - Resolute, Nunavut
CA +484531-0913718 America/Atikokan Eastern Standard Time - Atikokan, Ontario and Southampton I, Nunavut
CA +624900-0920459 America/Rankin_Inlet Central Time - central Nunavut
CA +4953-09709 America/Winnipeg Central Time - Manitoba & west Ontario
CA +4843-09434 America/Rainy_River Central Time - Rainy River & Fort Frances, Ontario
CA +5024-10439 America/Regina Central Standard Time - Saskatchewan - most locations
CA +5017-10750 America/Swift_Current Central Standard Time - Saskatchewan - midwest
CA +5333-11328 America/Edmonton Mountain Time - Alberta, east British Columbia & west Saskatchewan
CA +690650-1050310 America/Cambridge_Bay Mountain Time - west Nunavut
CA +6227-11421 America/Yellowknife Mountain Time - central Northwest Territories
CA +682059-1334300 America/Inuvik Mountain Time - west Northwest Territories
CA +4906-11631 America/Creston Mountain Standard Time - Creston, British Columbia
CA +5946-12014 America/Dawson_Creek Mountain Standard Time - Dawson Creek & Fort Saint John, British Columbia
CA +4916-12307 America/Vancouver Pacific Time - west British Columbia
CA +6043-13503 America/Whitehorse Pacific Time - south Yukon
CA +6404-13925 America/Dawson Pacific Time - north Yukon
CC -1210+09655 Indian/Cocos
CH,DE,LI +4723+00832 Europe/Zurich Swiss time
CI,BF,GM,GN,ML,MR,SH,SL,SN,ST,TG +0519-00402 Africa/Abidjan
CK -2114-15946 Pacific/Rarotonga
CL -3327-07040 America/Santiago most locations
CL -2709-10926 Pacific/Easter Easter Island
CN +3114+12128 Asia/Shanghai Beijing Time
CN +4348+08735 Asia/Urumqi Xinjiang Time
CO +0436-07405 America/Bogota
CR +0956-08405 America/Costa_Rica
CU +2308-08222 America/Havana
CV +1455-02331 Atlantic/Cape_Verde
CW,AW,BQ,SX +1211-06900 America/Curacao
CX -1025+10543 Indian/Christmas
CY +3510+03322 Asia/Nicosia
CZ,SK +5005+01426 Europe/Prague
DE +5230+01322 Europe/Berlin Berlin time
DK +5540+01235 Europe/Copenhagen
DO +1828-06954 America/Santo_Domingo
DZ +3647+00303 Africa/Algiers
EC -0210-07950 America/Guayaquil mainland
EC -0054-08936 Pacific/Galapagos Galápagos Islands
EE +5925+02445 Europe/Tallinn
EG +3003+03115 Africa/Cairo
EH +2709-01312 Africa/El_Aaiun
ES +4024-00341 Europe/Madrid mainland
ES +3553-00519 Africa/Ceuta Ceuta & Melilla
ES +2806-01524 Atlantic/Canary Canary Islands
FI,AX +6010+02458 Europe/Helsinki
FJ -1808+17825 Pacific/Fiji
FK -5142-05751 Atlantic/Stanley
FM +0725+15147 Pacific/Chuuk Chuuk (Truk) and Yap
FM +0658+15813 Pacific/Pohnpei Pohnpei (Ponape)
FM +0519+16259 Pacific/Kosrae Kosrae
FO +6201-00646 Atlantic/Faroe
FR +4852+00220 Europe/Paris
GB,GG,IM,JE +513030-0000731 Europe/London
GE +4143+04449 Asia/Tbilisi
GF +0456-05220 America/Cayenne
GH +0533-00013 Africa/Accra
GI +3608-00521 Europe/Gibraltar
GL +6411-05144 America/Godthab most locations
GL +7646-01840 America/Danmarkshavn east coast, north of Scoresbysund
GL +7029-02158 America/Scoresbysund Scoresbysund / Ittoqqortoormiit
GL +7634-06847 America/Thule Thule / Pituffik
GR +3758+02343 Europe/Athens
GS -5416-03632 Atlantic/South_Georgia
GT +1438-09031 America/Guatemala
GU,MP +1328+14445 Pacific/Guam
GW +1151-01535 Africa/Bissau
GY +0648-05810 America/Guyana
HK +2217+11409 Asia/Hong_Kong
HN +1406-08713 America/Tegucigalpa
HT +1832-07220 America/Port-au-Prince
HU +4730+01905 Europe/Budapest
ID -0610+10648 Asia/Jakarta Java & Sumatra
ID -0002+10920 Asia/Pontianak west & central Borneo
ID -0507+11924 Asia/Makassar east & south Borneo, Sulawesi (Celebes), Bali, Nusa Tengarra, west Timor
ID -0232+14042 Asia/Jayapura west New Guinea (Irian Jaya) & Malukus (Moluccas)
IE +5320-00615 Europe/Dublin
IL +314650+0351326 Asia/Jerusalem
IN +2232+08822 Asia/Kolkata
IO -0720+07225 Indian/Chagos
IQ +3321+04425 Asia/Baghdad
IR +3540+05126 Asia/Tehran
IS +6409-02151 Atlantic/Reykjavik
IT,SM,VA +4154+01229 Europe/Rome
JM +175805-0764736 America/Jamaica
JO +3157+03556 Asia/Amman
JP +353916+1394441 Asia/Tokyo
KE,DJ,ER,ET,KM,MG,SO,TZ,UG,YT -0117+03649 Africa/Nairobi
KG +4254+07436 Asia/Bishkek
KI +0125+17300 Pacific/Tarawa Gilbert Islands
KI -0308-17105 Pacific/Enderbury Phoenix Islands
KI +0152-15720 Pacific/Kiritimati Line Islands
KP +3901+12545 Asia/Pyongyang
KR +3733+12658 Asia/Seoul
KZ +4315+07657 Asia/Almaty most locations
KZ +4448+06528 Asia/Qyzylorda Qyzylorda (Kyzylorda, Kzyl-Orda)
KZ +5017+05710 Asia/Aqtobe Aqtobe (Aktobe)
KZ +4431+05016 Asia/Aqtau Atyrau (Atirau, Gur'yev), Mangghystau (Mankistau)
KZ +5113+05121 Asia/Oral West Kazakhstan
LB +3353+03530 Asia/Beirut
LK +0656+07951 Asia/Colombo
LR +0618-01047 Africa/Monrovia
LT +5441+02519 Europe/Vilnius
LU +4936+00609 Europe/Luxembourg
LV +5657+02406 Europe/Riga
LY +3254+01311 Africa/Tripoli
MA +3339-00735 Africa/Casablanca
MC +4342+00723 Europe/Monaco
MD +4700+02850 Europe/Chisinau
MH +0709+17112 Pacific/Majuro most locations
MH +0905+16720 Pacific/Kwajalein Kwajalein
MM +1647+09610 Asia/Rangoon
MN +4755+10653 Asia/Ulaanbaatar most locations
MN +4801+09139 Asia/Hovd Bayan-Ölgii, Govi-Altai, Hovd, Uvs, Zavkhan
MN +4804+11430 Asia/Choibalsan Dornod, Sükhbaatar
MO +2214+11335 Asia/Macau
MQ +1436-06105 America/Martinique
MT +3554+01431 Europe/Malta
MU -2010+05730 Indian/Mauritius
MV +0410+07330 Indian/Maldives
MX +1924-09909 America/Mexico_City Central Time - most locations
MX +2105-08646 America/Cancun Central Time - Quintana Roo
MX +2058-08937 America/Merida Central Time - Campeche, Yucatán
MX +2540-10019 America/Monterrey Mexican Central Time - Coahuila, Durango, Nuevo León, Tamaulipas away from US border
MX +2550-09730 America/Matamoros US Central Time - Coahuila, Durango, Nuevo León, Tamaulipas near US border
MX +2313-10625 America/Mazatlan Mountain Time - S Baja, Nayarit, Sinaloa
MX +2838-10605 America/Chihuahua Mexican Mountain Time - Chihuahua away from US border
MX +2934-10425 America/Ojinaga US Mountain Time - Chihuahua near US border
MX +2904-11058 America/Hermosillo Mountain Standard Time - Sonora
MX +3232-11701 America/Tijuana US Pacific Time - Baja California near US border
MX +3018-11452 America/Santa_Isabel Mexican Pacific Time - Baja California away from US border
MX +2048-10515 America/Bahia_Banderas Mexican Central Time - Bahía de Banderas
MY +0310+10142 Asia/Kuala_Lumpur peninsular Malaysia
MY +0133+11020 Asia/Kuching Sabah & Sarawak
MZ,BI,BW,CD,MW,RW,ZM,ZW -2558+03235 Africa/Maputo Central Africa Time (UTC+2)
NA -2234+01706 Africa/Windhoek
NC -2216+16627 Pacific/Noumea
NF -2903+16758 Pacific/Norfolk
NG,AO,BJ,CD,CF,CG,CM,GA,GQ,NE +0627+00324 Africa/Lagos West Africa Time (UTC+1)
NI +1209-08617 America/Managua
NL +5222+00454 Europe/Amsterdam
NO,SJ +5955+01045 Europe/Oslo
NP +2743+08519 Asia/Kathmandu
NR -0031+16655 Pacific/Nauru
NU -1901-16955 Pacific/Niue
NZ,AQ -3652+17446 Pacific/Auckland New Zealand time
NZ -4357-17633 Pacific/Chatham Chatham Islands
PA,KY +0858-07932 America/Panama
PE -1203-07703 America/Lima
PF -1732-14934 Pacific/Tahiti Society Islands
PF -0900-13930 Pacific/Marquesas Marquesas Islands
PF -2308-13457 Pacific/Gambier Gambier Islands
PG -0930+14710 Pacific/Port_Moresby
PH +1435+12100 Asia/Manila
PK +2452+06703 Asia/Karachi
PL +5215+02100 Europe/Warsaw
PM +4703-05620 America/Miquelon
PN -2504-13005 Pacific/Pitcairn
PR +182806-0660622 America/Puerto_Rico
PS +3130+03428 Asia/Gaza Gaza Strip
PS +313200+0350542 Asia/Hebron West Bank
PT +3843-00908 Europe/Lisbon mainland
PT +3238-01654 Atlantic/Madeira Madeira Islands
PT +3744-02540 Atlantic/Azores Azores
PW +0720+13429 Pacific/Palau
PY -2516-05740 America/Asuncion
QA,BH +2517+05132 Asia/Qatar
RE,TF -2052+05528 Indian/Reunion Réunion, Crozet Is, Scattered Is
RO +4426+02606 Europe/Bucharest
RS,BA,HR,ME,MK,SI +4450+02030 Europe/Belgrade
RU +5443+02030 Europe/Kaliningrad Moscow-01 - Kaliningrad
RU +554521+0373704 Europe/Moscow Moscow+00 - west Russia
RU +4457+03406 Europe/Simferopol Moscow+00 - Crimea
RU +4844+04425 Europe/Volgograd Moscow+00 - Caspian Sea
RU +5312+05009 Europe/Samara Moscow+00 (Moscow+01 after 2014-10-26) - Samara, Udmurtia
RU +5651+06036 Asia/Yekaterinburg Moscow+02 - Urals
RU +5500+07324 Asia/Omsk Moscow+03 - west Siberia
RU +5502+08255 Asia/Novosibirsk Moscow+03 - Novosibirsk
RU +5345+08707 Asia/Novokuznetsk Moscow+03 (Moscow+04 after 2014-10-26) - Kemerovo
RU +5601+09250 Asia/Krasnoyarsk Moscow+04 - Yenisei River
RU +5216+10420 Asia/Irkutsk Moscow+05 - Lake Baikal
RU +5203+11328 Asia/Chita Moscow+06 (Moscow+05 after 2014-10-26) - Zabaykalsky
RU +6200+12940 Asia/Yakutsk Moscow+06 - Lena River
RU +623923+1353314 Asia/Khandyga Moscow+06 - Tomponsky, Ust-Maysky
RU +4310+13156 Asia/Vladivostok Moscow+07 - Amur River
RU +4658+14242 Asia/Sakhalin Moscow+07 - Sakhalin Island
RU +643337+1431336 Asia/Ust-Nera Moscow+07 - Oymyakonsky
RU +5934+15048 Asia/Magadan Moscow+08 (Moscow+07 after 2014-10-26) - Magadan
RU +6728+15343 Asia/Srednekolymsk Moscow+08 - E Sakha, N Kuril Is
RU +5301+15839 Asia/Kamchatka Moscow+08 (Moscow+09 after 2014-10-26) - Kamchatka
RU +6445+17729 Asia/Anadyr Moscow+08 (Moscow+09 after 2014-10-26) - Bering Sea
SA,KW,YE +2438+04643 Asia/Riyadh
SB -0932+16012 Pacific/Guadalcanal
SC -0440+05528 Indian/Mahe
SD,SS +1536+03232 Africa/Khartoum
SE +5920+01803 Europe/Stockholm
SG +0117+10351 Asia/Singapore
SR +0550-05510 America/Paramaribo
SV +1342-08912 America/El_Salvador
SY +3330+03618 Asia/Damascus
TC +2128-07108 America/Grand_Turk
TD +1207+01503 Africa/Ndjamena
TF -492110+0701303 Indian/Kerguelen Kerguelen, St Paul I, Amsterdam I
TH,KH,LA,VN +1345+10031 Asia/Bangkok
TJ +3835+06848 Asia/Dushanbe
TK -0922-17114 Pacific/Fakaofo
TL -0833+12535 Asia/Dili
TM +3757+05823 Asia/Ashgabat
TN +3648+01011 Africa/Tunis
TO -2110-17510 Pacific/Tongatapu
TR +4101+02858 Europe/Istanbul
TT,AG,AI,BL,DM,GD,GP,MF,LC,KN,MS,VC,VG,VI +1039-06131 America/Port_of_Spain
TV -0831+17913 Pacific/Funafuti
TW +2503+12130 Asia/Taipei
UA +5026+03031 Europe/Kiev most locations
UA +4837+02218 Europe/Uzhgorod Ruthenia
UA +4750+03510 Europe/Zaporozhye Zaporozh'ye, E Lugansk / Zaporizhia, E Luhansk
UM +1917+16637 Pacific/Wake Wake Island
US +404251-0740023 America/New_York Eastern Time
US +421953-0830245 America/Detroit Eastern Time - Michigan - most locations
US +381515-0854534 America/Kentucky/Louisville Eastern Time - Kentucky - Louisville area
US +364947-0845057 America/Kentucky/Monticello Eastern Time - Kentucky - Wayne County
US +394606-0860929 America/Indiana/Indianapolis Eastern Time - Indiana - most locations
US +384038-0873143 America/Indiana/Vincennes Eastern Time - Indiana - Daviess, Dubois, Knox & Martin Counties
US +410305-0863611 America/Indiana/Winamac Eastern Time - Indiana - Pulaski County
US +382232-0862041 America/Indiana/Marengo Eastern Time - Indiana - Crawford County
US +382931-0871643 America/Indiana/Petersburg Eastern Time - Indiana - Pike County
US +384452-0850402 America/Indiana/Vevay Eastern Time - Indiana - Switzerland County
US +415100-0873900 America/Chicago Central Time
US +375711-0864541 America/Indiana/Tell_City Central Time - Indiana - Perry County
US +411745-0863730 America/Indiana/Knox Central Time - Indiana - Starke County
US +450628-0873651 America/Menominee Central Time - Michigan - Dickinson, Gogebic, Iron & Menominee Counties
US +470659-1011757 America/North_Dakota/Center Central Time - North Dakota - Oliver County
US +465042-1012439 America/North_Dakota/New_Salem Central Time - North Dakota - Morton County (except Mandan area)
US +471551-1014640 America/North_Dakota/Beulah Central Time - North Dakota - Mercer County
US +394421-1045903 America/Denver Mountain Time
US +433649-1161209 America/Boise Mountain Time - south Idaho & east Oregon
US +332654-1120424 America/Phoenix Mountain Standard Time - Arizona (except Navajo)
US +340308-1181434 America/Los_Angeles Pacific Time
US +550737-1313435 America/Metlakatla Pacific Standard Time - Annette Island, Alaska
US +611305-1495401 America/Anchorage Alaska Time
US +581807-1342511 America/Juneau Alaska Time - Alaska panhandle
US +571035-1351807 America/Sitka Alaska Time - southeast Alaska panhandle
US +593249-1394338 America/Yakutat Alaska Time - Alaska panhandle neck
US +643004-1652423 America/Nome Alaska Time - west Alaska
US +515248-1763929 America/Adak Aleutian Islands
US,UM +211825-1575130 Pacific/Honolulu Hawaii time
UY -3453-05611 America/Montevideo
UZ +3940+06648 Asia/Samarkand west Uzbekistan
UZ +4120+06918 Asia/Tashkent east Uzbekistan
VE +1030-06656 America/Caracas
VU -1740+16825 Pacific/Efate
WF -1318-17610 Pacific/Wallis
WS -1350-17144 Pacific/Apia
ZA,LS,SZ -2615+02800 Africa/Johannesburg

View File

@ -271,17 +271,31 @@ local_unbound_enable="NO" # local caching resolver
#
# kerberos. Do not run the admin daemons on slave servers
#
kerberos5_server_enable="NO" # Run a kerberos 5 master server (or NO).
kerberos5_server="/usr/libexec/kdc" # path to kerberos 5 KDC
kerberos5_server_flags="--detach" # Additional flags to the kerberos 5 server
kadmind5_server_enable="NO" # Run kadmind (or NO)
kadmind5_server="/usr/libexec/kadmind" # path to kerberos 5 admin daemon
kpasswdd_server_enable="NO" # Run kpasswdd (or NO)
kpasswdd_server="/usr/libexec/kpasswdd" # path to kerberos 5 passwd daemon
kdc_enable="NO" # Run a kerberos 5 KDC (or NO).
kdc_program="/usr/libexec/kdc" # path to kerberos 5 KDC
kdc_flags="" # Additional flags to the kerberos 5 KDC
kadmind_enable="NO" # Run kadmind (or NO)
kadmind_program="/usr/libexec/kadmind" # path to kadmind
kpasswdd_enable="NO" # Run kpasswdd (or NO)
kpasswdd_program="/usr/libexec/kpasswdd" # path to kpasswdd
kfd_enable="NO" # Run kfd (or NO)
kfd_program="/usr/libexec/kfd" # path to kerberos 5 kfd daemon
kfd_flags=""
ipropd_master_enable="NO" # Run Heimdal incremental propagation daemon
# (master daemon).
ipropd_master_program="/usr/libexec/ipropd-master"
ipropd_master_flags="" # Flags to ipropd-master.
ipropd_master_keytab="/etc/krb5.keytab" # keytab for ipropd-master.
ipropd_master_slaves="" # slave node names used for /var/heimdal/slaves.
ipropd_slave_enable="NO" # Run Heimdal incremental propagation daemon
# (slave daemon).
ipropd_slave_program="/usr/libexec/ipropd-slave"
ipropd_slave_flags="" # Flags to ipropd-slave.
ipropd_slave_keytab="/etc/krb5.keytab" # keytab for ipropd-slave.
ipropd_slave_masters="" # master node names.
gssd_enable="NO" # Run the gssd daemon (or NO).
gssd_program="/usr/sbin/gssd" # Path to gssd.
gssd_flags="" # Flags for gssd.
rwhod_enable="NO" # Run the rwho daemon (or NO).
@ -516,15 +530,15 @@ ip6addrctl_policy="AUTO" # A pre-defined address selection policy
##############################################################
keyboard="" # keyboard device to use (default /dev/kbd0).
keymap="NO" # keymap in /usr/share/syscons/keymaps/* (or NO).
keymap="NO" # keymap in /usr/share/{syscons,vt}/keymaps/* (or NO).
keyrate="NO" # keyboard rate to: slow, normal, fast (or NO).
keybell="NO" # See kbdcontrol(1) for options. Use "off" to disable.
keychange="NO" # function keys default values (or NO).
cursor="NO" # cursor type {normal|blink|destructive} (or NO).
scrnmap="NO" # screen map in /usr/share/syscons/scrnmaps/* (or NO).
font8x16="NO" # font 8x16 from /usr/share/syscons/fonts/* (or NO).
font8x14="NO" # font 8x14 from /usr/share/syscons/fonts/* (or NO).
font8x8="NO" # font 8x8 from /usr/share/syscons/fonts/* (or NO).
font8x16="NO" # font 8x16 from /usr/share/{syscons,vt}/fonts/* (or NO).
font8x14="NO" # font 8x14 from /usr/share/{syscons,vt}/fonts/* (or NO).
font8x8="NO" # font 8x8 from /usr/share/{syscons,vt}/fonts/* (or NO).
blanktime="300" # blank time (in seconds) or "NO" to turn it off.
saver="NO" # screen saver: Uses /boot/kernel/${saver}_saver.ko
moused_nondefault_enable="YES" # Treat non-default mice as enabled unless

View File

@ -10,6 +10,8 @@
boot
defaults
..
dtb
..
firmware
..
kernel

View File

@ -8,7 +8,7 @@ particular service, the /etc/pam.d/other is used instead. If that
file does not exist, /etc/pam.conf is searched for entries matching
the specified service or, failing that, the "other" service.
See the pam(8) manual page for an explanation of the workings of the
See the pam(3) manual page for an explanation of the workings of the
PAM library and descriptions of the various files and modules. Below
is a summary of the format for the pam.conf and /etc/pam.d/* files.

View File

@ -65,12 +65,14 @@ FILES= DAEMON \
ipfw \
ipmon \
ipnat \
ipropd_master \
ipropd_slave \
ipsec \
iscsictl \
iscsid \
jail \
kadmind \
kerberos \
kdc \
keyserv \
kfd \
kld \

View File

@ -4,7 +4,7 @@
#
# PROVIDE: SERVERS
# REQUIRE: mountcritremote abi ldconfig savecore watchdogd
# REQUIRE: mountcritremote abi ldconfig savecore watchdogd kdc
# This is a dummy dependency, for early-start servers relying on
# some basic configuration.

View File

@ -9,10 +9,8 @@
. /etc/rc.subr
name="gssd"
name=gssd
rcvar=gssd_enable
load_rc_config $name
rcvar="gssd_enable"
command="${gssd:-/usr/sbin/${name}}"
eval ${name}_flags=\"${gssd_flags}\"
run_rc_command "$1"

View File

@ -75,6 +75,8 @@ ip6addrctl_start()
else
if checkyesno ipv6_activate_all_interfaces; then
ip6addrctl_prefer_ipv6
elif [ -n "$(list_vars ifconfig_\*_ipv6)" ]; then
ip6addrctl_prefer_ipv6
else
ip6addrctl_prefer_ipv4
fi

40
etc/rc.d/ipropd_master Executable file
View File

@ -0,0 +1,40 @@
#!/bin/sh
#
# $FreeBSD$
#
# PROVIDE: ipropd_master
# REQUIRE: kdc
# KEYWORD: shutdown
. /etc/rc.subr
name=ipropd_master
rcvar=${name}_enable
required_files="$ipropd_master_keytab"
start_precmd=${name}_start_precmd
start_postcmd=${name}_start_postcmd
ipropd_master_start_precmd()
{
if [ -z "$ipropd_master_slaves" ]; then
warn "\$ipropd_master_slaves is empty."
return 1
fi
for _slave in $ipropd_master_slaves; do
echo $_slave
done > /var/heimdal/slaves || return 1
command_args="$command_args \
--keytab=\"$ipropd_master_keytab\" \
--detach \
"
}
ipropd_master_start_postcmd()
{
echo "${name}: slave nodes: $ipropd_master_slaves"
}
load_rc_config $name
run_rc_command "$1"

32
etc/rc.d/ipropd_slave Executable file
View File

@ -0,0 +1,32 @@
#!/bin/sh
#
# $FreeBSD$
#
# PROVIDE: ipropd_slave
# REQUIRE: kdc
# KEYWORD: shutdown
. /etc/rc.subr
name=ipropd_slave
rcvar=${name}_enable
required_files="$ipropd_slave_keytab"
start_precmd=${name}_start_precmd
ipropd_slave_start_precmd()
{
if [ -z "$ipropd_slave_masters" ]; then
warn "\$ipropd_slave_masters is empty."
return 1
fi
command_args=" \
$command_args \
--keytab=\"$ipropd_slave_keytab\" \
--detach \
$ipropd_slave_masters"
}
load_rc_config $name
run_rc_command "$1"

View File

@ -207,6 +207,10 @@ parse_options()
extract_var $_j consolelog exec.consolelog - \
/var/log/jail_${_j}_console.log
if [ -r $_fstab ]; then
echo " mount.fstab = \"$_fstab\";"
fi
eval : \${jail_${_j}_devfs_enable:=${jail_devfs_enable:-NO}}
if checkyesno jail_${_j}_devfs_enable; then
echo " mount.devfs;"
@ -222,11 +226,7 @@ parse_options()
;;
*) warn "devfs_ruleset must be an integer." ;;
esac
if [ -r $_fstab ]; then
echo " mount.fstab = \"$_fstab\";"
fi
fi
eval : \${jail_${_j}_fdescfs_enable:=${jail_fdescfs_enable:-NO}}
if checkyesno jail_${_j}_fdescfs_enable; then
echo " mount.fdescfs;"
@ -319,8 +319,10 @@ jail_extract_address()
_mask=${_mask:-/32}
elif [ "${_type}" = "inet6" ]; then
# In case _maske is not set for IPv6, use /128.
# In case _mask is not set for IPv6, use /128.
_mask=${_mask:-/128}
warn "$_type $_addr: an IPv6 address should always be " \
"specified with a prefix length. /128 is used."
fi
}
@ -420,7 +422,7 @@ jail_status()
jail_start()
{
local _j _jid _jn _jl
local _j _jid _jl
if [ $# = 0 ]; then
return
@ -433,12 +435,10 @@ jail_start()
command_args="-f $jail_conf -c"
_tmp=`mktemp -t jail` || exit 3
if $command $rc_flags $command_args >> $_tmp 2>&1; then
$jail_jls -nq | while read IN; do
_jn=$(echo $IN | tr " " "\n" | grep ^name=)
_jid=$(echo $IN | tr " " "\n" | grep ^jid=)
echo -n " ${_jn#name=}"
echo "${_jid#jid=}" \
> /var/run/jail_${_jn#name=}.id
$jail_jls jid name | while read IN; do
set -- $IN
echo -n " $2"
echo $1 > /var/run/jail_$2.id
done
else
tail -1 $_tmp
@ -468,9 +468,8 @@ jail_start()
sleep 1
for _j in $_jl; do
echo -n " ${_hostname:-${_j}}"
if _jid=$($jail_jls -n -j $_j | tr " " "\n" | \
grep ^jid=); then
echo "${_jid#jid=}" > /var/run/jail_${_j}.id
if _jid=$($jail_jls -j $_j jid); then
echo "$_jid" > /var/run/jail_${_j}.id
else
rm -f /var/run/jail_${_j}.id
echo " cannot start jail " \
@ -492,9 +491,8 @@ jail_start()
if $command $rc_flags $command_args \
>> $_tmp 2>&1 </dev/null; then
echo -n " ${_hostname:-${_j}}"
_jid=$($jail_jls -n -j $_j | \
tr " " "\n" | grep ^jid=)
echo "${_jid#jid=}" > /var/run/jail_${_j}.id
_jid=$($jail_jls -j $_j jid)
echo $_jid > /var/run/jail_${_j}.id
else
rm -f /var/run/jail_${_j}.id
echo " cannot start jail " \
@ -509,7 +507,7 @@ jail_start()
jail_stop()
{
local _j _jn
local _j
if [ $# = 0 ]; then
return
@ -520,16 +518,14 @@ jail_stop()
command=$jail_program
rc_flags=$jail_flags
command_args="-f $jail_conf -r"
$jail_jls -nq | while read IN; do
_jn=$(echo $IN | tr " " "\n" | grep ^name=)
echo -n " ${_jn#name=}"
$jail_jls name | while read _j; do
echo -n " $_j"
_tmp=`mktemp -t jail` || exit 3
$command $rc_flags $command_args ${_jn#name=} \
>> $_tmp 2>&1
if $jail_jls -j ${_jn#name=} > /dev/null 2>&1; then
$command $rc_flags $command_args $_j >> $_tmp 2>&1
if $jail_jls -j $_j > /dev/null 2>&1; then
tail -1 $_tmp
else
rm -f /var/run/jail_${_jn#name=}.id
rm -f /var/run/jail_${_j}.id
fi
rm -f $_tmp
done

View File

@ -3,18 +3,26 @@
# $FreeBSD$
#
# PROVIDE: kadmin
# REQUIRE: kerberos
# BEFORE: DAEMON
# PROVIDE: kadmind
# REQUIRE: kdc
# KEYWORD: shutdown
. /etc/rc.subr
name="kadmind5"
load_rc_config $name
rcvar="kadmind5_server_enable"
unset start_cmd
command="${kadmind5_server}"
command_args="&"
required_vars="kerberos5_server_enable"
name=kadmind
rcvar=${name}_enable
required_vars=kdc_enable
start_precmd=${name}_start_precmd
set_rcvar_obsolete kadmind5_server_enable kadmind_enable
set_rcvar_obsolete kadmind5_server kadmind_program
set_rcvar_obsolete kerberos5_server_enable kdc_enable
kadmind_start_precmd()
{
command_args="$command_args &"
}
load_rc_config $name
run_rc_command "$1"

27
etc/rc.d/kdc Executable file
View File

@ -0,0 +1,27 @@
#!/bin/sh
#
# $FreeBSD$
#
# PROVIDE: kdc
# REQUIRE: NETWORKING
# KEYWORD: shutdown
. /etc/rc.subr
name=kdc
rcvar=${name}_enable
start_precmd=${name}_start_precmd
set_rcvar_obsolete kerberos5_server_enable kdc_enable
set_rcvar_obsolete kerberos5_server kdc_program
set_rcvar_obsolete kerberos5_server_flags kdc_flags
kdc_start_precmd()
{
command_args="$command_args --detach"
}
load_rc_config $name
run_rc_command "$1"

View File

@ -1,17 +0,0 @@
#!/bin/sh
#
# $FreeBSD$
#
# PROVIDE: kerberos
# REQUIRE: NETWORKING
. /etc/rc.subr
name="kerberos5"
rcvar="kerberos5_server_enable"
load_rc_config $name
command="${kerberos5_server}"
kerberos5_flags="${kerberos5_server_flags}"
run_rc_command "$1"

View File

@ -10,8 +10,14 @@
. /etc/rc.subr
name=kfd
rcvar=kfd_enable
load_rc_config $name
command_args="-i &"
rcvar=${name}_enable
start_precmd=${name}_start_precmd
kfd_start_precmd()
{
command_args="$command_args -i &"
}
load_rc_config $name
run_rc_command "$1"

View File

@ -4,17 +4,25 @@
#
# PROVIDE: kpasswdd
# REQUIRE: kadmin
# BEFORE: DAEMON
# REQUIRE: kdc
# KEYWORD: shutdown
. /etc/rc.subr
name="kpasswdd"
load_rc_config $name
rcvar="kpasswdd_server_enable"
unset start_cmd
command="${kpasswdd_server}"
command_args="&"
required_vars="kadmind5_server_enable"
name=kpasswdd
rcvar=${name}_enable
required_vars=kdc_enable
start_precmd=${name}_start_precmd
set_rcvar_obsolete kpasswdd_server_enable kpasswdd_enable
set_rcvar_obsolete kpasswdd_server kpasswdd_program
set_rcvar_obsolete kerberos5_server_enable kdc_enable
kpasswdd_start_precmd()
{
command_args="$command_args &"
}
load_rc_config $name
run_rc_command "$1"

View File

@ -23,32 +23,33 @@ ROUTE_CMD="/sbin/route"
routing_start()
{
local _cmd _af _if _a
local _cmd _af _if _a _ret
_cmd=$1
_af=$2
_if=$3
_ret=0
case $_if in
""|[Aa][Ll][Ll]|[Aa][Nn][Yy]) _if="" ;;
esac
case $_af in
inet|inet6|atm)
""|[Aa][Ll][Ll]|[Aa][Nn][Yy])
for _a in inet inet6 atm; do
afexists $_a || continue
setroutes $_cmd $_a $_if || _ret=1
done
;;
*)
if afexists $_af; then
setroutes $_cmd $_af $_if
setroutes $_cmd $_af $_if || _ret=1
else
err 1 "Unsupported address family: $_af."
fi
;;
""|[Aa][Ll][Ll]|[Aa][Nn][Yy])
for _a in inet inet6 atm; do
afexists $_a && setroutes $_cmd $_a $_if
done
;;
*)
err 1 "Unsupported address family: $_af."
;;
;;
esac
return $_ret
}
routing_stop()
@ -62,17 +63,6 @@ routing_stop()
esac
case $_af in
inet|inet6|atm)
if afexists $_af; then
eval static_${_af} delete $_if
# When $_if is specified, do not flush routes.
if ! [ -n "$_if" ]; then
eval routing_stop_${_af}
fi
else
err 1 "Unsupported address family: $_af."
fi
;;
""|[Aa][Ll][Ll]|[Aa][Nn][Yy])
for _a in inet inet6 atm; do
afexists $_a || continue
@ -82,10 +72,18 @@ routing_stop()
eval routing_stop_${_a}
fi
done
;;
;;
*)
err 1 "Unsupported address family: $_af."
;;
if afexists $_af; then
eval static_${_af} delete $_if
# When $_if is specified, do not flush routes.
if ! [ -n "$_if" ]; then
eval routing_stop_${_af}
fi
else
err 1 "Unsupported address family: $_af."
fi
;;
esac
}

View File

@ -45,16 +45,122 @@ stop_cmd=":"
kbddev=/dev/ttyv0
viddev=/dev/ttyv0
_sc_config="syscons"
_sc_config=
_sc_console=
_sc_initdone=
_sc_keymap_msg=
sc_init()
{
if [ -z "${_sc_initdone}" ]; then
if [ -z "${_sc_console}" ]; then
if [ x`sysctl -n kern.vty` = x"vt" ]; then
_sc_console="vt"
else
_sc_console="syscons"
fi
_sc_config="${_sc_console}"
fi
echo -n "Configuring ${_sc_config}:"
_sc_initdone=yes
fi
}
# syscons to vt migration helper
lookup_keymap_for_vt()
{
keymap=`basename $1 .kbd`
case $keymap in
hy.armscii-8) echo am;;
be.iso.acc) echo be.acc;;
be.iso) echo be;;
bg.bds.ctrlcaps) echo bg.bds;;
bg.phonetic.ctrlcaps) echo bg.phonetic;;
br275.iso.acc) echo br;;
br275.*) echo br.noacc;;
by.*) echo by;;
fr_CA.iso.acc) echo ca-fr;;
swissgerman.macbook.acc) echo ch.macbook.acc;;
swissgerman.iso.acc) echo ch.acc;;
swissgerman.*) echo ch;;
swissfrench.iso.acc) echo ch-fr.acc;;
swissfrench.*) echo ch-fr;;
ce.iso2) echo centraleuropean.qwerty;;
colemak.iso15.acc) echo colemak.acc;;
cs.*|cz.*) echo cz;;
german.iso.acc) echo de.acc;;
german.*) echo de;;
danish.iso.acc) echo dk.acc;;
danish.iso.macbook) echo dk.macbook;;
danish.*) echo dk;;
estonian.*) echo ee;;
spanish.dvorak) echo es.dvorak;;
spanish.iso*.acc) echo es.acc;;
spanish.iso) echo es;;
finnish.*) echo fi;;
fr.macbook.acc) echo fr.macbook;;
fr.iso.acc) echo fr.acc;;
fr.iso) echo fr;;
el.iso07) echo gr;;
gr.us101.acc) echo gr.101.acc;;
hr.iso) echo hr;;
hu.iso2.101keys) echo hu.101;;
hu.iso2.102keys) echo hu.102;;
iw.iso8) echo il;;
icelandic.iso.acc) echo is.acc;;
icelandic.iso) echo is;;
it.iso) echo it;;
jp.106x) echo jp.capsctrl;;
jp.106) echo jp;;
#?? jp.pc98.iso) echo jp.pc98;;
kk.pt154.io) echo kz.io;;
kk.pt154.kst) echo kz.kst;;
latinamerican.iso.acc) echo latinamerican.acc;;
lt.iso4) echo lt;;
norwegian.iso) echo no;;
norwegian.dvorak) echo no.dvorak;;
dutch.iso.acc) echo nl;;
eee_nordic) echo nordic.asus-eee;;
pl_PL.dvorak) echo pl.dvorak;;
pl_PL.ISO8859-2) echo pl;;
pt.iso.acc) echo pt.acc;;
pt.iso) echo pt;;
ru.koi8-r.shift) echo ru.shift;;
ru.koi8-r.win) echo ru.win;;
ru.*) echo ru;;
swedish.*) echo se;;
si.iso) echo si;;
sk.iso2) echo sk;;
tr.iso9.q) echo tr;;
ua.koi8-u.shift.alt) echo ua.shift.alt;;
ua.*) echo ua;;
uk.*-ctrl) echo uk.capsctrl;;
uk.dvorak) echo uk.dvorak;;
uk.*) echo uk;;
us.iso.acc) echo us.acc;;
us.pc-ctrl) echo us.ctrl;;
us.iso) echo us;;
esac
}
kbdcontrol_load_keymap()
{
errmsg=`kbdcontrol < ${kbddev} -l ${keymap} 2>&1`
if [ -n "${errmsg}" -a "${_sc_console}" = "vt" ]; then
_sc_keymap_msg="${errmsg}"
keymap_vt=`lookup_keymap_for_vt ${keymap}`
if [ -n "${keymap_vt}" ]; then
errmsg=`kbdcontrol < ${kbddev} -l ${keymap_vt} 2>&1`
if [ -z "${errmsg}" ]; then
_sc_keymap_msg="New keymap: In /etc/rc.conf replace 'keymap=${keymap}' by 'keymap=${keymap_vt}'"
fi
else
_sc_keymap_msg="No replacement found for keymap '${keymap}'.
You may try to convert your keymap file using 'convert-keymap.pl', which is
part of the system sources and located in /usr/src/tools/tools/vt/keymaps/"
fi
fi
}
# helper
syscons_configure_keyboard()
{
@ -65,7 +171,7 @@ syscons_configure_keyboard()
;;
*)
sc_init
echo -n ' keymap'; kbdcontrol < ${kbddev} -l ${keymap}
echo -n ' keymap'; kbdcontrol_load_keymap
;;
esac
@ -139,10 +245,9 @@ syscons_setkeyboard()
#
if [ -n "${_sc_initdone}" ]; then
echo '.'
_sc_config="syscons"
_sc_config="${_sc_console}"
_sc_initdone=
fi
}
syscons_precmd()
@ -256,6 +361,12 @@ syscons_start()
fi
[ -n "${_sc_initdone}" ] && echo '.'
if [ -n "${_sc_keymap_msg}" ]; then
echo
echo "WARNING:"
echo "${_sc_keymap_msg}."
echo
fi
}
load_rc_config $name

View File

@ -1270,7 +1270,7 @@ run_rc_script()
#
load_rc_config()
{
local _name _rcvar_val _var _defval _v _msg _new
local _name _rcvar_val _var _defval _v _msg _new _d
_name=$1
if [ -z "$_name" ]; then
err 3 'USAGE: load_rc_config name'
@ -1289,18 +1289,21 @@ load_rc_config()
fi
_rc_conf_loaded=true
fi
if [ -f /etc/rc.conf.d/"$_name" ]; then
debug "Sourcing /etc/rc.conf.d/$_name"
. /etc/rc.conf.d/"$_name"
elif [ -d /etc/rc.conf.d/"$_name" ] ; then
local _rc
for _rc in /etc/rc.conf.d/"$_name"/* ; do
if [ -f "$_rc" ] ; then
debug "Sourcing $_rc"
. "$_rc"
fi
done
fi
for _d in /etc ${local_startup%*/rc.d}; do
if [ -f ${_d}/rc.conf.d/"$_name" ]; then
debug "Sourcing ${_d}/rc.conf.d/$_name"
. ${_d}/rc.conf.d/"$_name"
elif [ -d ${_d}/rc.conf.d/"$_name" ] ; then
local _rc
for _rc in ${_d}/rc.conf.d/"$_name"/* ; do
if [ -f "$_rc" ] ; then
debug "Sourcing $_rc"
. "$_rc"
fi
done
fi
done
# Set defaults if defined.
for _var in $rcvar; do

View File

@ -12,6 +12,7 @@ PROG= gnugrep
SRCS= closeout.c dfa.c error.c exclude.c grep.c grepmat.c hard-locale.c \
isdir.c kwset.c obstack.c quotearg.c savedir.c search.c xmalloc.c \
xstrtoumax.c
CLEANFILES+= gnugrep.1
CFLAGS+=-I${.CURDIR} -I${DESTDIR}/usr/include/gnu -DHAVE_CONFIG_H

View File

@ -193,8 +193,10 @@ int pthread_cond_init(pthread_cond_t *,
const pthread_condattr_t *);
int pthread_cond_signal(pthread_cond_t *);
int pthread_cond_timedwait(pthread_cond_t *,
pthread_mutex_t *, const struct timespec *);
int pthread_cond_wait(pthread_cond_t *, pthread_mutex_t *);
pthread_mutex_t *__mutex, const struct timespec *)
__requires_exclusive(*__mutex);
int pthread_cond_wait(pthread_cond_t *, pthread_mutex_t *__mutex)
__requires_exclusive(*__mutex);
int pthread_create(pthread_t *, const pthread_attr_t *,
void *(*) (void *), void *);
int pthread_detach(pthread_t);
@ -213,27 +215,42 @@ int pthread_mutexattr_getpshared(const pthread_mutexattr_t *,
int pthread_mutexattr_gettype(pthread_mutexattr_t *, int *);
int pthread_mutexattr_settype(pthread_mutexattr_t *, int);
int pthread_mutexattr_setpshared(pthread_mutexattr_t *, int);
int pthread_mutex_destroy(pthread_mutex_t *);
int pthread_mutex_init(pthread_mutex_t *,
const pthread_mutexattr_t *);
int pthread_mutex_lock(pthread_mutex_t *);
int pthread_mutex_trylock(pthread_mutex_t *);
int pthread_mutex_timedlock(pthread_mutex_t *,
const struct timespec *);
int pthread_mutex_unlock(pthread_mutex_t *);
int pthread_mutex_destroy(pthread_mutex_t *__mutex)
__requires_unlocked(*__mutex);
int pthread_mutex_init(pthread_mutex_t *__mutex,
const pthread_mutexattr_t *)
__requires_unlocked(*__mutex);
int pthread_mutex_lock(pthread_mutex_t *__mutex)
__locks_exclusive(*__mutex);
int pthread_mutex_trylock(pthread_mutex_t *__mutex)
__trylocks_exclusive(0, *__mutex);
int pthread_mutex_timedlock(pthread_mutex_t *__mutex,
const struct timespec *)
__trylocks_exclusive(0, *__mutex);
int pthread_mutex_unlock(pthread_mutex_t *__mutex)
__unlocks(*__mutex);
int pthread_once(pthread_once_t *, void (*) (void));
int pthread_rwlock_destroy(pthread_rwlock_t *);
int pthread_rwlock_init(pthread_rwlock_t *,
const pthread_rwlockattr_t *);
int pthread_rwlock_rdlock(pthread_rwlock_t *);
int pthread_rwlock_timedrdlock(pthread_rwlock_t *,
const struct timespec *);
int pthread_rwlock_timedwrlock(pthread_rwlock_t *,
const struct timespec *);
int pthread_rwlock_tryrdlock(pthread_rwlock_t *);
int pthread_rwlock_trywrlock(pthread_rwlock_t *);
int pthread_rwlock_unlock(pthread_rwlock_t *);
int pthread_rwlock_wrlock(pthread_rwlock_t *);
int pthread_rwlock_destroy(pthread_rwlock_t *__rwlock)
__requires_unlocked(*__rwlock);
int pthread_rwlock_init(pthread_rwlock_t *__rwlock,
const pthread_rwlockattr_t *)
__requires_unlocked(*__rwlock);
int pthread_rwlock_rdlock(pthread_rwlock_t *__rwlock)
__locks_shared(*__rwlock);
int pthread_rwlock_timedrdlock(pthread_rwlock_t *__rwlock,
const struct timespec *)
__trylocks_shared(0, *__rwlock);
int pthread_rwlock_timedwrlock(pthread_rwlock_t *__rwlock,
const struct timespec *)
__trylocks_exclusive(0, *__rwlock);
int pthread_rwlock_tryrdlock(pthread_rwlock_t *__rwlock)
__trylocks_shared(0, *__rwlock);
int pthread_rwlock_trywrlock(pthread_rwlock_t *__rwlock)
__trylocks_exclusive(0, *__rwlock);
int pthread_rwlock_unlock(pthread_rwlock_t *__rwlock)
__unlocks(*__rwlock);
int pthread_rwlock_wrlock(pthread_rwlock_t *__rwlock)
__locks_exclusive(*__rwlock);
int pthread_rwlockattr_destroy(pthread_rwlockattr_t *);
int pthread_rwlockattr_getkind_np(const pthread_rwlockattr_t *,
int *);
@ -245,11 +262,16 @@ int pthread_rwlockattr_setpshared(pthread_rwlockattr_t *, int);
pthread_t pthread_self(void);
int pthread_setspecific(pthread_key_t, const void *);
int pthread_spin_init(pthread_spinlock_t *, int);
int pthread_spin_destroy(pthread_spinlock_t *);
int pthread_spin_lock(pthread_spinlock_t *);
int pthread_spin_trylock(pthread_spinlock_t *);
int pthread_spin_unlock(pthread_spinlock_t *);
int pthread_spin_init(pthread_spinlock_t *__spin, int)
__requires_unlocked(*__spin);
int pthread_spin_destroy(pthread_spinlock_t *__spin)
__requires_unlocked(*__spin);
int pthread_spin_lock(pthread_spinlock_t *__spin)
__locks_exclusive(*__spin);
int pthread_spin_trylock(pthread_spinlock_t *__spin)
__trylocks_exclusive(0, *__spin);
int pthread_spin_unlock(pthread_spinlock_t *__spin)
__unlocks(*__spin);
int pthread_cancel(pthread_t);
int pthread_setcancelstate(int, int *);
int pthread_setcanceltype(int, int *);

View File

@ -82,9 +82,6 @@ extern int ___mb_cur_max(void);
_Noreturn void abort(void);
int abs(int) __pure2;
int atexit(void (*)(void));
#ifdef __BLOCKS__
int atexit_b(void (^)(void));
#endif
double atof(const char *);
int atoi(const char *);
long atol(const char *);
@ -103,10 +100,6 @@ size_t mbstowcs(wchar_t * __restrict , const char * __restrict, size_t);
int mbtowc(wchar_t * __restrict, const char * __restrict, size_t);
void qsort(void *, size_t, size_t,
int (*)(const void *, const void *));
#ifdef __BLOCKS__
void qsort_b(void *, size_t, size_t,
int (^)(const void *, const void *));
#endif
int rand(void);
void *realloc(void *, size_t);
void srand(unsigned);
@ -264,6 +257,11 @@ void arc4random_buf(void *, size_t);
void arc4random_stir(void);
__uint32_t
arc4random_uniform(__uint32_t);
#ifdef __BLOCKS__
int atexit_b(void (^)(void));
void *bsearch_b(const void *, const void *, size_t,
size_t, int (^)(const void *, const void *));
#endif
char *getbsize(int *, long *);
/* getcap(3) functions */
char *cgetcap(char *, const char *, int);
@ -289,6 +287,8 @@ const char *
int heapsort(void *, size_t, size_t, int (*)(const void *, const void *));
#ifdef __BLOCKS__
int heapsort_b(void *, size_t, size_t, int (^)(const void *, const void *));
void qsort_b(void *, size_t, size_t,
int (^)(const void *, const void *));
#endif
int l64a_r(long, char *, int);
int mergesort(void *, size_t, size_t, int (*)(const void *, const void *));

View File

@ -57,7 +57,7 @@ cxxrt_${_S}:
WARNS= 0
CFLAGS+= -I${HDRDIR} -I${LIBCXXRTDIR} -nostdlib -DLIBCXXRT
.if empty(CXXFLAGS:M-std=*)
CXXFLAGS+= -std=c++0x
CXXFLAGS+= -std=c++11
.endif
DPADD= ${LIBCXXRT}

View File

@ -49,6 +49,7 @@ LDFLAGS+= -nodefaultlibs
LDADD+= -lcompiler_rt
.if ${MK_SSP} != "no"
DPADD+= ${LIBSSP_NONSHARED}
LDADD+= -lssp_nonshared
.endif

View File

@ -38,6 +38,7 @@ ENTRY(__aeabi_read_tp)
mrc p15, 0, r0, c13, c0, 3
#endif
RET
END(__aeabi_read_tp)
#ifdef ARM_TP_ADDRESS
.Larm_tp_address:

View File

@ -7,3 +7,4 @@ ENTRY(_ctx_start)
mov r0, r5
bl _C_LABEL(ctx_done)
bl _C_LABEL(abort)
END(_ctx_start)

View File

@ -89,6 +89,7 @@ ENTRY(_setjmp)
mov r0, #0x00000000
RET
END(_setjmp)
.L_setjmp_magic:
.word _JB_MAGIC__SETJMP
@ -140,3 +141,4 @@ botch:
#else
b .
#endif
END(_longjmp)

View File

@ -43,3 +43,4 @@ ENTRY(alloca)
sub sp, sp, r0 /* Adjust the stack pointer */
mov r0, sp /* r0 = base of new space */
RET
END(alloca)

View File

@ -29,6 +29,7 @@ ENTRY(__umodsi3)
add sp, sp, #4 /* unalign stack */
mov r0, r1
ldmfd sp!, {pc}
END(__umodsi3)
ENTRY(__modsi3)
stmfd sp!, {lr}
@ -48,6 +49,7 @@ ENTRY(__modsi3)
mvn r0, #0
#endif
RET
END(__modsi3)
ENTRY(__udivsi3)
.L_udivide: /* r0 = r0 / r1; r1 = r0 % r1 */
@ -70,6 +72,7 @@ ENTRY(__udivsi3)
mov r0, r1
mov r1, #0
RET
END(__udivsi3)
ENTRY(__divsi3)
.L_divide: /* r0 = r0 / r1; r1 = r0 % r1 */
@ -385,3 +388,4 @@ ENTRY(__divsi3)
addhs r3, r3, r2
mov r0, r3
RET
END(__divsi3)

View File

@ -101,7 +101,7 @@ ENTRY(setjmp)
.Lfpu_present:
.word PIC_SYM(_libc_arm_fpu_present, GOTOFF)
#endif /* __ARM_EABI__ */
END(setjmp)
.weak _C_LABEL(longjmp)
.set _C_LABEL(longjmp), _C_LABEL(__longjmp)
@ -150,3 +150,4 @@ ENTRY(__longjmp)
bl PIC_SYM(_C_LABEL(longjmperror), PLT)
bl PIC_SYM(_C_LABEL(abort), PLT)
b . - 8 /* Cannot get here */
END(__longjmp)

View File

@ -51,6 +51,7 @@ ENTRY(sigsetjmp)
teq r1, #0
beq PIC_SYM(_C_LABEL(_setjmp), PLT)
b PIC_SYM(_C_LABEL(setjmp), PLT)
END(sigsetjmp)
.L_setjmp_magic:
.word _JB_MAGIC__SETJMP
@ -64,3 +65,4 @@ ENTRY(siglongjmp)
teq r2, r3 /* magic correct? */
beq PIC_SYM(_C_LABEL(_longjmp), PLT)
b PIC_SYM(_C_LABEL(longjmp), PLT)
END(siglongjmp)

View File

@ -80,3 +80,4 @@ ENTRY(ffs)
rsbne r0, r0, #32
RET
#endif
END(ffs)

View File

@ -178,3 +178,4 @@ ENTRY(memcmp)
sub r0, r3, r2 /* r0 = b1#5 - b2#5 */
RET
#endif
END(memcmp)

View File

@ -330,3 +330,4 @@ ENTRY(memcpy)
.Lmemcpy_srcul3l4:
sub r1, r1, #1
b .Lmemcpy_l4
END(memcpy)

View File

@ -1781,3 +1781,4 @@ ENTRY(memcpy)
strb r1, [r0, #0x0b]
bx lr
#endif /* !_STANDALONE */
END(memcpy)

View File

@ -580,3 +580,8 @@ ENTRY(bcopy)
.Lmemmove_bsrcul1l4:
add r1, r1, #1
b .Lmemmove_bl4
#ifndef _BCOPY
END(memmove)
#else
END(bcopy)
#endif

View File

@ -234,3 +234,8 @@ ENTRY(memset)
strgeb r3, [ip], #0x01 /* Set another byte */
strgtb r3, [ip] /* and a third */
RET /* Exit */
#ifdef _BZERO
END(bzero)
#else
END(memset)
#endif

View File

@ -41,3 +41,4 @@ ENTRY(strcmp)
beq 1b
sub r0, r2, r3
RET
END(strcmp)

View File

@ -76,3 +76,4 @@ ENTRY(strlen)
.Lexit:
mov r0, r1
RET
END(strlen)

View File

@ -52,3 +52,4 @@ ENTRY(strncmp)
beq 1b
sub r0, r2, r3
RET
END(strncmp)

View File

@ -52,3 +52,4 @@ ENTRY(vfork)
sub r1, r1, #1 /* r1 == 0xffffffff if parent, 0 if child */
and r0, r0, r1 /* r0 == 0 if child, else unchanged */
mov r15, r2
END(vfork)

View File

@ -98,3 +98,4 @@ ENTRY(_brk)
.word PIC_SYM(_C_LABEL(minbrk), GOT)
.Lcurbrk:
.word PIC_SYM(CURBRK, GOT)
END(_brk)

View File

@ -46,3 +46,4 @@ ASENTRY(CERROR)
mvn r0, #0x00000000
mvn r1, #0x00000000
ldmfd sp!, {r4, pc}
END(CERROR)

View File

@ -48,3 +48,4 @@ ENTRY(_pipe)
str r1, [r2, #0x0004]
mov r0, #0x00000000
RET
END(_pipe)

View File

@ -46,3 +46,4 @@ ENTRY(ptrace)
SYSTRAP(ptrace)
bcs PIC_SYM(CERROR, PLT)
RET
END(ptrace)

View File

@ -86,3 +86,4 @@ ENTRY(_sbrk)
#endif
.Lcurbrk:
.word PIC_SYM(CURBRK, GOT)
END(_sbrk)

View File

@ -53,7 +53,7 @@ rewinddir(dirp)
_pthread_mutex_lock(&dirp->dd_lock);
if (dirp->dd_flags & __DTF_READALL)
_filldir(dirp, false);
else if (dirp->dd_seek != 0) {
else {
(void) lseek(dirp->dd_fd, 0, SEEK_SET);
dirp->dd_seek = 0;
}

View File

@ -192,7 +192,7 @@ printf( "int_curr_symbol = %s\n"
"n_cs_precedes = %d\n"
"n_sep_by_space = %d\n"
"p_sign_posn = %d\n"
"n_sign_posn = %d\n",
"n_sign_posn = %d\n"
"int_p_cs_precedes = %d\n"
"int_p_sep_by_space = %d\n"
"int_n_cs_precedes = %d\n"

View File

@ -106,6 +106,7 @@ FBSD_1.3 {
FBSD_1.4 {
atexit_b;
bsearch_b;
heapsort_b;
mergesort_b;
qsort_b;

View File

@ -79,20 +79,22 @@ struct cuse_dev {
void *priv1;
};
static TAILQ_HEAD(, cuse_dev) h_cuse;
static TAILQ_HEAD(, cuse_dev_entered) h_cuse_entered;
static int f_cuse = -1;
static pthread_mutex_t m_cuse;
static struct cuse_vm_allocation a_cuse[CUSE_ALLOC_UNIT_MAX];
static TAILQ_HEAD(, cuse_dev) h_cuse __guarded_by(m_cuse);
static TAILQ_HEAD(, cuse_dev_entered) h_cuse_entered __guarded_by(m_cuse);
static struct cuse_vm_allocation a_cuse[CUSE_ALLOC_UNIT_MAX]
__guarded_by(m_cuse);
static void
cuse_lock(void)
cuse_lock(void) __locks_exclusive(m_cuse)
{
pthread_mutex_lock(&m_cuse);
}
static void
cuse_unlock(void)
cuse_unlock(void) __unlocks(m_cuse)
{
pthread_mutex_unlock(&m_cuse);
}

View File

@ -31,10 +31,23 @@
#include <sys/types.h>
#include <sys/sysctl.h>
#include <errno.h>
#include <stdlib.h>
#include <string.h>
#include "libgeom.h"
/*
* Amount of extra space we allocate to try and anticipate the size of
* confxml.
*/
#define GEOM_GETXML_SLACK 4096
/*
* Number of times to retry in the face of the size of confxml exceeding
* that of our buffer.
*/
#define GEOM_GETXML_RETRIES 4
char *
geom_getxml(void)
{
@ -42,19 +55,33 @@ geom_getxml(void)
size_t l = 0;
int mib[3];
size_t sizep;
int retries;
sizep = sizeof(mib) / sizeof(*mib);
if (sysctlnametomib("kern.geom.confxml", mib, &sizep) != 0)
return (NULL);
if (sysctl(mib, sizep, NULL, &l, NULL, 0) != 0)
return (NULL);
l += 4096;
p = malloc(l);
if (p == NULL)
return (NULL);
if (sysctl(mib, sizep, p, &l, NULL, 0) != 0) {
l += GEOM_GETXML_SLACK;
for (retries = 0; retries < GEOM_GETXML_RETRIES; retries++) {
p = malloc(l);
if (p == NULL)
return (NULL);
if (sysctl(mib, sizep, p, &l, NULL, 0) == 0)
return (reallocf(p, strlen(p) + 1));
free(p);
return (NULL);
if (errno != ENOMEM)
return (NULL);
/*
* Our buffer wasn't big enough. Make it bigger and
* try again.
*/
l *= 2;
}
return (reallocf(p, strlen(p) + 1));
return (NULL);
}

View File

@ -727,7 +727,7 @@ nvlist_recv(int sock)
struct nvlist_header nvlhdr;
nvlist_t *nvl, *ret;
unsigned char *buf;
size_t nfds, size;
size_t nfds, size, i;
int serrno, *fds;
if (buf_recv(sock, &nvlhdr, sizeof(nvlhdr)) == -1)
@ -760,8 +760,11 @@ nvlist_recv(int sock)
}
nvl = nvlist_xunpack(buf, size, fds, nfds);
if (nvl == NULL)
if (nvl == NULL) {
for (i = 0; i < nfds; i++)
close(fds[i]);
goto out;
}
ret = nvl;
out:

View File

@ -121,10 +121,12 @@ proc_obj2map(struct proc_handle *p, const char *objname)
break;
}
}
if (rdl == NULL && strcmp(objname, "a.out") == 0 && p->rdexec != NULL)
rdl = p->rdexec;
else
return (NULL);
if (rdl == NULL) {
if (strcmp(objname, "a.out") == 0 && p->rdexec != NULL)
rdl = p->rdexec;
else
return (NULL);
}
if ((map = malloc(sizeof(*map))) == NULL)
return (NULL);

View File

@ -79,15 +79,24 @@ int cnd_broadcast(cnd_t *);
void cnd_destroy(cnd_t *);
int cnd_init(cnd_t *);
int cnd_signal(cnd_t *);
int cnd_timedwait(cnd_t *__restrict, mtx_t *__restrict,
const struct timespec *__restrict);
int cnd_wait(cnd_t *, mtx_t *);
void mtx_destroy(mtx_t *);
int mtx_init(mtx_t *, int);
int mtx_lock(mtx_t *);
int mtx_timedlock(mtx_t *__restrict, const struct timespec *__restrict);
int mtx_trylock(mtx_t *);
int mtx_unlock(mtx_t *);
int cnd_timedwait(cnd_t *__restrict, mtx_t *__restrict __mtx,
const struct timespec *__restrict)
__requires_exclusive(*__mtx);
int cnd_wait(cnd_t *, mtx_t *__mtx)
__requires_exclusive(*__mtx);
void mtx_destroy(mtx_t *__mtx)
__requires_unlocked(*__mtx);
int mtx_init(mtx_t *__mtx, int)
__requires_unlocked(*__mtx);
int mtx_lock(mtx_t *__mtx)
__locks_exclusive(*__mtx);
int mtx_timedlock(mtx_t *__restrict __mtx,
const struct timespec *__restrict)
__trylocks_exclusive(thrd_success, *__mtx);
int mtx_trylock(mtx_t *__mtx)
__trylocks_exclusive(thrd_success, *__mtx);
int mtx_unlock(mtx_t *__mtx)
__unlocks(*__mtx);
int thrd_create(thrd_t *, thrd_start_t, void *);
thrd_t thrd_current(void);
int thrd_detach(thrd_t);

View File

@ -150,7 +150,7 @@ _pthread_cond_destroy(pthread_cond_t *cond)
}
/*
* Cancellation behaivor:
* Cancellation behavior:
* Thread may be canceled at start, if thread is canceled, it means it
* did not get a wakeup from pthread_cond_signal(), otherwise, it is
* not canceled.

View File

@ -86,8 +86,10 @@ __FBSDID("$FreeBSD$");
#include "math.h"
#include "math_private.h"
static const volatile double vzero = 0;
static const double
two52= 4.50359962737049600000e+15, /* 0x43300000, 0x00000000 */
zero= 0.00000000000000000000e+00,
half= 5.00000000000000000000e-01, /* 0x3FE00000, 0x00000000 */
one = 1.00000000000000000000e+00, /* 0x3FF00000, 0x00000000 */
pi = 3.14159265358979311600e+00, /* 0x400921FB, 0x54442D18 */
@ -154,39 +156,35 @@ w4 = -5.95187557450339963135e-04, /* 0xBF4380CB, 0x8C0FE741 */
w5 = 8.36339918996282139126e-04, /* 0x3F4B67BA, 0x4CDAD5D1 */
w6 = -1.63092934096575273989e-03; /* 0xBF5AB89D, 0x0B9E43E4 */
static const double zero= 0.00000000000000000000e+00;
static double sin_pi(double x)
/*
* Compute sin(pi*x) without actually doing the pi*x multiplication.
* sin_pi(x) is only called for x < 0 and |x| < 2**(p-1) where p is
* the precision of x.
*/
static double
sin_pi(double x)
{
volatile double vz;
double y,z;
int n,ix;
int n;
GET_HIGH_WORD(ix,x);
ix &= 0x7fffffff;
y = -x;
if(ix<0x3fd00000) return __kernel_sin(pi*x,zero,0);
y = -x; /* x is assume negative */
vz = y+0x1p52; /* depend on 0 <= y < 0x1p52 */
z = vz-0x1p52; /* rint(y) for the above range */
if (z == y)
return zero;
vz = y+0x1p50;
GET_LOW_WORD(n,vz); /* bits for rounded y (units 0.25) */
z = vz-0x1p50; /* y rounded to a multiple of 0.25 */
if (z > y) {
z -= 0.25; /* adjust to round down */
n--;
}
n &= 7; /* octant of y mod 2 */
y = y - z + n * 0.25; /* y mod 2 */
/*
* argument reduction, make sure inexact flag not raised if input
* is an integer
*/
z = floor(y);
if(z!=y) { /* inexact anyway */
y *= 0.5;
y = 2.0*(y - floor(y)); /* y = |x| mod 2.0 */
n = (int) (y*4.0);
} else {
if(ix>=0x43400000) {
y = zero; n = 0; /* y must be even */
} else {
if(ix<0x43300000) z = y+two52; /* exact */
GET_LOW_WORD(n,z);
n &= 1;
y = n;
n<<= 2;
}
}
switch (n) {
case 0: y = __kernel_sin(pi*y,zero,0); break;
case 1:
@ -206,7 +204,7 @@ __ieee754_lgamma_r(double x, int *signgamp)
{
double t,y,z,nadj,p,p1,p2,p3,q,r,w;
int32_t hx;
int i,lx,ix;
int i,ix,lx;
EXTRACT_WORDS(hx,lx,x);
@ -214,7 +212,7 @@ __ieee754_lgamma_r(double x, int *signgamp)
*signgamp = 1;
ix = hx&0x7fffffff;
if(ix>=0x7ff00000) return x*x;
if((ix|lx)==0) return one/zero;
if((ix|lx)==0) return one/vzero;
if(ix<0x3b900000) { /* |x|<2**-70, return -log(|x|) */
if(hx<0) {
*signgamp = -1;
@ -223,9 +221,9 @@ __ieee754_lgamma_r(double x, int *signgamp)
}
if(hx<0) {
if(ix>=0x43300000) /* |x|>=2**52, must be -integer */
return one/zero;
return one/vzero;
t = sin_pi(x);
if(t==zero) return one/zero; /* -integer */
if(t==zero) return one/vzero; /* -integer */
nadj = __ieee754_log(pi/fabs(t*x));
if(t<zero) *signgamp = -1;
x = -x;

View File

@ -19,8 +19,10 @@ __FBSDID("$FreeBSD$");
#include "math.h"
#include "math_private.h"
static const volatile float vzero = 0;
static const float
two23= 8.3886080000e+06, /* 0x4b000000 */
zero= 0.0000000000e+00,
half= 5.0000000000e-01, /* 0x3f000000 */
one = 1.0000000000e+00, /* 0x3f800000 */
pi = 3.1415927410e+00, /* 0x40490fdb */
@ -87,39 +89,30 @@ w4 = -5.9518753551e-04, /* 0xba1c065c */
w5 = 8.3633989561e-04, /* 0x3a5b3dd2 */
w6 = -1.6309292987e-03; /* 0xbad5c4e8 */
static const float zero= 0.0000000000e+00;
static float sin_pif(float x)
static float
sin_pif(float x)
{
volatile float vz;
float y,z;
int n,ix;
int n;
GET_FLOAT_WORD(ix,x);
ix &= 0x7fffffff;
y = -x;
if(ix<0x3e800000) return __kernel_sindf(pi*x);
y = -x; /* x is assume negative */
vz = y+0x1p23F; /* depend on 0 <= y < 0x1p23 */
z = vz-0x1p23F; /* rintf(y) for the above range */
if (z == y)
return zero;
vz = y+0x1p21F;
GET_FLOAT_WORD(n,vz); /* bits for rounded y (units 0.25) */
z = vz-0x1p21F; /* y rounded to a multiple of 0.25 */
if (z > y) {
z -= 0.25F; /* adjust to round down */
n--;
}
n &= 7; /* octant of y mod 2 */
y = y - z + n * 0.25F; /* y mod 2 */
/*
* argument reduction, make sure inexact flag not raised if input
* is an integer
*/
z = floorf(y);
if(z!=y) { /* inexact anyway */
y *= (float)0.5;
y = (float)2.0*(y - floorf(y)); /* y = |x| mod 2.0 */
n = (int) (y*(float)4.0);
} else {
if(ix>=0x4b800000) {
y = zero; n = 0; /* y must be even */
} else {
if(ix<0x4b000000) z = y+two23; /* exact */
GET_FLOAT_WORD(n,z);
n &= 1;
y = n;
n<<= 2;
}
}
switch (n) {
case 0: y = __kernel_sindf(pi*y); break;
case 1:
@ -147,7 +140,7 @@ __ieee754_lgammaf_r(float x, int *signgamp)
*signgamp = 1;
ix = hx&0x7fffffff;
if(ix>=0x7f800000) return x*x;
if(ix==0) return one/zero;
if(ix==0) return one/vzero;
if(ix<0x35000000) { /* |x|<2**-21, return -log(|x|) */
if(hx<0) {
*signgamp = -1;
@ -156,9 +149,9 @@ __ieee754_lgammaf_r(float x, int *signgamp)
}
if(hx<0) {
if(ix>=0x4b000000) /* |x|>=2**23, must be -integer */
return one/zero;
return one/vzero;
t = sin_pif(x);
if(t==zero) return one/zero; /* -integer */
if(t==zero) return one/vzero; /* -integer */
nadj = __ieee754_logf(pi/fabsf(t*x));
if(t<zero) *signgamp = -1;
x = -x;

View File

@ -42,7 +42,8 @@ __FBSDID("$FreeBSD$");
#include "math.h"
#include "math_private.h"
static const double one = 1.0, two = 2.0, tiny = 1.0e-300, huge = 1.0e300;
static const volatile double tiny = 1.0e-300;
static const double one = 1.0, two = 2.0, huge = 1.0e300;
double
tanh(double x)

View File

@ -19,7 +19,9 @@ __FBSDID("$FreeBSD$");
#include "math.h"
#include "math_private.h"
static const float one=1.0, two=2.0, tiny = 1.0e-30, huge = 1.0e30;
static const volatile float tiny = 1.0e-30;
static const float one=1.0, two=2.0, huge = 1.0e30;
float
tanhf(float x)
{

View File

@ -1,5 +1,9 @@
# $FreeBSD$
# Use the following command to build local debug version of dynamic
# linker:
# make DEBUG_FLAGS=-g DEBUG=-DDEBUG MK_TESTS=no all
.include <src.opts.mk>
MK_SSP= no

View File

@ -125,213 +125,188 @@ reloc_non_plt(Obj_Entry *obj, Obj_Entry *obj_rtld, int flags,
const Elf_Rela *relalim;
const Elf_Rela *rela;
SymCache *cache;
int r = -1;
const Elf_Sym *def;
const Obj_Entry *defobj;
Elf_Addr *where, symval;
Elf32_Addr *where32;
int r;
r = -1;
/*
* The dynamic loader may be called from a thread, we have
* limited amounts of stack available so we cannot use alloca().
*/
if (obj != obj_rtld) {
cache = calloc(obj->dynsymcount, sizeof(SymCache));
/* No need to check for NULL here */
cache = calloc(obj->dynsymcount, sizeof(SymCache));
/* No need to check for NULL here */
} else
cache = NULL;
cache = NULL;
relalim = (const Elf_Rela *) ((caddr_t) obj->rela + obj->relasize);
relalim = (const Elf_Rela *)((caddr_t)obj->rela + obj->relasize);
for (rela = obj->rela; rela < relalim; rela++) {
Elf_Addr *where = (Elf_Addr *) (obj->relocbase + rela->r_offset);
Elf32_Addr *where32 = (Elf32_Addr *)where;
switch (ELF_R_TYPE(rela->r_info)) {
case R_X86_64_NONE:
break;
case R_X86_64_64:
{
const Elf_Sym *def;
const Obj_Entry *defobj;
def = find_symdef(ELF_R_SYM(rela->r_info), obj, &defobj,
flags, cache, lockstate);
if (def == NULL)
goto done;
*where = (Elf_Addr) (defobj->relocbase + def->st_value + rela->r_addend);
}
break;
case R_X86_64_PC32:
/*
* I don't think the dynamic linker should ever see this
* type of relocation. But the binutils-2.6 tools sometimes
* generate it.
* First, resolve symbol for relocations which
* reference symbols.
*/
{
const Elf_Sym *def;
const Obj_Entry *defobj;
def = find_symdef(ELF_R_SYM(rela->r_info), obj, &defobj,
flags, cache, lockstate);
if (def == NULL)
goto done;
*where32 = (Elf32_Addr) (unsigned long) (defobj->relocbase +
def->st_value + rela->r_addend - (Elf_Addr) where);
switch (ELF_R_TYPE(rela->r_info)) {
case R_X86_64_64:
case R_X86_64_PC32:
case R_X86_64_GLOB_DAT:
case R_X86_64_TPOFF64:
case R_X86_64_TPOFF32:
case R_X86_64_DTPMOD64:
case R_X86_64_DTPOFF64:
case R_X86_64_DTPOFF32:
def = find_symdef(ELF_R_SYM(rela->r_info), obj,
&defobj, flags, cache, lockstate);
if (def == NULL)
goto done;
/*
* If symbol is IFUNC, only perform relocation
* when caller allowed it by passing
* SYMLOOK_IFUNC flag. Skip the relocations
* otherwise.
*
* Also error out in case IFUNC relocations
* are specified for TLS, which cannot be
* usefully interpreted.
*/
if (ELF_ST_TYPE(def->st_info) == STT_GNU_IFUNC) {
switch (ELF_R_TYPE(rela->r_info)) {
case R_X86_64_64:
case R_X86_64_PC32:
case R_X86_64_GLOB_DAT:
if ((flags & SYMLOOK_IFUNC) == 0) {
obj->non_plt_gnu_ifunc = true;
continue;
}
symval = (Elf_Addr)rtld_resolve_ifunc(
defobj, def);
break;
case R_X86_64_TPOFF64:
case R_X86_64_TPOFF32:
case R_X86_64_DTPMOD64:
case R_X86_64_DTPOFF64:
case R_X86_64_DTPOFF32:
_rtld_error("%s: IFUNC for TLS reloc",
obj->path);
goto done;
}
} else {
if ((flags & SYMLOOK_IFUNC) != 0)
continue;
symval = (Elf_Addr)defobj->relocbase +
def->st_value;
}
break;
default:
if ((flags & SYMLOOK_IFUNC) != 0)
continue;
break;
}
break;
/* missing: R_X86_64_GOT32 R_X86_64_PLT32 */
where = (Elf_Addr *)(obj->relocbase + rela->r_offset);
where32 = (Elf32_Addr *)where;
case R_X86_64_COPY:
switch (ELF_R_TYPE(rela->r_info)) {
case R_X86_64_NONE:
break;
case R_X86_64_64:
*where = symval + rela->r_addend;
break;
case R_X86_64_PC32:
/*
* I don't think the dynamic linker should
* ever see this type of relocation. But the
* binutils-2.6 tools sometimes generate it.
*/
*where32 = (Elf32_Addr)(unsigned long)(symval +
rela->r_addend - (Elf_Addr)where);
break;
/* missing: R_X86_64_GOT32 R_X86_64_PLT32 */
case R_X86_64_COPY:
/*
* These are deferred until all other relocations have
* been done. All we do here is make sure that the COPY
* relocation is not in a shared library. They are allowed
* only in executable files.
*/
if (!obj->mainprog) {
_rtld_error("%s: Unexpected R_X86_64_COPY "
"relocation in shared library", obj->path);
goto done;
}
break;
case R_X86_64_GLOB_DAT:
*where = symval;
break;
case R_X86_64_TPOFF64:
/*
* We lazily allocate offsets for static TLS
* as we see the first relocation that
* references the TLS block. This allows us to
* support (small amounts of) static TLS in
* dynamically loaded modules. If we run out
* of space, we generate an error.
*/
if (!defobj->tls_done) {
if (!allocate_tls_offset((Obj_Entry*) defobj)) {
_rtld_error("%s: No space available "
"for static Thread Local Storage",
obj->path);
goto done;
}
}
*where = (Elf_Addr)(def->st_value - defobj->tlsoffset +
rela->r_addend);
break;
case R_X86_64_TPOFF32:
/*
* We lazily allocate offsets for static TLS
* as we see the first relocation that
* references the TLS block. This allows us to
* support (small amounts of) static TLS in
* dynamically loaded modules. If we run out
* of space, we generate an error.
*/
if (!defobj->tls_done) {
if (!allocate_tls_offset((Obj_Entry*) defobj)) {
_rtld_error("%s: No space available "
"for static Thread Local Storage",
obj->path);
goto done;
}
}
*where32 = (Elf32_Addr)(def->st_value -
defobj->tlsoffset + rela->r_addend);
break;
case R_X86_64_DTPMOD64:
*where += (Elf_Addr)defobj->tlsindex;
break;
case R_X86_64_DTPOFF64:
*where += (Elf_Addr)(def->st_value + rela->r_addend);
break;
case R_X86_64_DTPOFF32:
*where32 += (Elf32_Addr)(def->st_value +
rela->r_addend);
break;
case R_X86_64_RELATIVE:
*where = (Elf_Addr)(obj->relocbase + rela->r_addend);
break;
/*
* These are deferred until all other relocations have
* been done. All we do here is make sure that the COPY
* relocation is not in a shared library. They are allowed
* only in executable files.
* missing:
* R_X86_64_GOTPCREL, R_X86_64_32, R_X86_64_32S, R_X86_64_16,
* R_X86_64_PC16, R_X86_64_8, R_X86_64_PC8
*/
if (!obj->mainprog) {
_rtld_error("%s: Unexpected R_X86_64_COPY relocation"
" in shared library", obj->path);
goto done;
}
break;
case R_X86_64_GLOB_DAT:
{
const Elf_Sym *def;
const Obj_Entry *defobj;
def = find_symdef(ELF_R_SYM(rela->r_info), obj, &defobj,
flags, cache, lockstate);
if (def == NULL)
default:
_rtld_error("%s: Unsupported relocation type %u"
" in non-PLT relocations\n", obj->path,
(unsigned int)ELF_R_TYPE(rela->r_info));
goto done;
*where = (Elf_Addr) (defobj->relocbase + def->st_value);
}
break;
case R_X86_64_TPOFF64:
{
const Elf_Sym *def;
const Obj_Entry *defobj;
def = find_symdef(ELF_R_SYM(rela->r_info), obj, &defobj,
flags, cache, lockstate);
if (def == NULL)
goto done;
/*
* We lazily allocate offsets for static TLS as we
* see the first relocation that references the
* TLS block. This allows us to support (small
* amounts of) static TLS in dynamically loaded
* modules. If we run out of space, we generate an
* error.
*/
if (!defobj->tls_done) {
if (!allocate_tls_offset((Obj_Entry*) defobj)) {
_rtld_error("%s: No space available for static "
"Thread Local Storage", obj->path);
goto done;
}
}
*where = (Elf_Addr) (def->st_value - defobj->tlsoffset +
rela->r_addend);
}
break;
case R_X86_64_TPOFF32:
{
const Elf_Sym *def;
const Obj_Entry *defobj;
def = find_symdef(ELF_R_SYM(rela->r_info), obj, &defobj,
flags, cache, lockstate);
if (def == NULL)
goto done;
/*
* We lazily allocate offsets for static TLS as we
* see the first relocation that references the
* TLS block. This allows us to support (small
* amounts of) static TLS in dynamically loaded
* modules. If we run out of space, we generate an
* error.
*/
if (!defobj->tls_done) {
if (!allocate_tls_offset((Obj_Entry*) defobj)) {
_rtld_error("%s: No space available for static "
"Thread Local Storage", obj->path);
goto done;
}
}
*where32 = (Elf32_Addr) (def->st_value -
defobj->tlsoffset +
rela->r_addend);
}
break;
case R_X86_64_DTPMOD64:
{
const Elf_Sym *def;
const Obj_Entry *defobj;
def = find_symdef(ELF_R_SYM(rela->r_info), obj, &defobj,
flags, cache, lockstate);
if (def == NULL)
goto done;
*where += (Elf_Addr) defobj->tlsindex;
}
break;
case R_X86_64_DTPOFF64:
{
const Elf_Sym *def;
const Obj_Entry *defobj;
def = find_symdef(ELF_R_SYM(rela->r_info), obj, &defobj,
flags, cache, lockstate);
if (def == NULL)
goto done;
*where += (Elf_Addr) (def->st_value + rela->r_addend);
}
break;
case R_X86_64_DTPOFF32:
{
const Elf_Sym *def;
const Obj_Entry *defobj;
def = find_symdef(ELF_R_SYM(rela->r_info), obj, &defobj,
flags, cache, lockstate);
if (def == NULL)
goto done;
*where32 += (Elf32_Addr) (def->st_value + rela->r_addend);
}
break;
case R_X86_64_RELATIVE:
*where = (Elf_Addr)(obj->relocbase + rela->r_addend);
break;
/* missing: R_X86_64_GOTPCREL, R_X86_64_32, R_X86_64_32S, R_X86_64_16, R_X86_64_PC16, R_X86_64_8, R_X86_64_PC8 */
default:
_rtld_error("%s: Unsupported relocation type %u"
" in non-PLT relocations\n", obj->path,
(unsigned int)ELF_R_TYPE(rela->r_info));
goto done;
}
}
r = 0;
done:
if (cache != NULL)
free(cache);
free(cache);
return (r);
}

View File

@ -324,6 +324,10 @@ reloc_non_plt(Obj_Entry *obj, Obj_Entry *obj_rtld, int flags,
/* The relocation for the dynamic loader has already been done. */
if (obj == obj_rtld)
return (0);
if ((flags & SYMLOOK_IFUNC) != 0)
/* XXX not implemented */
return (0);
/*
* The dynamic loader may be called from a thread, we have
* limited amounts of stack available so we cannot use alloca().

View File

@ -126,168 +126,144 @@ reloc_non_plt(Obj_Entry *obj, Obj_Entry *obj_rtld, int flags,
const Elf_Rel *rellim;
const Elf_Rel *rel;
SymCache *cache;
int r = -1;
const Elf_Sym *def;
const Obj_Entry *defobj;
Elf_Addr *where, symval, add;
int r;
r = -1;
/*
* The dynamic loader may be called from a thread, we have
* limited amounts of stack available so we cannot use alloca().
*/
if (obj != obj_rtld) {
cache = calloc(obj->dynsymcount, sizeof(SymCache));
/* No need to check for NULL here */
cache = calloc(obj->dynsymcount, sizeof(SymCache));
/* No need to check for NULL here */
} else
cache = NULL;
cache = NULL;
rellim = (const Elf_Rel *) ((caddr_t) obj->rel + obj->relsize);
rellim = (const Elf_Rel *)((caddr_t) obj->rel + obj->relsize);
for (rel = obj->rel; rel < rellim; rel++) {
Elf_Addr *where = (Elf_Addr *) (obj->relocbase + rel->r_offset);
switch (ELF_R_TYPE(rel->r_info)) {
case R_386_NONE:
break;
case R_386_32:
{
const Elf_Sym *def;
const Obj_Entry *defobj;
def = find_symdef(ELF_R_SYM(rel->r_info), obj, &defobj,
flags, cache, lockstate);
if (def == NULL)
goto done;
*where += (Elf_Addr) (defobj->relocbase + def->st_value);
}
break;
case R_386_PC32:
/*
* I don't think the dynamic linker should ever see this
* type of relocation. But the binutils-2.6 tools sometimes
* generate it.
*/
{
const Elf_Sym *def;
const Obj_Entry *defobj;
def = find_symdef(ELF_R_SYM(rel->r_info), obj, &defobj,
flags, cache, lockstate);
if (def == NULL)
goto done;
*where +=
(Elf_Addr) (defobj->relocbase + def->st_value) -
(Elf_Addr) where;
}
break;
case R_386_COPY:
/*
* These are deferred until all other relocations have
* been done. All we do here is make sure that the COPY
* relocation is not in a shared library. They are allowed
* only in executable files.
*/
if (!obj->mainprog) {
_rtld_error("%s: Unexpected R_386_COPY relocation"
" in shared library", obj->path);
goto done;
}
break;
case R_386_GLOB_DAT:
{
const Elf_Sym *def;
const Obj_Entry *defobj;
def = find_symdef(ELF_R_SYM(rel->r_info), obj, &defobj,
flags, cache, lockstate);
if (def == NULL)
goto done;
*where = (Elf_Addr) (defobj->relocbase + def->st_value);
}
break;
case R_386_RELATIVE:
*where += (Elf_Addr) obj->relocbase;
break;
case R_386_TLS_TPOFF:
case R_386_TLS_TPOFF32:
{
const Elf_Sym *def;
const Obj_Entry *defobj;
Elf_Addr add;
def = find_symdef(ELF_R_SYM(rel->r_info), obj, &defobj,
flags, cache, lockstate);
if (def == NULL)
goto done;
/*
* We lazily allocate offsets for static TLS as we
* see the first relocation that references the
* TLS block. This allows us to support (small
* amounts of) static TLS in dynamically loaded
* modules. If we run out of space, we generate an
* error.
*/
if (!defobj->tls_done) {
if (!allocate_tls_offset((Obj_Entry*) defobj)) {
_rtld_error("%s: No space available for static "
"Thread Local Storage", obj->path);
goto done;
switch (ELF_R_TYPE(rel->r_info)) {
case R_386_32:
case R_386_PC32:
case R_386_GLOB_DAT:
case R_386_TLS_TPOFF:
case R_386_TLS_TPOFF32:
case R_386_TLS_DTPMOD32:
case R_386_TLS_DTPOFF32:
def = find_symdef(ELF_R_SYM(rel->r_info), obj, &defobj,
flags, cache, lockstate);
if (def == NULL)
goto done;
if (ELF_ST_TYPE(def->st_info) == STT_GNU_IFUNC) {
switch (ELF_R_TYPE(rel->r_info)) {
case R_386_32:
case R_386_PC32:
case R_386_GLOB_DAT:
if ((flags & SYMLOOK_IFUNC) == 0) {
obj->non_plt_gnu_ifunc = true;
continue;
}
symval = (Elf_Addr)rtld_resolve_ifunc(
defobj, def);
break;
case R_386_TLS_TPOFF:
case R_386_TLS_TPOFF32:
case R_386_TLS_DTPMOD32:
case R_386_TLS_DTPOFF32:
_rtld_error("%s: IFUNC for TLS reloc",
obj->path);
goto done;
}
} else {
if ((flags & SYMLOOK_IFUNC) != 0)
continue;
symval = (Elf_Addr)defobj->relocbase +
def->st_value;
}
}
add = (Elf_Addr) (def->st_value - defobj->tlsoffset);
if (ELF_R_TYPE(rel->r_info) == R_386_TLS_TPOFF)
*where += add;
else
*where -= add;
break;
default:
if ((flags & SYMLOOK_IFUNC) != 0)
continue;
break;
}
break;
where = (Elf_Addr *)(obj->relocbase + rel->r_offset);
case R_386_TLS_DTPMOD32:
{
const Elf_Sym *def;
const Obj_Entry *defobj;
def = find_symdef(ELF_R_SYM(rel->r_info), obj, &defobj,
flags, cache, lockstate);
if (def == NULL)
switch (ELF_R_TYPE(rel->r_info)) {
case R_386_NONE:
break;
case R_386_32:
*where += symval;
break;
case R_386_PC32:
/*
* I don't think the dynamic linker should ever
* see this type of relocation. But the
* binutils-2.6 tools sometimes generate it.
*/
*where += symval - (Elf_Addr)where;
break;
case R_386_COPY:
/*
* These are deferred until all other
* relocations have been done. All we do here
* is make sure that the COPY relocation is
* not in a shared library. They are allowed
* only in executable files.
*/
if (!obj->mainprog) {
_rtld_error("%s: Unexpected R_386_COPY "
"relocation in shared library", obj->path);
goto done;
}
break;
case R_386_GLOB_DAT:
*where = symval;
break;
case R_386_RELATIVE:
*where += (Elf_Addr)obj->relocbase;
break;
case R_386_TLS_TPOFF:
case R_386_TLS_TPOFF32:
/*
* We lazily allocate offsets for static TLS
* as we see the first relocation that
* references the TLS block. This allows us to
* support (small amounts of) static TLS in
* dynamically loaded modules. If we run out
* of space, we generate an error.
*/
if (!defobj->tls_done) {
if (!allocate_tls_offset((Obj_Entry*) defobj)) {
_rtld_error("%s: No space available "
"for static Thread Local Storage",
obj->path);
goto done;
}
}
add = (Elf_Addr)(def->st_value - defobj->tlsoffset);
if (ELF_R_TYPE(rel->r_info) == R_386_TLS_TPOFF)
*where += add;
else
*where -= add;
break;
case R_386_TLS_DTPMOD32:
*where += (Elf_Addr)defobj->tlsindex;
break;
case R_386_TLS_DTPOFF32:
*where += (Elf_Addr) def->st_value;
break;
default:
_rtld_error("%s: Unsupported relocation type %d"
" in non-PLT relocations\n", obj->path,
ELF_R_TYPE(rel->r_info));
goto done;
*where += (Elf_Addr) defobj->tlsindex;
}
break;
case R_386_TLS_DTPOFF32:
{
const Elf_Sym *def;
const Obj_Entry *defobj;
def = find_symdef(ELF_R_SYM(rel->r_info), obj, &defobj,
flags, cache, lockstate);
if (def == NULL)
goto done;
*where += (Elf_Addr) def->st_value;
}
break;
default:
_rtld_error("%s: Unsupported relocation type %d"
" in non-PLT relocations\n", obj->path,
ELF_R_TYPE(rel->r_info));
goto done;
}
}
r = 0;
done:
if (cache != NULL)
free(cache);
free(cache);
return (r);
}

View File

@ -275,6 +275,10 @@ reloc_non_plt(Obj_Entry *obj, Obj_Entry *obj_rtld, int flags,
if (obj == obj_rtld)
return (0);
if ((flags & SYMLOOK_IFUNC) != 0)
/* XXX not implemented */
return (0);
#ifdef SUPPORT_OLD_BROKEN_LD
broken = 0;
sym = obj->symtab;

View File

@ -294,6 +294,10 @@ reloc_non_plt(Obj_Entry *obj, Obj_Entry *obj_rtld, int flags,
SymCache *cache;
int r = -1;
if ((flags & SYMLOOK_IFUNC) != 0)
/* XXX not implemented */
return (0);
/*
* The dynamic loader may be called from a thread, we have
* limited amounts of stack available so we cannot use alloca().

View File

@ -290,6 +290,10 @@ reloc_non_plt(Obj_Entry *obj, Obj_Entry *obj_rtld, int flags,
int bytes = obj->dynsymcount * sizeof(SymCache);
int r = -1;
if ((flags & SYMLOOK_IFUNC) != 0)
/* XXX not implemented */
return (0);
/*
* The dynamic loader may be called from a thread, we have
* limited amounts of stack available so we cannot use alloca().

View File

@ -2546,7 +2546,7 @@ relocate_object(Obj_Entry *obj, bool bind_now, Obj_Entry *rtldobj,
}
}
/* Process the non-PLT relocations. */
/* Process the non-PLT non-IFUNC relocations. */
if (reloc_non_plt(obj, rtldobj, flags, lockstate))
return (-1);
@ -2559,7 +2559,6 @@ relocate_object(Obj_Entry *obj, bool bind_now, Obj_Entry *rtldobj,
}
}
/* Set the special PLT or GOT entries. */
init_pltgot(obj);
@ -2571,6 +2570,16 @@ relocate_object(Obj_Entry *obj, bool bind_now, Obj_Entry *rtldobj,
if (reloc_jmpslots(obj, flags, lockstate) == -1)
return (-1);
/*
* Process the non-PLT IFUNC relocations. The relocations are
* processed in two phases, because IFUNC resolvers may
* reference other symbols, which must be readily processed
* before resolvers are called.
*/
if (obj->non_plt_gnu_ifunc &&
reloc_non_plt(obj, rtldobj, flags | SYMLOOK_IFUNC, lockstate))
return (-1);
if (obj->relro_size > 0) {
if (mprotect(obj->relro_page, obj->relro_size,
PROT_READ) == -1) {
@ -2784,7 +2793,7 @@ search_library_pathfds(const char *name, const char *path, int *fdp)
size_t len;
int dirfd, fd;
dbg("%s('%s', '%s', fdp)\n", __func__, name, path);
dbg("%s('%s', '%s', fdp)", __func__, name, path);
/* Don't load from user-specified libdirs into setuid binaries. */
if (!trust)

View File

@ -271,6 +271,7 @@ typedef struct Struct_Obj_Entry {
bool filtees_loaded : 1; /* Filtees loaded */
bool irelative : 1; /* Object has R_MACHDEP_IRELATIVE relocs */
bool gnu_ifunc : 1; /* Object has references to STT_GNU_IFUNC */
bool non_plt_gnu_ifunc : 1; /* Object has non-plt IFUNC references */
bool crt_no_init : 1; /* Object' crt does not call _init/_fini */
bool valid_hash_sysv : 1; /* A valid System V hash hash tag is available */
bool valid_hash_gnu : 1; /* A valid GNU hash tag is available */
@ -293,6 +294,8 @@ typedef struct Struct_Obj_Entry {
#define SYMLOOK_DLSYM 0x02 /* Return newest versioned symbol. Used by
dlsym. */
#define SYMLOOK_EARLY 0x04 /* Symlook is done during initialization. */
#define SYMLOOK_IFUNC 0x08 /* Allow IFUNC processing in
reloc_non_plt(). */
/* Flags for load_object(). */
#define RTLD_LO_NOLOAD 0x01 /* dlopen() specified RTLD_NOLOAD. */

View File

@ -300,6 +300,10 @@ reloc_non_plt(Obj_Entry *obj, Obj_Entry *obj_rtld, int flags,
SymCache *cache;
int r = -1;
if ((flags & SYMLOOK_IFUNC) != 0)
/* XXX not implemented */
return (0);
/*
* The dynamic loader may be called from a thread, we have
* limited amounts of stack available so we cannot use alloca().

View File

@ -8,6 +8,7 @@ BINDIR= ${TESTSBASE}/libexec/rtld-elf
CFLAGS+= -I${.CURDIR}/../libpythagoras
LDFLAGS+= -L${.OBJDIR}/../libpythagoras
DPADD+= ${.OBJDIR}/../libpythagoras/libpythagoras.a
LDADD= -lpythagoras
MAN=

View File

@ -92,6 +92,14 @@ install_uboot() {
}
main() {
# Fix broken ports that use kern.osreldate.
OSVERSION=$(chroot ${CHROOTDIR} /usr/bin/uname -U)
export OSVERSION
REVISION=$(chroot ${CHROOTDIR} make -C /usr/src/release -V REVISION)
BRANCH=$(chroot ${CHROOTDIR} make -C /usr/src/release -V BRANCH)
UNAME_r=${REVISION}-${BRANCH}
export UNAME_r
# Build the 'xdev' target for crochet.
eval chroot ${CHROOTDIR} make -C /usr/src \
${XDEV_FLAGS} XDEV=${XDEV} XDEV_ARCH=${XDEV_ARCH} \

View File

@ -255,11 +255,16 @@ if [ -d ${CHROOTDIR}/usr/ports ]; then
## Trick the ports 'run-autotools-fixup' target to do the right thing.
_OSVERSION=$(sysctl -n kern.osreldate)
REVISION=$(chroot ${CHROOTDIR} make -C /usr/src/release -V REVISION)
BRANCH=$(chroot ${CHROOTDIR} make -C /usr/src/release -V BRANCH)
UNAME_r=${REVISION}-${BRANCH}
if [ -d ${CHROOTDIR}/usr/doc ] && [ -z "${NODOC}" ]; then
PBUILD_FLAGS="OSVERSION=${_OSVERSION} BATCH=yes"
PBUILD_FLAGS="${PBUILD_FLAGS}"
PBUILD_FLAGS="${PBUILD_FLAGS} UNAME_r=${UNAME_r}"
PBUILD_FLAGS="${PBUILD_FLAGS} OSREL=${REVISION}"
chroot ${CHROOTDIR} make -C /usr/ports/textproc/docproj \
${PBUILD_FLAGS} OPTIONS_UNSET="FOP IGOR" install clean distclean
${PBUILD_FLAGS} OPTIONS_UNSET="FOP IGOR" \
install clean distclean
fi
fi

Some files were not shown because too many files have changed in this diff Show More