Subject: Re: POSIX signal macros broken/shakey on 1.0 beta
To: Dale Rahn <drahn@pacific.urbana.mcd.mot.com>
From: J.T. Conklin <jconklin@netcom.com>
List: current-users
Date: 08/12/1994 10:23:30
> I agree with the removal of the functions.
> When in doubt, RTFM.

Please don't think we haven't.  Computer Literacy Bookshops thanks me for 
all the money I've spent on various standards documents.

The debate is over which of two POSIX compliant behaviors NetBSD should
adopt.  Specifically the "if the condition is detected" clause gives us
the option not to check for invalid signal errors.  If we don't check
the condition won't be detected, thus an error return is unnecessary.
I think this is the only set of routines where POSIX allows us to not 
check for errors.

The non-normative rationale gives the history of this decision:

	In earlier drafts of POSIX.1 there was no distinction between
	invalid and unsupported signals...  The {EINVAL} error was thus
	specified as a required error for invalid signals.  With that
	distinction, it is not necessary to require implementations of
	these functions to determine whether an optional signal is
	actually supported, as that could have a significant performance  
	impact for little value.  The error could have been required for
	invalid signals and optional for unsupported signals, but this
	seemed unnecessarily complex.  Thus, the error is optional in both
	cases.

In any case, the case for pedantry has lost.  I removed the sigaddset,
sigdelset, and sigismember macros last night. 

	--jtc

------------------------------------------------------------------------------