summaryrefslogtreecommitdiffstats
path: root/src/set_elem.c
diff options
context:
space:
mode:
authorPablo Neira Ayuso <pablo@netfilter.org>2013-09-19 20:11:27 +0200
committerPablo Neira Ayuso <pablo@netfilter.org>2013-09-19 22:54:25 +0200
commit628203491deffcf01ee010152419ced8f549e57e (patch)
tree4df452f38817f1babcfa3b3b368f9d83db8a49b3 /src/set_elem.c
parent8cabd12d31c1f02ab67bd6e2ecf32f005b2a6f87 (diff)
src: replace size_t by uint32_t in set/get interfaces
This patch breaks the ABI to shrink the size parameter from 8 to 4 bytes in x86_64. The maximum length of netlink attributes is 2 bytes, so 4 bytes as attribute payload length should be enough. After this patch, size_t is only used in the nft_*_snprintf interfaces. Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'src/set_elem.c')
-rw-r--r--src/set_elem.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/set_elem.c b/src/set_elem.c
index ec4a1a6..a9e0751 100644
--- a/src/set_elem.c
+++ b/src/set_elem.c
@@ -77,7 +77,7 @@ void nft_set_elem_attr_unset(struct nft_set_elem *s, uint16_t attr)
EXPORT_SYMBOL(nft_set_elem_attr_unset);
void nft_set_elem_attr_set(struct nft_set_elem *s, uint16_t attr,
- const void *data, size_t data_len)
+ const void *data, uint32_t data_len)
{
switch(attr) {
case NFT_SET_ELEM_ATTR_FLAGS:
@@ -119,7 +119,7 @@ void nft_set_elem_attr_set_str(struct nft_set_elem *s, uint16_t attr, const char
}
EXPORT_SYMBOL(nft_set_elem_attr_set_str);
-const void *nft_set_elem_attr_get(struct nft_set_elem *s, uint16_t attr, size_t *data_len)
+const void *nft_set_elem_attr_get(struct nft_set_elem *s, uint16_t attr, uint32_t *data_len)
{
if (!(s->flags & (1 << attr)))
return NULL;
@@ -144,7 +144,7 @@ EXPORT_SYMBOL(nft_set_elem_attr_get);
const char *nft_set_elem_attr_get_str(struct nft_set_elem *s, uint16_t attr)
{
- size_t size;
+ uint32_t size;
return nft_set_elem_attr_get(s, attr, &size);
}
@@ -152,7 +152,7 @@ EXPORT_SYMBOL(nft_set_elem_attr_get_str);
uint32_t nft_set_elem_attr_get_u32(struct nft_set_elem *s, uint16_t attr)
{
- size_t size;
+ uint32_t size;
uint32_t val = *((uint32_t *)nft_set_elem_attr_get(s, attr, &size));
return val;
}