From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.org/gmane.linux.lib.musl.general/137 Path: news.gmane.org!not-for-mail From: Solar Designer Newsgroups: gmane.linux.lib.musl.general Subject: Re: cluts review Date: Wed, 13 Jul 2011 18:12:49 +0400 Message-ID: <20110713141249.GA23314@openwall.com> References: <20110713110723.GA22153@openwall.com> <20110713133838.GA16618@brightrain.aerifal.cx> Reply-To: musl@lists.openwall.com NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: dough.gmane.org 1310566380 8005 80.91.229.12 (13 Jul 2011 14:13:00 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Wed, 13 Jul 2011 14:13:00 +0000 (UTC) To: musl@lists.openwall.com Original-X-From: musl-return-221-gllmg-musl=m.gmane.org@lists.openwall.com Wed Jul 13 16:12:54 2011 Return-path: Envelope-to: gllmg-musl@lo.gmane.org Original-Received: from mother.openwall.net ([195.42.179.200]) by lo.gmane.org with smtp (Exim 4.69) (envelope-from ) id 1Qh0BI-0003qt-Hb for gllmg-musl@lo.gmane.org; Wed, 13 Jul 2011 16:12:52 +0200 Original-Received: (qmail 17858 invoked by uid 550); 13 Jul 2011 14:12:52 -0000 Mailing-List: contact musl-help@lists.openwall.com; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: Original-Received: (qmail 17850 invoked from network); 13 Jul 2011 14:12:52 -0000 Content-Disposition: inline In-Reply-To: <20110713133838.GA16618@brightrain.aerifal.cx> User-Agent: Mutt/1.4.2.3i Xref: news.gmane.org gmane.linux.lib.musl.general:137 Archived-At: Rich, Thank you for your comments. Would you please start similarly reviewing and commenting on Luka's code in here without me having to do it? ;-) On Wed, Jul 13, 2011 at 09:38:38AM -0400, Rich Felker wrote: > On Wed, Jul 13, 2011 at 03:07:23PM +0400, Solar Designer wrote: > > The uses of SA_NODEFER appeared to be a bug anyway, so I am simply > > removing them. > > It's not a bug. I meant that I saw no valid reason in the surrounding code to set that flag. But you appear to mention that there was a reason in one of the instances. Maybe there was. > > +#define _BSD_SOURCE /* for scandir() and alphasort() */ > > These are POSIX 2008 functions. _BSD_SOURCE should not be needed for > anything. Is it acceptable to require POSIX 2008? Don't we want cluts to build and run on significantly older systems, which wouldn't know to define these functions on -D_POSIX_C_SOURCE=200809L? > > +#include /* for PATH_MAX */ > > This is a classic error I fought with all the time early in musl's > life cycle - it's absolutely the wrong fix. sys/param.h is completely > nonstandard. PATH_MAX comes from limits.h, as long as you have the > proper feature test macros defined, but it might not be defined, in > which case you have to use sysconf/pathconf. That could still come > back as "no limit" though, in which case security for functions which > need a PATH_MAX-sized buffer is broken... What specific feature test macros would you recommend for getting PATH_MAX defined? > > +#define _XOPEN_SOURCE /* for sigaction() */ > > Needs a value, not a blank definition. Current version is 700. My understanding is that blank means requesting an older version of the spec, but I admit I am not sure which one - and as I pointed out in another posting a while ago, it does appear to differ across systems. So, your proposal is to always request the latest spec version. Wouldn't it possibly be better to request the oldest sufficient for us? > > - act.sa_flags = SA_NODEFER; > > + act.sa_flags = 0; > > This was being used as part of the longjmp trick. Why, how? Did we seriously want to keep the signal blocked? > By the way, there are a lot of warnings about local vars potentially > clobbered by longjmp. Those are worth checking out. Right. Thanks, Alexander