RFC: Change to sys_errlist
John-Mark Gurney
gurney_j at efn.org
Fri Jul 4 11:50:21 PDT 2003
Matthew Emmerton wrote this message on Fri, Jul 04, 2003 at 14:03 -0400:
> 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.
This is not good. This will just encourge more programers to not properly
test return values. Read man 2 errno says: "Successful calls never set
errno;", so this depends upon the programmer initalizing errno to 0
before they make their call. If they are already so poor as to be
calling perror, etc with errno 0, then I doubt that we can depend upon
them initalizing errno to 0 and giving consistant results.
--
John-Mark Gurney Voice: +1 415 225 5579
"All that I will do, has been done, All that I have, has not."
More information about the freebsd-hackers
mailing list