basic/missing_*.h: add asserts that the values are as expected

It's great that we provide fallback values, but if we got one of those wrong,
it could be a long time before anyone noticed. So let's add asserts that the
our internal defines actually match the official ones, when the latter are
available.

I did not add '#include "macro.h"' to missing_{audit,capability}, because
those are processed by an awk script that would need additional include
directories and could be confused by the additional lines. We don't include
those headers standalone anyway, so this is not necessary anyway.
This commit is contained in:
Zbigniew Jędrzejewski-Szmek
2024-03-20 12:26:16 +01:00
parent 7258971b13
commit 4d6437d33c
17 changed files with 370 additions and 124 deletions
+14 -4
View File
@@ -3,18 +3,28 @@
#include <sys/mman.h>
#include "macro.h"
#ifndef MFD_ALLOW_SEALING
#define MFD_ALLOW_SEALING 0x0002U
# define MFD_ALLOW_SEALING 0x0002U
#else
assert_cc(MFD_ALLOW_SEALING == 0x0002U);
#endif
#ifndef MFD_CLOEXEC
#define MFD_CLOEXEC 0x0001U
# define MFD_CLOEXEC 0x0001U
#else
assert_cc(MFD_CLOEXEC == 0x0001U);
#endif
#ifndef MFD_NOEXEC_SEAL
#define MFD_NOEXEC_SEAL 0x0008U
# define MFD_NOEXEC_SEAL 0x0008U
#else
assert_cc(MFD_NOEXEC_SEAL == 0x0008U);
#endif
#ifndef MFD_EXEC
#define MFD_EXEC 0x0010U
# define MFD_EXEC 0x0010U
#else
assert_cc(MFD_EXEC == 0x0010U);
#endif