summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/rule.c12
-rw-r--r--src/set.c4
2 files changed, 8 insertions, 8 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);
diff --git a/src/set.c b/src/set.c
index 74ec1e3..2c6e6a6 100644
--- a/src/set.c
+++ b/src/set.c
@@ -183,8 +183,8 @@ EXPORT_SYMBOL(nft_set_attr_get_str);
uint32_t nft_set_attr_get_u32(struct nft_set *s, uint16_t attr)
{
- uint32_t val = *((uint32_t *)nft_set_attr_get(s, attr));
- return val;
+ const uint32_t *val = nft_set_attr_get(s, attr);
+ return val ? *val : 0;
}
EXPORT_SYMBOL(nft_set_attr_get_u32);