svn commit: r184509 - head/share/man/man9

Bruce Evans brde at optusnet.com.au
Sat Nov 1 04:05:45 PDT 2008


On Fri, 31 Oct 2008, Robert Watson wrote:

> Log:
>  In style(9) examples of err() and errx(), use sysexits(3) errors rather
>  than returning 1.

style(9) was correct.  Using sysexits(3) is a style bug in most cases,
especially in err() and errx() messages where there is a text message
and not just a cryptic error code.  (Originally, in 4.4BSD, sysexits.3
doesn't exist and /usr/src/admin/style/style had no mention of sysexits.h.
What /usr/src/admin/style/style had was a rule to not label every error
exit with a unique error code, since this gives a large undocumented
set of program-specific error codes which no one remembers.  Using
sysexits gives the same results in practice -- it gives a large
documented set of generic error codes which no one remembers, so it
was a bug to change the rule from disallowing lots of error codes to
encouraging use of sysexits.  In 4.4BSD-Lite2, sysexits.3 still doesn't
exist, and sysexits.h is only referred to in 11 .c files.  This shows
that use of sysexits is very unusual in BSD code.  Some FreeBSD users
like it and added it to style.9 and some FreeBSD .c files, so it is
just unusual in FreeBSD code.)

Bruce


More information about the svn-src-head mailing list