Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 29 Sep 1999 00:44:27 +0800
From:      Peter Wemm <peter@netplex.com.au>
To:        Garrett Wollman <wollman@khavrinen.lcs.mit.edu>
Cc:        Marcel Moolenaar <marcel@FreeBSD.org>, cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org
Subject:   Re: cvs commit: src/lib/libc/gen getcwd.c 
Message-ID:  <19990928164427.828B71CBF@overcee.netplex.com.au>
In-Reply-To: Your message of "Tue, 28 Sep 1999 12:07:17 -0400." <199909281607.MAA14467@khavrinen.lcs.mit.edu> 

next in thread | previous in thread | raw e-mail | index | archive | help
Garrett Wollman wrote:
> <<On Tue, 28 Sep 1999 22:44:03 +0800, Peter Wemm <peter@netplex.com.au> said:
> 
> > Hmm.. my experience on other systems suggests sigactions should be
> > pre-bzeroed (or memset) for portability reasons.  This is required on some
> > OS's as there are hidden fields in there, and doesn't require modifying the
> > whole tree when a new field is added or changed to struct sigaction.
> 
> Those other systems are broken.  POSIX requires that only those fields
> defined by the standard need be initialized.  Any other fields in
> struct sigaction must be ignored unless an implementation-specific
> flag is set by the application.  (Hence, when POSIX.1b added
> sa_sigaction as an alternative to sa_handler, it was necessary to also
> add the SA_SIGINFO flag.)

I see.  That make sense to me, but I don't have a posix spec.  It's been a
long time (1992 or so) since I regularly did this and it was enough trouble
to track down places where people did sa.sa_mask = 0 and that failed if
sa_mask was a struct.  Fortunately this mostly got hunted down and fixed or
we'd be doing it all over again.  I withdraw my objections which were based
on paranoia and bitter (and outdated) experience.

Cheers,
-Peter



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message




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