On 16 Mar 2021, at 6:13, Emmanuel Vadot wrote:
Hi manu,
Cc: rwatson
The branch main has been updated by manu:
URL:
https://cgit.FreeBSD.org/src/commit/?id=8c3eaf244a417a4ee105834410a52144206102e5
commit 8c3eaf244a417a4ee105834410a52144206102e5
Author: Emmanuel Vadot <m...@freebsd.org>
AuthorDate: 2021-03-16 06:12:46 +0000
Commit: Emmanuel Vadot <m...@freebsd.org>
CommitDate: 2021-03-16 06:12:46 +0000
pkgbase: Install all BSM includes with INCS
Now they are correctly taggued and put them into the libbsm
package
Reviewed by: bapt
Differential Revision: https://reviews.freebsd.org/D29165
MFC after: 2 weeks
---
include/Makefile | 27 +++++++++++++++++++++++++--
1 file changed, 25 insertions(+), 2 deletions(-)
diff --git a/include/Makefile b/include/Makefile
index 8ddfd7015918..cf760359d2f5 100644
--- a/include/Makefile
+++ b/include/Makefile
..
@@ -175,6 +193,11 @@ INCSGROUPS= INCS \
VERIEXEC \
WG
+.if ${MK_AUDIT} != "no"
+INCSGROUPS+= BSM
+INCSGROUPS+= SECAUDIT
+.endif
+
.if ${MK_IPFILTER} != "no"
INCSGROUPS+= IPFILTER
.endif
This breaks builds for WITHOUT_AUDIT= I believe. Files in libc
(gen/fstab.c) include sys/mount.h which includes sys/ucred.h which
unconditionally includes bsm/audit.h (and has been for a decade or more,
and so does sys/sysent.h) which now is not found anymore if audit is
turned off.
I believe sys/ucred.h can be fixed:
iff --git a/sys/sys/ucred.h b/sys/sys/ucred.h
index 6a9becb54c7..b23374f48c9 100644
--- a/sys/sys/ucred.h
+++ b/sys/sys/ucred.h
@@ -38,8 +38,8 @@
#if defined(_KERNEL) || defined(_WANT_UCRED)
#include <sys/_lock.h>
#include <sys/_mutex.h>
-#endif
#include <bsm/audit.h>
+#endif
struct loginclass;
Sadly this won’t fix lib/libkvm/kvm_proc.c and
lib/libprocstat/libprocstat.c which define _WANT_UCRED and at least
kvm_proc.c and probably kdump and rpcgen consumers rely on sysent and
whatever else I missed with a quick look again which are not as easily
fixed.
How do we check in kernel header files for user space build options to
be set correctly? That would actually not fix the problem for sysent.h
as we’d have a missing type. And for ucred with the places actually
asking for it as well. Given we cannot change the size of these structs
I believe we have to unconditionally install at least audit.h (for now)?
/bz
_______________________________________________
dev-commits-src-main@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/dev-commits-src-main
To unsubscribe, send any mail to "dev-commits-src-main-unsubscr...@freebsd.org"