RFC: Change to sys_errlist
Wes Peters
wes at softweyr.com
Thu Jul 10 22:43:34 PDT 2003
On Thursday 10 July 2003 01:21 pm, Matthew Emmerton wrote:
> On Sun, 6 Jul 2003, Terry Lambert wrote:
> > Matthew Emmerton wrote:
> > > This is a RFC on a change to sys_errlist for errno = 0.
> > >
> > > On Linux, if perror() or strerror() is called with errno = 0, the
> > > resulting string is "Success".
> > > On FreeBSD, the resulting string is "Unknown error: 0".
> > >
> > > I think that FreeBSD's output is unintentionally confusing, as
> > > errno = 0 implies success.
> > >
> > > The following patch will change the output to the Linux behaviour.
> > >
> > > I appreciate any comments.
> >
> > Actually, I ran into a situation on MacOS X the other day that had
> > a system call with a -1 return code with an errno == 0.
> >
> > I would personally like to distinguish this case, if only for the
> > purpose of catching kernel errors. Saying "Success" when in fact
> > the system call is returning -1 is a bogus thing to do.
>
> Agreed. I thought this over and read some specs and believe our way is
> the right way.
In point of fact, errno == 0 does NOT mean "Success", it means "WTF?". 0
isn't a valid errno, so no meaning can be gleaned from errno == 0 any
more than it could be gleaned from errno == 0xb00bface or errno ==
6.023e23.
--
Where am I, and what am I doing in this handbasket?
Wes Peters wes at softweyr.com
More information about the freebsd-hackers
mailing list