Subject: Re: pkg/20978: mail/deliver is not compatible with recent NetBSD libc
To: None <jbernard@mines.edu>
From: Todd Vierling <tv@pobox.com>
List: current-users
Date: 04/07/2003 10:54:57
[Re-sent with proper Cc:.]
On Tue, 1 Apr 2003 jbernard@mines.edu wrote:
: The problem is that it uses the basename function to construct file
: names [in lock.c (dotlock_name) and subs.c (unique)], and its usage
: of basename assumes that the function returns a pointer that
: references a location within the source string (which deliver then
: uses to modify the string). However NetBSD's libc/gen/basename.c
: was changed on Oct. 17, 2002 (rev. 1.5 of basename.c) to always
: return a pointer to static storage containing the base name, so
: deliver fails to construct usable file names.
This is a severe problem. I've seen other code which depends on basename
returning an in-situ pointer, and the change to libc (without versioning the
call because of the ABI change) is alarming.
NetBSDheads: Is there really a reason not to return a pointer into the
existing string?
--
-- Todd Vierling <tv@pobox.com>