Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 29 Sep 1999 04:37:01 +1000 (EST)
From:      Bruce Evans <bde@zeta.org.au>
To:        Garrett Wollman <wollman@khavrinen.lcs.mit.edu>
Cc:        Peter Wemm <peter@netplex.com.au>, 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:  <Pine.BSF.4.10.9909290422330.7688-100000@alphplex.bde.org>
In-Reply-To: <199909281607.MAA14467@khavrinen.lcs.mit.edu>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, 28 Sep 1999, 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

Unfortunately, it seems to only require that "Nonstandard extensions ...
should be identified as such in the system documentation" and for the
system to provide an environment where plain POSIX applies (POSIX.1-
1996 section 1.3.1.1 (2)).

> struct sigaction must be ignored unless an implementation-specific
> flag is set by the application.  (Hence, when POSIX.1b added

I can't find anywhere where POSIX.1-1996 requires such a flag.  I
didn't check the rationale.

The nonstandard extensions may require the nonstandard fields to be
filled with nonzero values.  Using bzero() just guarantees breakage
on such systems.

Bruce



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?Pine.BSF.4.10.9909290422330.7688-100000>