summaryrefslogtreecommitdiffstats
path: root/src/rule.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/rule.c')
-rw-r--r--src/rule.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/src/rule.c b/src/rule.c
index 62e3307..d135f38 100644
--- a/src/rule.c
+++ b/src/rule.c
@@ -201,22 +201,22 @@ EXPORT_SYMBOL(nft_rule_attr_get_str);
uint32_t nft_rule_attr_get_u32(const struct nft_rule *r, uint16_t attr)
{
- uint32_t val = *((uint32_t *)nft_rule_attr_get(r, attr));
- return val;
+ const uint32_t *val = nft_rule_attr_get(r, attr);
+ return val ? *val : 0;
}
EXPORT_SYMBOL(nft_rule_attr_get_u32);
uint64_t nft_rule_attr_get_u64(const struct nft_rule *r, uint16_t attr)
{
- uint64_t val = *((uint64_t *)nft_rule_attr_get(r, attr));
- return val;
+ const uint64_t *val = nft_rule_attr_get(r, attr);
+ return val ? *val : 0;
}
EXPORT_SYMBOL(nft_rule_attr_get_u64);
uint8_t nft_rule_attr_get_u8(const struct nft_rule *r, uint16_t attr)
{
- uint8_t val = *((uint8_t *)nft_rule_attr_get(r, attr));
- return val;
+ const uint8_t *val = nft_rule_attr_get(r, attr);
+ return val ? *val : 0;
}
EXPORT_SYMBOL(nft_rule_attr_get_u8);