Date: Thu, 8 Oct 2009 10:02:50 +1100 (EST) From: Bruce Evans <brde@optusnet.com.au> To: Sergey Kuritsin <kuritsin_s_v@mail.ru> Cc: freebsd-gnats-submit@FreeBSD.org, freebsd-i386@FreeBSD.org Subject: Re: i386/139403: absense of AUE_NULL Message-ID: <20091008100024.K754@delplex.bde.org> In-Reply-To: <200910071455.n97Et1dM094875@www.freebsd.org> References: <200910071455.n97Et1dM094875@www.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, 7 Oct 2009, Sergey Kuritsin wrote: >> Description: > There is no definition of AUE_NULL constant in sys/sysent.h (or in bsm/audit.h). When you include in source file sys/sysent.h header compiler says that thereis no definition of AUE_NULL. >> How-To-Repeat: > Use in your code macro SYSCALL_MODULE form sys/sysent.h > > >> Fix: > It can be fixed by adding #define AUE_NULL 0 in bsm/audit.h for example. Here is my old mail about this bug and related messes in headers. I'm trying to build an old module under FreeBSD-7. It failed to compile because SYSCALL_MODULE() uses AUE_NULL which is never defined despite massive namespace pollution (#include <bsm/audit.h>) in <sys/sysent.h>. AUE_NULL is defined in <bsm/audit_kevents.h> but the pollution doesn't extend that far. <sys/sysent.h> seems to use only au_event_t directly from bsm, and only AUE_NULL indirectly from bsm. The <bsm/audit_kevents.h> pollution is machine-generated into <sys/sysproto.h> together with lots of other pollution. Most of the original pollution in <sys/sysproto.h> is unnecessary now that there is a non-polluting header for sigset_t, but there is now about 10 times as much as when I started cleaning it up. I still remove it all in my version using the following hack: <hack deleted> The FreeBSD-7 sysproto.h seems to use only AUE_NULL from <bsm/audit_kevents.h>. That is a lot of pollution for a fancy spelling of 0. Bruce
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20091008100024.K754>