diff options
author | Maria Matejka <mq@ucw.cz> | 2022-04-14 16:51:18 +0200 |
---|---|---|
committer | Maria Matejka <mq@ucw.cz> | 2022-05-04 15:37:41 +0200 |
commit | 1d309c4ce6e95b68c64a8f007f6dd2f1830a5707 (patch) | |
tree | fe84dc4c6681c127daee871670aa617e8e2377b5 /lib/route.h | |
parent | c1194ab7edbb17cb7371ac38e6eab5ae3ae72163 (diff) |
Enforcing certain data structure explicit paddings.
Implicit paddings have undefined values in C. We want the eattr blocks
to be comparable by memcmp and eattrs settable directly by structrure
literals. This check ensures that all paddings in eattr and bval are
explicit and therefore zeroed in all literals.
Diffstat (limited to 'lib/route.h')
-rw-r--r-- | lib/route.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/lib/route.h b/lib/route.h index 431da4d8..ba7bab61 100644 --- a/lib/route.h +++ b/lib/route.h @@ -144,6 +144,8 @@ typedef struct eattr { byte fresh:1; /* An uncached attribute (e.g. modified in export filter) */ byte undef:1; /* Explicitly undefined */ + PADDING(unused, 0, 4); + union bval u; } eattr; |