Return to BSD News archive
Newsgroups: comp.os.386bsd.bugs Path: sserve!newshost.anu.edu.au!munnari.oz.au!news.Hawaii.Edu!ames!haven.umd.edu!uunet!news.claremont.edu!ucivax!ucla-cs!twinsun!eggert From: eggert@twinsun.com (Paul Eggert) Subject: Re: cvs 1.3 bugfix Message-ID: <blzf!oQi@twinsun.com> Sender: usenet@twinsun.com Nntp-Posting-Host: farside Organization: Twin Sun Inc, El Segundo, CA, USA X-Newsreader: NN version 6.4.19 References: <blv0K2^8@twinsun.com> <RICH.93Mar6233047@omicron.Rice.edu> <blwf{4xU@twinsun.com> <1993Mar9.220333.11842@fcom.cc.utah.edu> Date: Thu, 11 Mar 1993 07:05:02 GMT Lines: 31 terry@cs.weber.edu (Terry Lambert) writes: eggert@twinsun.com (Paul Eggert) writes: In some places, Posix requires that errors *must* be detected. For example, 5.1.2.4 says that opendir() must detect and report EACCES-style errors. (By ``report'' I mean ``yield -1 and set errno''.) But in other places, Posix merely says that *if* an error is detected, *then* it must be reported. This is the case for sigismember and EINVAL-style errors. This is bogus; this reading implies that: 3.3.3.3 Returns Upon successful completion, the sigismember() function returns a value of one if the specified signal is a member of a specified set, or a value of zero if it is not. Upon successful completion, the other functions return a value of zero. For all of the above functions, if an error is detected, a value of -1 is returned, and _errno_ is set to indicate the error. Can fail to successfully complete (thus not returning 0), but have the error which caused it to fail to complete reamin undetected (thus not returning -1). That scenario is impossible. It's prohibited by the following crucial sentence in section 2.4: ``If no error condition is detected, the action requested shall be successful.''