When building on some old system with old kernel headers, the
gen_tables.c program (built natively) doesn't build due to missing
EHWPOISON. This commit defines EHWPOISON to the value found in
asm-generic kernel headers, which is correct for most (but not all
architectures).
Anyway, the whole concept of building a program on the host to generate
a table with errno values, then built into a target program is
inherently broken, so our fix is not more broken than the rest of the
mechanism used by audit.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni(a)free-electrons.com>
---
lib/gen_tables.c | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/lib/gen_tables.c b/lib/gen_tables.c
index 98f576c..d0bb7f5 100644
--- a/lib/gen_tables.c
+++ b/lib/gen_tables.c
@@ -55,6 +55,15 @@
#define SHMGET 23
#define SHMCTL 24
+/*
+ * Values from asm-generic, might be different on other architectures,
+ * but anyway the concept of building a program on the host to
+ * generate errno related tables used on another architecture is
+ * broken.
+ */
+#ifndef EHWPOISON
+#define EHWPOISON 133
+#endif
/* The ratio of table size to number of non-empty elements allowed for a
"direct" s2i table; if the ratio would be bigger, bsearch tables are used
--
2.7.4