Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 28 Sep 2025 13:17:29 +0200
From:      =?utf-8?Q?Dag-Erling_Sm=C3=B8rgrav?= <des@FreeBSD.org>
To:        Konstantin Belousov <kostikbel@gmail.com>
Cc:        src-committers@freebsd.org,  dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org
Subject:   Re: git: d58339f39874 - main - tzcode: Drop libc namespace
Message-ID:  <86frc6bzcm.fsf@ltc.des.dev>
In-Reply-To: <aNhIKDCDJKWZbTqt@kib.kiev.ua> (Konstantin Belousov's message of "Sat, 27 Sep 2025 23:25:12 %2B0300")
References:  <202509271707.58RH7ajb090983@gitrepo.freebsd.org> <aNhIKDCDJKWZbTqt@kib.kiev.ua>

next in thread | previous in thread | raw e-mail | index | archive | help
Konstantin Belousov <kostikbel@gmail.com> writes:
> It does change the behavior.  Now a user-provided open/fstat/pthread_*
> functions can interpose the system functions, making tz code doing someth=
ing
> that was not intended.
>
> In other words, namespacing guaranteed that tzcode was not affected by
> the app playing with libc namespace.

That is a side effect of namespace.h but not its original purpose, which
was to allow libc to call pthread functions, which would be stubbed out
when libc_r was not loaded.  This is no longer needed, and namespace.h
has bitrotted and is missing a bunch of syscalls and functions
(including nearly every *at() system call, with the sole exception of
openat()).  If we really want to do what you suggest, there are better
ways (like what macOS does).

DES
--=20
Dag-Erling Sm=C3=B8rgrav - des@FreeBSD.org



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?86frc6bzcm.fsf>