| Message ID | 20251214140217.3532463-2-adolf.belka@ipfire.org |
|---|---|
| State | Staged |
| Commit | c7595917721fc71ee9fe00e7be43224c48c60aa1 |
| Headers |
Return-Path: <development+bounces-1421-patchwork=ipfire.org@lists.ipfire.org> Received: from mail01.ipfire.org (mail01.haj.ipfire.org [172.28.1.202]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mail01.haj.ipfire.org", Issuer "R12" (verified OK)) by web04.haj.ipfire.org (Postfix) with ESMTPS id 4dVJy373nxz3wb0 for <patchwork@web04.haj.ipfire.org>; Mon, 15 Dec 2025 12:18:51 +0000 (UTC) Received: from mail02.haj.ipfire.org (mail02.haj.ipfire.org [172.28.1.201]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519) (Client CN "mail02.haj.ipfire.org", Issuer "E8" (verified OK)) by mail01.ipfire.org (Postfix) with ESMTPS id 4dTlJ05Fvpz4l0 for <patchwork@ipfire.org>; Sun, 14 Dec 2025 14:02:24 +0000 (UTC) Received: from mail02.haj.ipfire.org (localhost [IPv6:::1]) by mail02.haj.ipfire.org (Postfix) with ESMTP id 4dTlJ04Q4Mz331t for <patchwork@ipfire.org>; Sun, 14 Dec 2025 14:02:24 +0000 (UTC) X-Original-To: development@lists.ipfire.org Received: from mail01.ipfire.org (mail01.haj.ipfire.org [172.28.1.202]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519) (Client CN "mail01.haj.ipfire.org", Issuer "R12" (verified OK)) by mail02.haj.ipfire.org (Postfix) with ESMTPS id 4dTlHx558cz331c for <development@lists.ipfire.org>; Sun, 14 Dec 2025 14:02:21 +0000 (UTC) Received: from [127.0.0.1] (localhost [127.0.0.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by mail01.ipfire.org (Postfix) with ESMTPSA id 4dTlHx0sKjz3R5; Sun, 14 Dec 2025 14:02:21 +0000 (UTC) DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=ipfire.org; s=202003ed25519; t=1765720941; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=zL3HBqFEVZaBH/KWBMs+74tW6O5w2CDxOZfSnnLdej4=; b=HrHfDyRc7uMuv+rwD+BRFT8YLx3DI+cat0nSiesA8He4jE/uYmXPEClNAV7Yrh9yc5Uxqh DzcoNy30UxHDcEDQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ipfire.org; s=202003rsa; t=1765720941; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=zL3HBqFEVZaBH/KWBMs+74tW6O5w2CDxOZfSnnLdej4=; b=ABJTMZOP5cYyjHNX7oXS52xiz2Sp4Dzi+EfQCMaQFaCneBlwm9s1W2f3DOdsNtKlhDQWHq KJseWqRWKWZJJwUy4MyfCnFAibekXpIEFJWYlhkFk+a91sV3AtkphsX3+54WwxPSHqTun1 7VT9iFGWdK/COOpfs3+XycD+PS1SqwvYBlokmM7mX147VFLUANuGd84UE4VZZa/aEZONhR vyeL74zFE3NUSHxmkSu/RmebH68obNTnAlMsglvN+zlMmFGh1Gsqf1unCe1KFsL+Rc1AuX qo1HLAaT8Kh294xq1ZHpLeH9ItS6MKknm4i3lt8QzXaMpTXFLS2aN0L3IWLIBw== From: Adolf Belka <adolf.belka@ipfire.org> To: development@lists.ipfire.org Cc: Adolf Belka <adolf.belka@ipfire.org> Subject: [PATCH] tzdata: Update to version 2025c Date: Sun, 14 Dec 2025 15:02:17 +0100 Message-ID: <20251214140217.3532463-2-adolf.belka@ipfire.org> In-Reply-To: <20251214140217.3532463-1-adolf.belka@ipfire.org> References: <20251214140217.3532463-1-adolf.belka@ipfire.org> Precedence: list List-Id: <development.lists.ipfire.org> List-Subscribe: <https://lists.ipfire.org/>, <mailto:development+subscribe@lists.ipfire.org?subject=subscribe> List-Unsubscribe: <https://lists.ipfire.org/>, <mailto:development+unsubscribe@lists.ipfire.org?subject=unsubscribe> List-Post: <mailto:development@lists.ipfire.org> List-Help: <mailto:development+help@lists.ipfire.org?subject=help> Sender: <development@lists.ipfire.org> Mail-Followup-To: <development@lists.ipfire.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit |
| Series |
tzdata: Update to version 2025c
|
|
Commit Message
Adolf Belka
14 Dec 2025, 2:02 p.m. UTC
- Update from version 2025b to 2025c
- No change in rootfile
- Changelog
2025c
Changes to past timestamps
Baja California agreed with California’s DST rules in 1953 and in
1961 through 1975, instead of observing standard time all year.
(Thanks to Alois Treindl.)
Changes to build procedure
Files in distributed tarballs now have correct commit times.
Formerly, the committer’s time zone was incorrectly ignored.
Distribution products (*.asc, *.gz, and *.lz) now have
reproducible timestamps. Formerly, only the contents of the
compressed tarballs had reproducible timestamps.
By default, distributed formatted man pages (*.txt) now use UTF-8
and are left-adjusted more consistently. A new Makefile macro
MANFLAGS can override these defaults. (Thanks to G. Branden
Robinson for inspiring these changes.)
Changes to code
An unset TZ is no longer invalid when /etc/localtime is missing,
and is abbreviated "UTC" not "-00". This reverts to 2024b behavior.
(Problem and patch reported by Dag-Erling Smørgrav.)
New function offtime_r, short for fixed-offset localtime_rz.
It is defined if STD_INSPIRED is defined.
(Patch from Dag-Erling Smørgrav.)
tzset etc. are now more cautious about questionable TZ settings.
Privileged programs now reject TZ settings that start with '/',
unless they are TZDEFAULT (default "/etc/localtime") or
start with TZDIR then '/' (default "/usr/share/zoneinfo/").
Unprivileged programs now require files to be regular files
and reject relative names containing ".." directory components;
formerly, only privileged programs did those two things.
These changes were inspired by similar behavior in FreeBSD.
On NetBSD, unprivileged programs now use O_REGULAR to check
whether a TZ setting starting with '/' names a regular file,
avoiding a minor security race still present elsewhere.
TZ strings taken from tzalloc arguments are now treated with
no less caution than TZ strings taken from the environment, as
the old undocumented behavior would have been hard to explain.
tzset etc. no longer use the ‘access’ system call to check access;
instead they now use the system calls issetugid, getauxval,
getresuid/getresgid, and geteuid/getegid/getuid/getgid (whichever
first works) to test whether a program is privileged.
Compile with -DHAVE_SYS_AUXV_H=[01] to enable or disable
<sys/auxv.h> which (if it defines AT_SECURE) enables getauxval,
and compile with -DHAVE_ISSETUGID=[01], -DHAVE_GETRESUID=[01], and
-DHAVE_GETEUID=[01] to enable or disable the other calls’ use.
The new CFLAGS option -DTZ_CHANGE_INTERVAL=N makes tzset etc.
check for TZif file changes if the in-memory data are N seconds
old or more, and are derived from the TZ environment variable.
This is intended for platforms that want tzset etc. to reflect
changes to whatever file TZ selects (including changes to
/etc/localtime if TZ is unset). If N is negative (the default)
these checks are omitted; this is the traditional behavior.
The new CFLAGS options -DHAVE_STRUCT_STAT_ST_CTIM=0 and
-DHAVE_STRUCT_TIMESPEC=0 port to non-POSIX.1-2008 platforms
that lack st_ctim and struct timespec, respectively.
tzset etc. now treat ' ' like '_' in time zone abbreviations,
just as they treat other invalid bytes. This continues the
transition begun in release 96k, which removed spaces in tzdata
because the spaces break time string parsers.
The new CFLAGS option -DTHREAD_PREFER_SINGLE causes tzcode
in single-threaded processes to avoid locks, as FreeBSD does.
This can save time in single-threaded apps. The threadedness
testing costs CPU time and energy in multi-threaded apps.
New options -DHAVE___ISTHREADED and -DHAVE_SYS_SINGLE_THREADED_H
can help configure how to test for single-threadedness.
The new CFLAGS option -DTHREAD_RWLOCK uses read-write locks, as
macOS does, instead of mutexes. This saves real time when TZ is
rarely changing and many threads call tzcode simultaneously.
It costs more CPU time and energy.
The new CFLAGS option -TTHREAD_TM_MULTI causes localtime to return
a pointer to thread-specific memory, as FreeBSD does, instead of
to the same memory in all threads. This supports unportable
programs that incorrectly use localtime instead of localtime_r.
This option affects gmtime and offtime similarly to localtime.
Because the corresponding storage is freed on thread exit, this
option is incompatible with POSIX.1-2024 and earlier. It also
costs CPU time and memory.
tzfree now preserves errno, consistently with POSIX.1-2024 ‘free’.
tzcode now uses mempcpy if available, guessing its availability.
Compile with -DHAVE_MEMPCPY=1 or 0 to override the guess.
tzcode now uses strnlen to improve asymptotic performance a bit.
Compile with -DHAVE_STRNLEN=0 if your platform lacks it.
tzcode now hand-declares unistd.h-provided symbols like getopt
if HAVE_UNISTD_H=0, not if HAVE_POSIX_DECLS=0.
tzset etc. now have an experimental OPENAT_TZDIR option;
see Makefile and localtime.c for details.
On platforms like GNU/Hurd that do not define PATH_MAX,
exceedingly long TZ strings no longer fail merely because they
exceed an arbitrary file name length limit imposed by tzcode.
zic has new options inspired by FreeBSD. ‘-D’ skips creation of
output ancestor directories, ‘-m MODE’ sets output files’ mode,
and ‘-u OWNER[:GROUP]’ sets output files’ owner and group.
zic now uses the fdopen function, which was standardized by
POSIX.1-1988 and is now safe to use in portable code.
This replaces its use of the older umask function, which
complicated maintenance.
Changes to commentary
The leapseconds file contains commentary about the IERS and NIST
last-modified and expiration timestamps for leap second data.
(Thanks to Judah Levine.)
Commentary now also uses characters from the set –‘’“”•≤ as this
can be useful and should work with current applications. This
also affects data in iso3166.tab and zone1970.tab, which now
contain strings like “Côte d’Ivoire” instead of “Côte d'Ivoire”.
Signed-off-by: Adolf Belka <adolf.belka@ipfire.org>
---
lfs/tzdata | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/lfs/tzdata b/lfs/tzdata index ec3a9a048..ca813384f 100644 --- a/lfs/tzdata +++ b/lfs/tzdata @@ -24,7 +24,8 @@ include Config -VER = 2025b +VER = 2025c + TZDATA_VER = $(VER) TZCODE_VER = $(VER) @@ -45,8 +46,8 @@ objects = tzdata$(TZDATA_VER).tar.gz tzcode$(TZCODE_VER).tar.gz tzdata$(TZDATA_VER).tar.gz = $(DL_FROM)/tzdata$(TZDATA_VER).tar.gz tzcode$(TZCODE_VER).tar.gz = $(DL_FROM)/tzcode$(TZCODE_VER).tar.gz -tzdata$(TZDATA_VER).tar.gz_BLAKE2 = 07421e756cd33f003f1173c320a2e454f767a2ba299b76b54e34dc5cf1c126b00ab3186bc61d4989201a83cb8b3e4c005c0bc080fb39a1e48ff9555d50c84f1d -tzcode$(TZCODE_VER).tar.gz_BLAKE2 = 1c9fa834ccdf0a73dd4ca5956e913506b01dc10cd0e278dc2ee0099b08fa726af56cc2d7276e41ab1d3d57faacab97a0b0eab7e1623ef2de46dd576aaded0001 +tzdata$(TZDATA_VER).tar.gz_BLAKE2 = f7d8fa0286f72e90058693dcdc39b8e9ddca198b157807b8d7d33969c07a2ee5a0391c6ebe8f3d86990de765216f563cf7ca75d8ea6f5c3b2950a16b973827de +tzcode$(TZCODE_VER).tar.gz_BLAKE2 = b649847fcc59db2e43bc3f942e9ee4abb5968ac45114f6dcf362ec0ec23bd60117f976b539412cf062d8ba097a9d9a85f642ba46c5fbd96e2fb1a5e7b6f2ed53 install : $(TARGET)