Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 6 May 2003 21:08:14 +0300
From:      Valentin Nechayev <netch@lucky.net>
To:        "Jacques A. Vidrine" <nectar@freebsd.org>
Cc:        arch@freebsd.org
Subject:   Re: Re: `Hiding' libc symbols
Message-ID:  <20030506180814.GK83663@lucky.net>
In-Reply-To: <20030506153641.GI77708@madman.celabo.org>
References:  <20030501182820.GA53641@madman.celabo.org> <XFMail.20030501144502.jhb@FreeBSD.org> <20030505110601.H53365@beagle.fokus.fraunhofer.de> <20030505175426.GA19352@madman.celabo.org> <20030506093754.B838@beagle.fokus.fraunhofer.de> <20030506092519.GA3158@cirb503493.alcatel.com.au> <20030506112711.K838@beagle.fokus.fraunhofer.de> <20030506153641.GI77708@madman.celabo.org>

next in thread | previous in thread | raw e-mail | index | archive | help
 Tue, May 06, 2003 at 10:36:41, nectar wrote about "Re: Re: `Hiding' libc symbols": 

> Renaming the internal implementation of `foo' to `_foo', and creating
> a weak symbol alias with the original name (`foo').  Within libc,
> use the `_foo' name when the semantics must be known (e.g. when the
> behavior must not be overridden by an application accidently, i.e.
> almost always).  Macros in `namespace.h' help the compiler with
> prototypes etc.

OK. How will you distinguish accidental replacing of libc symbols
from intentional replacing? It is not reasonable (just IMHO) to divide
libc symbols into `allowed to override' and 'disallowed to override'
groups.
Well, one can say: if, e.g., application exposes Posix accordance,
it should not see strlcpy() (let's continue to use it as example) from libc.
So, define _strlcpy if not _POSIX_SOURCE of analog. Well, consider next Posix
will include it. Define non-hidden version and break compatibility of old
applications?
If I don't understand something, please explain.
But I think now is standards@ issue.


-netch-



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