summaryrefslogtreecommitdiffstats
path: root/lib/data.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/data.c')
-rw-r--r--lib/data.c92
1 files changed, 46 insertions, 46 deletions
diff --git a/lib/data.c b/lib/data.c
index 2872c0d..022e4b4 100644
--- a/lib/data.c
+++ b/lib/data.c
@@ -72,20 +72,20 @@ struct ipset_data {
char name[IPSET_MAXNAMELEN];
char nameref[IPSET_MAXNAMELEN];
} adt;
- } u;
+ };
};
static void
copy_addr(uint8_t family, union nf_inet_addr *ip, const void *value)
{
if (family == AF_INET)
- in4cpy(&ip->in, (const struct in_addr *)value);
+ in4cpy(&ip->in, value);
else
- in6cpy(&ip->in6, (const struct in6_addr *)value);
+ in6cpy(&ip->in6, value);
}
/**
- * ipset_strncpy - copy the string from src to dst
+ * ipset_strlcpy - copy the string from src to dst
* @dst: the target string buffer
* @src: the source string buffer
* @len: the length of bytes to copy, including the terminating null byte.
@@ -94,7 +94,7 @@ copy_addr(uint8_t family, union nf_inet_addr *ip, const void *value)
* copied. The target is unconditionally terminated by the null byte.
*/
void
-ipset_strncpy(char *dst, const char *src, size_t len)
+ipset_strlcpy(char *dst, const char *src, size_t len)
{
assert(dst);
assert(src);
@@ -199,7 +199,7 @@ ipset_data_set(struct ipset_data *data, enum ipset_opt opt, const void *value)
switch (opt) {
/* Common ones */
case IPSET_SETNAME:
- ipset_strncpy(data->setname, value, IPSET_MAXNAMELEN);
+ ipset_strlcpy(data->setname, value, IPSET_MAXNAMELEN);
break;
case IPSET_OPT_TYPE:
data->type = value;
@@ -233,71 +233,71 @@ ipset_data_set(struct ipset_data *data, enum ipset_opt opt, const void *value)
break;
/* Create-specific options */
case IPSET_OPT_GC:
- data->u.create.gc = *(const uint32_t *) value;
+ data->create.gc = *(const uint32_t *) value;
break;
case IPSET_OPT_HASHSIZE:
- data->u.create.hashsize = *(const uint32_t *) value;
+ data->create.hashsize = *(const uint32_t *) value;
break;
case IPSET_OPT_MAXELEM:
- data->u.create.maxelem = *(const uint32_t *) value;
+ data->create.maxelem = *(const uint32_t *) value;
break;
case IPSET_OPT_NETMASK:
- data->u.create.netmask = *(const uint8_t *) value;
+ data->create.netmask = *(const uint8_t *) value;
break;
case IPSET_OPT_PROBES:
- data->u.create.probes = *(const uint8_t *) value;
+ data->create.probes = *(const uint8_t *) value;
break;
case IPSET_OPT_RESIZE:
- data->u.create.resize = *(const uint8_t *) value;
+ data->create.resize = *(const uint8_t *) value;
break;
case IPSET_OPT_SIZE:
- data->u.create.size = *(const uint32_t *) value;
+ data->create.size = *(const uint32_t *) value;
break;
/* Create-specific options, filled out by the kernel */
case IPSET_OPT_ELEMENTS:
- data->u.create.elements = *(const uint32_t *) value;
+ data->create.elements = *(const uint32_t *) value;
break;
case IPSET_OPT_REFERENCES:
- data->u.create.references = *(const uint32_t *) value;
+ data->create.references = *(const uint32_t *) value;
break;
case IPSET_OPT_MEMSIZE:
- data->u.create.memsize = *(const uint32_t *) value;
+ data->create.memsize = *(const uint32_t *) value;
break;
/* Create-specific options, type */
case IPSET_OPT_TYPENAME:
- ipset_strncpy(data->u.create.typename, value,
+ ipset_strlcpy(data->create.typename, value,
IPSET_MAXNAMELEN);
break;
case IPSET_OPT_REVISION:
- data->u.create.revision = *(const uint8_t *) value;
+ data->create.revision = *(const uint8_t *) value;
break;
case IPSET_OPT_REVISION_MIN:
- data->u.create.revision_min = *(const uint8_t *) value;
+ data->create.revision_min = *(const uint8_t *) value;
break;
/* ADT-specific options */
case IPSET_OPT_ETHER:
- memcpy(data->u.adt.ether, value, ETH_ALEN);
+ memcpy(data->adt.ether, value, ETH_ALEN);
break;
case IPSET_OPT_NAME:
- ipset_strncpy(data->u.adt.name, value, IPSET_MAXNAMELEN);
+ ipset_strlcpy(data->adt.name, value, IPSET_MAXNAMELEN);
break;
case IPSET_OPT_NAMEREF:
- ipset_strncpy(data->u.adt.nameref, value, IPSET_MAXNAMELEN);
+ ipset_strlcpy(data->adt.nameref, value, IPSET_MAXNAMELEN);
break;
case IPSET_OPT_IP2:
if (!(data->family == AF_INET || data->family == AF_INET6))
return -1;
- copy_addr(data->family, &data->u.adt.ip2, value);
+ copy_addr(data->family, &data->adt.ip2, value);
break;
case IPSET_OPT_CIDR2:
- data->u.adt.cidr2 = *(const uint8_t *) value;
+ data->adt.cidr2 = *(const uint8_t *) value;
break;
case IPSET_OPT_PROTO:
- data->u.adt.proto = *(const uint8_t *) value;
+ data->adt.proto = *(const uint8_t *) value;
break;
/* Swap/rename */
case IPSET_OPT_SETNAME2:
- ipset_strncpy(data->u.setname2, value, IPSET_MAXNAMELEN);
+ ipset_strlcpy(data->setname2, value, IPSET_MAXNAMELEN);
break;
/* flags */
case IPSET_OPT_EXIST:
@@ -348,7 +348,7 @@ ipset_data_get(const struct ipset_data *data, enum ipset_opt opt)
if (ipset_data_test(data, IPSET_OPT_TYPE))
return data->type->name;
else if (ipset_data_test(data, IPSET_OPT_TYPENAME))
- return data->u.create.typename;
+ return data->create.typename;
return NULL;
case IPSET_OPT_FAMILY:
return &data->family;
@@ -367,47 +367,47 @@ ipset_data_get(const struct ipset_data *data, enum ipset_opt opt)
return &data->timeout;
/* Create-specific options */
case IPSET_OPT_GC:
- return &data->u.create.gc;
+ return &data->create.gc;
case IPSET_OPT_HASHSIZE:
- return &data->u.create.hashsize;
+ return &data->create.hashsize;
case IPSET_OPT_MAXELEM:
- return &data->u.create.maxelem;
+ return &data->create.maxelem;
case IPSET_OPT_NETMASK:
- return &data->u.create.netmask;
+ return &data->create.netmask;
case IPSET_OPT_PROBES:
- return &data->u.create.probes;
+ return &data->create.probes;
case IPSET_OPT_RESIZE:
- return &data->u.create.resize;
+ return &data->create.resize;
case IPSET_OPT_SIZE:
- return &data->u.create.size;
+ return &data->create.size;
/* Create-specific options, filled out by the kernel */
case IPSET_OPT_ELEMENTS:
- return &data->u.create.elements;
+ return &data->create.elements;
case IPSET_OPT_REFERENCES:
- return &data->u.create.references;
+ return &data->create.references;
case IPSET_OPT_MEMSIZE:
- return &data->u.create.memsize;
+ return &data->create.memsize;
/* Create-specific options, TYPE */
case IPSET_OPT_REVISION:
- return &data->u.create.revision;
+ return &data->create.revision;
case IPSET_OPT_REVISION_MIN:
- return &data->u.create.revision_min;
+ return &data->create.revision_min;
/* ADT-specific options */
case IPSET_OPT_ETHER:
- return data->u.adt.ether;
+ return data->adt.ether;
case IPSET_OPT_NAME:
- return data->u.adt.name;
+ return data->adt.name;
case IPSET_OPT_NAMEREF:
- return data->u.adt.nameref;
+ return data->adt.nameref;
case IPSET_OPT_IP2:
- return &data->u.adt.ip2;
+ return &data->adt.ip2;
case IPSET_OPT_CIDR2:
- return &data->u.adt.cidr2;
+ return &data->adt.cidr2;
case IPSET_OPT_PROTO:
- return &data->u.adt.proto;
+ return &data->adt.proto;
/* Swap/rename */
case IPSET_OPT_SETNAME2:
- return data->u.setname2;
+ return data->setname2;
/* flags */
case IPSET_OPT_FLAGS:
case IPSET_OPT_EXIST: