Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 13 Sep 2019 21:59:51 +1000 (EST)
From:      Bruce Evans <brde@optusnet.com.au>
To:        Cy Schubert <Cy.Schubert@cschubert.com>
Cc:        Ed Maste <emaste@FreeBSD.org>, src-committers@freebsd.org,  svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   Re: svn commit: r351659 - in head: contrib/libc++/include  contrib/netbsd-tests/lib/libc/ssp gnu/lib/libssp include lib/libc/stdio
Message-ID:  <20190913214846.P1215@besplex.bde.org>
In-Reply-To: <201909011932.x81JWYts004074@slippy.cwsent.com>
References:  <201909011612.x81GC5DW097846@repo.freebsd.org> <201909011932.x81JWYts004074@slippy.cwsent.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, 1 Sep 2019, Cy Schubert wrote:

I'm replying to this reply since I lost the original mail.

> In message <201909011612.x81GC5DW097846@repo.freebsd.org>, Ed Maste writes:
>> Author: emaste
>> Date: Sun Sep  1 16:12:05 2019
>> New Revision: 351659
>> URL: https://svnweb.freebsd.org/changeset/base/351659
>>
>> Log:
>>   libc: remove gets
>>
>>   gets is unsafe and shouldn't be used (for many years now).  Leave it in
>>   the existing symbol version so anything that previously linked aginst it
>>   still runs, but do not allow new software to link against it.
>>
>>   (The compatability/legacy implementation must not be static so that
>>   the symbol and in particular the compat sym gets@FBSD_1.0 make it
>>   into libc.)
>>
>>   PR:		222796 (exp-run)
>>   Reported by:	Paul Vixie
>>   Reviewed by:	allanjude, cy, eadler, gnn, jhb, kib, ngie (some earlie
>> r)
>>   Relnotes:	Yes
>>   Sponsored by:	The FreeBSD Foundation
>>   Differential Revision:	https://reviews.freebsd.org/D12298

This breaks <stdio.h> for most old standards, and bogotitifies the ifdefs
that attempt to support old standards.  <stdio.h> used to be more careful
with these ifdefs than most system headers.

C11 removed gets(), but POSIX.1-2017 (Issue 7) still has it (marked as
obsolescent).  Thus this change breaks support for all versions of POSIX.

Bruce



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