#include "config.h"
#ifdef HAVE_VISIBILITY_HIDDEN
# define __visible __attribute__((visibility("default")))
-# define EXPORT_SYMBOL(x) typeof(x) (x) __visible
+# define EXPORT_SYMBOL(y, x) typeof(x) (x) __visible; __typeof (x) y __attribute ((alias (#x), visibility ("default")))
#else
# define EXPORT_SYMBOL
#endif
free(batch);
return NULL;
}
-EXPORT_SYMBOL(nft_batch_alloc);
+EXPORT_SYMBOL(nftnl_batch_alloc, nft_batch_alloc);
void nft_batch_free(struct nft_batch *batch)
{
free(batch);
}
-EXPORT_SYMBOL(nft_batch_free);
+EXPORT_SYMBOL(nftnl_batch_free, nft_batch_free);
int nft_batch_update(struct nft_batch *batch)
{
err1:
return -1;
}
-EXPORT_SYMBOL(nft_batch_update);
+EXPORT_SYMBOL(nftnl_batch_update, nft_batch_update);
void *nft_batch_buffer(struct nft_batch *batch)
{
return mnl_nlmsg_batch_current(batch->current_page->batch);
}
-EXPORT_SYMBOL(nft_batch_buffer);
+EXPORT_SYMBOL(nftnl_batch_buffer, nft_batch_buffer);
uint32_t nft_batch_buffer_len(struct nft_batch *batch)
{
return mnl_nlmsg_batch_size(batch->current_page->batch);
}
-EXPORT_SYMBOL(nft_batch_buffer_len);
+EXPORT_SYMBOL(nftnl_batch_buffer_len, nft_batch_buffer_len);
int nft_batch_iovec_len(struct nft_batch *batch)
{
return num_pages;
}
-EXPORT_SYMBOL(nft_batch_iovec_len);
+EXPORT_SYMBOL(nftnl_batch_iovec_len, nft_batch_iovec_len);
void nft_batch_iovec(struct nft_batch *batch, struct iovec *iov, uint32_t iovlen)
{
i++;
}
}
-EXPORT_SYMBOL(nft_batch_iovec);
+EXPORT_SYMBOL(nftnl_batch_iovec, nft_batch_iovec);
{
return calloc(1, sizeof(struct nft_chain));
}
-EXPORT_SYMBOL(nft_chain_alloc);
+EXPORT_SYMBOL(nftnl_chain_alloc, nft_chain_alloc);
void nft_chain_free(struct nft_chain *c)
{
xfree(c);
}
-EXPORT_SYMBOL(nft_chain_free);
+EXPORT_SYMBOL(nftnl_chain_free, nft_chain_free);
bool nft_chain_attr_is_set(const struct nft_chain *c, uint16_t attr)
{
return c->flags & (1 << attr);
}
-EXPORT_SYMBOL(nft_chain_attr_is_set);
+EXPORT_SYMBOL(nftnl_chain_attr_is_set, nft_chain_attr_is_set);
void nft_chain_attr_unset(struct nft_chain *c, uint16_t attr)
{
c->flags &= ~(1 << attr);
}
-EXPORT_SYMBOL(nft_chain_attr_unset);
+EXPORT_SYMBOL(nftnl_chain_attr_unset, nft_chain_attr_unset);
static uint32_t nft_chain_attr_validate[NFT_CHAIN_ATTR_MAX + 1] = {
[NFT_CHAIN_ATTR_HOOKNUM] = sizeof(uint32_t),
}
c->flags |= (1 << attr);
}
-EXPORT_SYMBOL(nft_chain_attr_set_data);
+EXPORT_SYMBOL(nftnl_chain_attr_set_data, nft_chain_attr_set_data);
void nft_chain_attr_set(struct nft_chain *c, uint16_t attr, const void *data)
{
nft_chain_attr_set_data(c, attr, data, nft_chain_attr_validate[attr]);
}
-EXPORT_SYMBOL(nft_chain_attr_set);
+EXPORT_SYMBOL(nftnl_chain_attr_set, nft_chain_attr_set);
void nft_chain_attr_set_u32(struct nft_chain *c, uint16_t attr, uint32_t data)
{
nft_chain_attr_set_data(c, attr, &data, sizeof(uint32_t));
}
-EXPORT_SYMBOL(nft_chain_attr_set_u32);
+EXPORT_SYMBOL(nftnl_chain_attr_set_u32, nft_chain_attr_set_u32);
void nft_chain_attr_set_s32(struct nft_chain *c, uint16_t attr, int32_t data)
{
nft_chain_attr_set_data(c, attr, &data, sizeof(int32_t));
}
-EXPORT_SYMBOL(nft_chain_attr_set_s32);
+EXPORT_SYMBOL(nftnl_chain_attr_set_s32, nft_chain_attr_set_s32);
void nft_chain_attr_set_u64(struct nft_chain *c, uint16_t attr, uint64_t data)
{
nft_chain_attr_set_data(c, attr, &data, sizeof(uint64_t));
}
-EXPORT_SYMBOL(nft_chain_attr_set_u64);
+EXPORT_SYMBOL(nftnl_chain_attr_set_u64, nft_chain_attr_set_u64);
void nft_chain_attr_set_u8(struct nft_chain *c, uint16_t attr, uint8_t data)
{
nft_chain_attr_set_data(c, attr, &data, sizeof(uint8_t));
}
-EXPORT_SYMBOL(nft_chain_attr_set_u8);
+EXPORT_SYMBOL(nftnl_chain_attr_set_u8, nft_chain_attr_set_u8);
void nft_chain_attr_set_str(struct nft_chain *c, uint16_t attr, const char *str)
{
nft_chain_attr_set_data(c, attr, str, strlen(str));
}
-EXPORT_SYMBOL(nft_chain_attr_set_str);
+EXPORT_SYMBOL(nftnl_chain_attr_set_str, nft_chain_attr_set_str);
const void *nft_chain_attr_get_data(struct nft_chain *c, uint16_t attr,
uint32_t *data_len)
}
return NULL;
}
-EXPORT_SYMBOL(nft_chain_attr_get_data);
+EXPORT_SYMBOL(nftnl_chain_attr_get_data, nft_chain_attr_get_data);
const void *nft_chain_attr_get(struct nft_chain *c, uint16_t attr)
{
uint32_t data_len;
return nft_chain_attr_get_data(c, attr, &data_len);
}
-EXPORT_SYMBOL(nft_chain_attr_get);
+EXPORT_SYMBOL(nftnl_chain_attr_get, nft_chain_attr_get);
const char *nft_chain_attr_get_str(struct nft_chain *c, uint16_t attr)
{
return nft_chain_attr_get(c, attr);
}
-EXPORT_SYMBOL(nft_chain_attr_get_str);
+EXPORT_SYMBOL(nftnl_chain_attr_get_str, nft_chain_attr_get_str);
uint32_t nft_chain_attr_get_u32(struct nft_chain *c, uint16_t attr)
{
return val ? *val : 0;
}
-EXPORT_SYMBOL(nft_chain_attr_get_u32);
+EXPORT_SYMBOL(nftnl_chain_attr_get_u32, nft_chain_attr_get_u32);
int32_t nft_chain_attr_get_s32(struct nft_chain *c, uint16_t attr)
{
return val ? *val : 0;
}
-EXPORT_SYMBOL(nft_chain_attr_get_s32);
+EXPORT_SYMBOL(nftnl_chain_attr_get_s32, nft_chain_attr_get_s32);
uint64_t nft_chain_attr_get_u64(struct nft_chain *c, uint16_t attr)
{
return val ? *val : 0;
}
-EXPORT_SYMBOL(nft_chain_attr_get_u64);
+EXPORT_SYMBOL(nftnl_chain_attr_get_u64, nft_chain_attr_get_u64);
uint8_t nft_chain_attr_get_u8(struct nft_chain *c, uint16_t attr)
{
return val ? *val : 0;
}
-EXPORT_SYMBOL(nft_chain_attr_get_u8);
+EXPORT_SYMBOL(nftnl_chain_attr_get_u8, nft_chain_attr_get_u8);
void nft_chain_nlmsg_build_payload(struct nlmsghdr *nlh, const struct nft_chain *c)
{
if (c->flags & (1 << NFT_CHAIN_ATTR_TYPE))
mnl_attr_put_strz(nlh, NFTA_CHAIN_TYPE, c->type);
}
-EXPORT_SYMBOL(nft_chain_nlmsg_build_payload);
+EXPORT_SYMBOL(nftnl_chain_nlmsg_build_payload, nft_chain_nlmsg_build_payload);
static int nft_chain_parse_attr_cb(const struct nlattr *attr, void *data)
{
return ret;
}
-EXPORT_SYMBOL(nft_chain_nlmsg_parse);
+EXPORT_SYMBOL(nftnl_chain_nlmsg_parse, nft_chain_nlmsg_parse);
static inline int nft_str2hooknum(int family, const char *hook)
{
{
return nft_chain_do_parse(c, type, data, err, NFT_PARSE_BUFFER);
}
-EXPORT_SYMBOL(nft_chain_parse);
+EXPORT_SYMBOL(nftnl_chain_parse, nft_chain_parse);
int nft_chain_parse_file(struct nft_chain *c, enum nft_parse_type type,
FILE *fp, struct nft_parse_err *err)
{
return nft_chain_do_parse(c, type, fp, err, NFT_PARSE_FILE);
}
-EXPORT_SYMBOL(nft_chain_parse_file);
+EXPORT_SYMBOL(nftnl_chain_parse_file, nft_chain_parse_file);
static int nft_chain_export(char *buf, size_t size, struct nft_chain *c,
int type)
return nft_chain_cmd_snprintf(buf, size, c, nft_flag2cmd(flags), type,
flags);
}
-EXPORT_SYMBOL(nft_chain_snprintf);
+EXPORT_SYMBOL(nftnl_chain_snprintf, nft_chain_snprintf);
static inline int nft_chain_do_snprintf(char *buf, size_t size, void *c,
uint32_t cmd, uint32_t type,
return nft_fprintf(fp, c, NFT_CMD_UNSPEC, type, flags,
nft_chain_do_snprintf);
}
-EXPORT_SYMBOL(nft_chain_fprintf);
+EXPORT_SYMBOL(nftnl_chain_fprintf, nft_chain_fprintf);
struct nft_chain_list {
struct list_head list;
return list;
}
-EXPORT_SYMBOL(nft_chain_list_alloc);
+EXPORT_SYMBOL(nftnl_chain_list_alloc, nft_chain_list_alloc);
void nft_chain_list_free(struct nft_chain_list *list)
{
}
xfree(list);
}
-EXPORT_SYMBOL(nft_chain_list_free);
+EXPORT_SYMBOL(nftnl_chain_list_free, nft_chain_list_free);
int nft_chain_list_is_empty(struct nft_chain_list *list)
{
return list_empty(&list->list);
}
-EXPORT_SYMBOL(nft_chain_list_is_empty);
+EXPORT_SYMBOL(nftnl_chain_list_is_empty, nft_chain_list_is_empty);
void nft_chain_list_add(struct nft_chain *r, struct nft_chain_list *list)
{
list_add(&r->head, &list->list);
}
-EXPORT_SYMBOL(nft_chain_list_add);
+EXPORT_SYMBOL(nftnl_chain_list_add, nft_chain_list_add);
void nft_chain_list_add_tail(struct nft_chain *r, struct nft_chain_list *list)
{
list_add_tail(&r->head, &list->list);
}
-EXPORT_SYMBOL(nft_chain_list_add_tail);
+EXPORT_SYMBOL(nftnl_chain_list_add_tail, nft_chain_list_add_tail);
void nft_chain_list_del(struct nft_chain *r)
{
list_del(&r->head);
}
-EXPORT_SYMBOL(nft_chain_list_del);
+EXPORT_SYMBOL(nftnl_chain_list_del, nft_chain_list_del);
int nft_chain_list_foreach(struct nft_chain_list *chain_list,
int (*cb)(struct nft_chain *r, void *data),
}
return 0;
}
-EXPORT_SYMBOL(nft_chain_list_foreach);
+EXPORT_SYMBOL(nftnl_chain_list_foreach, nft_chain_list_foreach);
struct nft_chain_list_iter {
struct nft_chain_list *list;
return iter;
}
-EXPORT_SYMBOL(nft_chain_list_iter_create);
+EXPORT_SYMBOL(nftnl_chain_list_iter_create, nft_chain_list_iter_create);
struct nft_chain *nft_chain_list_iter_next(struct nft_chain_list_iter *iter)
{
return r;
}
-EXPORT_SYMBOL(nft_chain_list_iter_next);
+EXPORT_SYMBOL(nftnl_chain_list_iter_next, nft_chain_list_iter_next);
void nft_chain_list_iter_destroy(struct nft_chain_list_iter *iter)
{
xfree(iter);
}
-EXPORT_SYMBOL(nft_chain_list_iter_destroy);
+EXPORT_SYMBOL(nftnl_chain_list_iter_destroy, nft_chain_list_iter_destroy);
return nlh;
}
-EXPORT_SYMBOL(nft_nlmsg_build_hdr);
+EXPORT_SYMBOL(nftnl_nlmsg_build_hdr, nft_nlmsg_build_hdr);
struct nft_parse_err *nft_parse_err_alloc(void)
{
return err;
}
-EXPORT_SYMBOL(nft_parse_err_alloc);
+EXPORT_SYMBOL(nftnl_parse_err_alloc, nft_parse_err_alloc);
void nft_parse_err_free(struct nft_parse_err *err)
{
xfree(err);
}
-EXPORT_SYMBOL(nft_parse_err_free);
+EXPORT_SYMBOL(nftnl_parse_err_free, nft_parse_err_free);
int nft_parse_perror(const char *msg, struct nft_parse_err *err)
{
return fprintf(stderr, "%s: Undefined error\n", msg);
}
}
-EXPORT_SYMBOL(nft_parse_perror);
+EXPORT_SYMBOL(nftnl_parse_perror, nft_parse_perror);
int nft_cmd_header_snprintf(char *buf, size_t size, uint32_t cmd, uint32_t type,
uint32_t flags)
{
nft_batch_build_hdr(buf, NFNL_MSG_BATCH_BEGIN, seq);
}
-EXPORT_SYMBOL(nft_batch_begin);
+EXPORT_SYMBOL(nftnl_batch_begin, nft_batch_begin);
void nft_batch_end(char *buf, uint32_t seq)
{
nft_batch_build_hdr(buf, NFNL_MSG_BATCH_END, seq);
}
-EXPORT_SYMBOL(nft_batch_end);
+EXPORT_SYMBOL(nftnl_batch_end, nft_batch_end);
int nft_batch_is_supported(void)
{
mnl_nlmsg_batch_stop(b);
return -1;
}
-EXPORT_SYMBOL(nft_batch_is_supported);
+EXPORT_SYMBOL(nftnl_batch_is_supported, nft_batch_is_supported);
return expr;
}
-EXPORT_SYMBOL(nft_rule_expr_alloc);
+EXPORT_SYMBOL(nftnl_rule_expr_alloc, nft_rule_expr_alloc);
void nft_rule_expr_free(struct nft_rule_expr *expr)
{
xfree(expr);
}
-EXPORT_SYMBOL(nft_rule_expr_free);
+EXPORT_SYMBOL(nftnl_rule_expr_free, nft_rule_expr_free);
bool nft_rule_expr_is_set(const struct nft_rule_expr *expr, uint16_t type)
{
return expr->flags & (1 << type);
}
-EXPORT_SYMBOL(nft_rule_expr_is_set);
+EXPORT_SYMBOL(nftnl_rule_expr_is_set, nft_rule_expr_is_set);
void
nft_rule_expr_set(struct nft_rule_expr *expr, uint16_t type,
}
expr->flags |= (1 << type);
}
-EXPORT_SYMBOL(nft_rule_expr_set);
+EXPORT_SYMBOL(nftnl_rule_expr_set, nft_rule_expr_set);
void
nft_rule_expr_set_u8(struct nft_rule_expr *expr, uint16_t type, uint8_t data)
{
nft_rule_expr_set(expr, type, &data, sizeof(uint8_t));
}
-EXPORT_SYMBOL(nft_rule_expr_set_u8);
+EXPORT_SYMBOL(nftnl_rule_expr_set_u8, nft_rule_expr_set_u8);
void
nft_rule_expr_set_u16(struct nft_rule_expr *expr, uint16_t type, uint16_t data)
{
nft_rule_expr_set(expr, type, &data, sizeof(uint16_t));
}
-EXPORT_SYMBOL(nft_rule_expr_set_u16);
+EXPORT_SYMBOL(nftnl_rule_expr_set_u16, nft_rule_expr_set_u16);
void
nft_rule_expr_set_u32(struct nft_rule_expr *expr, uint16_t type, uint32_t data)
{
nft_rule_expr_set(expr, type, &data, sizeof(uint32_t));
}
-EXPORT_SYMBOL(nft_rule_expr_set_u32);
+EXPORT_SYMBOL(nftnl_rule_expr_set_u32, nft_rule_expr_set_u32);
void
nft_rule_expr_set_u64(struct nft_rule_expr *expr, uint16_t type, uint64_t data)
{
nft_rule_expr_set(expr, type, &data, sizeof(uint64_t));
}
-EXPORT_SYMBOL(nft_rule_expr_set_u64);
+EXPORT_SYMBOL(nftnl_rule_expr_set_u64, nft_rule_expr_set_u64);
void
nft_rule_expr_set_str(struct nft_rule_expr *expr, uint16_t type, const char *str)
{
nft_rule_expr_set(expr, type, str, strlen(str)+1);
}
-EXPORT_SYMBOL(nft_rule_expr_set_str);
+EXPORT_SYMBOL(nftnl_rule_expr_set_str, nft_rule_expr_set_str);
const void *nft_rule_expr_get(const struct nft_rule_expr *expr,
uint16_t type, uint32_t *data_len)
return ret;
}
-EXPORT_SYMBOL(nft_rule_expr_get);
+EXPORT_SYMBOL(nftnl_rule_expr_get, nft_rule_expr_get);
uint8_t nft_rule_expr_get_u8(const struct nft_rule_expr *expr, uint16_t type)
{
return *((uint8_t *)data);
}
-EXPORT_SYMBOL(nft_rule_expr_get_u8);
+EXPORT_SYMBOL(nftnl_rule_expr_get_u8, nft_rule_expr_get_u8);
uint16_t nft_rule_expr_get_u16(const struct nft_rule_expr *expr, uint16_t type)
{
return *((uint16_t *)data);
}
-EXPORT_SYMBOL(nft_rule_expr_get_u16);
+EXPORT_SYMBOL(nftnl_rule_expr_get_u16, nft_rule_expr_get_u16);
uint32_t nft_rule_expr_get_u32(const struct nft_rule_expr *expr, uint16_t type)
{
return *((uint32_t *)data);
}
-EXPORT_SYMBOL(nft_rule_expr_get_u32);
+EXPORT_SYMBOL(nftnl_rule_expr_get_u32, nft_rule_expr_get_u32);
uint64_t nft_rule_expr_get_u64(const struct nft_rule_expr *expr, uint16_t type)
{
return *((uint64_t *)data);
}
-EXPORT_SYMBOL(nft_rule_expr_get_u64);
+EXPORT_SYMBOL(nftnl_rule_expr_get_u64, nft_rule_expr_get_u64);
const char *nft_rule_expr_get_str(const struct nft_rule_expr *expr, uint16_t type)
{
return (const char *)nft_rule_expr_get(expr, type, &data_len);
}
-EXPORT_SYMBOL(nft_rule_expr_get_str);
+EXPORT_SYMBOL(nftnl_rule_expr_get_str, nft_rule_expr_get_str);
void
nft_rule_expr_build_payload(struct nlmsghdr *nlh, struct nft_rule_expr *expr)
return offset;
}
-EXPORT_SYMBOL(nft_rule_expr_snprintf);
+EXPORT_SYMBOL(nftnl_rule_expr_snprintf, nft_rule_expr_snprintf);
{
return calloc(1, sizeof(struct nft_gen));
}
-EXPORT_SYMBOL(nft_gen_alloc);
+EXPORT_SYMBOL(nftnl_gen_alloc, nft_gen_alloc);
void nft_gen_free(struct nft_gen *gen)
{
xfree(gen);
}
-EXPORT_SYMBOL(nft_gen_free);
+EXPORT_SYMBOL(nftnl_gen_free, nft_gen_free);
bool nft_gen_attr_is_set(const struct nft_gen *gen, uint16_t attr)
{
return gen->flags & (1 << attr);
}
-EXPORT_SYMBOL(nft_gen_attr_is_set);
+EXPORT_SYMBOL(nftnl_gen_attr_is_set, nft_gen_attr_is_set);
void nft_gen_attr_unset(struct nft_gen *gen, uint16_t attr)
{
}
gen->flags &= ~(1 << attr);
}
-EXPORT_SYMBOL(nft_gen_attr_unset);
+EXPORT_SYMBOL(nftnl_gen_attr_unset, nft_gen_attr_unset);
static uint32_t nft_gen_attr_validate[NFT_GEN_MAX + 1] = {
[NFT_GEN_ID] = sizeof(uint32_t),
}
gen->flags |= (1 << attr);
}
-EXPORT_SYMBOL(nft_gen_attr_set_data);
+EXPORT_SYMBOL(nftnl_gen_attr_set_data, nft_gen_attr_set_data);
void nft_gen_attr_set(struct nft_gen *gen, uint16_t attr, const void *data)
{
nft_gen_attr_set_data(gen, attr, data, nft_gen_attr_validate[attr]);
}
-EXPORT_SYMBOL(nft_gen_attr_set);
+EXPORT_SYMBOL(nftnl_gen_attr_set, nft_gen_attr_set);
void nft_gen_attr_set_u32(struct nft_gen *gen, uint16_t attr, uint32_t val)
{
nft_gen_attr_set_data(gen, attr, &val, sizeof(uint32_t));
}
-EXPORT_SYMBOL(nft_gen_attr_set_u32);
+EXPORT_SYMBOL(nftnl_gen_attr_set_u32, nft_gen_attr_set_u32);
const void *nft_gen_attr_get_data(struct nft_gen *gen, uint16_t attr,
uint32_t *data_len)
}
return NULL;
}
-EXPORT_SYMBOL(nft_gen_attr_get_data);
+EXPORT_SYMBOL(nftnl_gen_attr_get_data, nft_gen_attr_get_data);
const void *nft_gen_attr_get(struct nft_gen *gen, uint16_t attr)
{
uint32_t data_len;
return nft_gen_attr_get_data(gen, attr, &data_len);
}
-EXPORT_SYMBOL(nft_gen_attr_get);
+EXPORT_SYMBOL(nftnl_gen_attr_get, nft_gen_attr_get);
uint32_t nft_gen_attr_get_u32(struct nft_gen *gen, uint16_t attr)
{
const void *ret = nft_gen_attr_get(gen, attr);
return ret == NULL ? 0 : *((uint32_t *)ret);
}
-EXPORT_SYMBOL(nft_gen_attr_get_u32);
+EXPORT_SYMBOL(nftnl_gen_attr_get_u32, nft_gen_attr_get_u32);
static int nft_gen_parse_attr_cb(const struct nlattr *attr, void *data)
{
}
return 0;
}
-EXPORT_SYMBOL(nft_gen_nlmsg_parse);
+EXPORT_SYMBOL(nftnl_gen_nlmsg_parse, nft_gen_nlmsg_parse);
static int nft_gen_snprintf_default(char *buf, size_t size, struct nft_gen *gen)
{
return nft_gen_cmd_snprintf(buf, size, gen, nft_flag2cmd(flags), type,
flags);
}
-EXPORT_SYMBOL(nft_gen_snprintf);
+EXPORT_SYMBOL(nftnl_gen_snprintf, nft_gen_snprintf);
static inline int nft_gen_do_snprintf(char *buf, size_t size, void *gen,
uint32_t cmd, uint32_t type,
return nft_fprintf(fp, gen, NFT_CMD_UNSPEC, type, flags,
nft_gen_do_snprintf);
}
-EXPORT_SYMBOL(nft_gen_fprintf);
+EXPORT_SYMBOL(nftnl_gen_fprintf, nft_gen_fprintf);
nft_parse_err_free;
nft_parse_perror;
+#
+# aliases
+#
+
+ nftnl_table_alloc;
+ nftnl_table_free;
+ nftnl_table_attr_is_set;
+ nftnl_table_attr_unset;
+ nftnl_table_attr_set;
+ nftnl_table_attr_get;
+ nftnl_table_attr_set_u8;
+ nftnl_table_attr_set_u32;
+ nftnl_table_attr_set_str;
+ nftnl_table_attr_get_u8;
+ nftnl_table_attr_get_u32;
+ nftnl_table_attr_get_str;
+ nftnl_table_parse;
+ nftnl_table_parse_file;
+ nftnl_table_snprintf;
+ nftnl_table_fprintf;
+ nftnl_table_nlmsg_build_payload;
+ nftnl_table_nlmsg_parse;
+ nftnl_table_list_alloc;
+ nftnl_table_list_free;
+ nftnl_table_list_is_empty;
+ nftnl_table_list_foreach;
+ nftnl_table_list_add;
+ nftnl_table_list_add_tail;
+ nftnl_table_list_del;
+ nftnl_table_list_iter_create;
+ nftnl_table_list_iter_next;
+ nftnl_table_list_iter_destroy;
+
+ nftnl_chain_alloc;
+ nftnl_chain_free;
+ nftnl_chain_attr_is_set;
+ nftnl_chain_attr_unset;
+ nftnl_chain_attr_set;
+ nftnl_chain_attr_set_u8;
+ nftnl_chain_attr_set_u32;
+ nftnl_chain_attr_set_s32;
+ nftnl_chain_attr_set_u64;
+ nftnl_chain_attr_set_str;
+ nftnl_chain_attr_get;
+ nftnl_chain_attr_get_u8;
+ nftnl_chain_attr_get_u32;
+ nftnl_chain_attr_get_s32;
+ nftnl_chain_attr_get_u64;
+ nftnl_chain_attr_get_str;
+ nftnl_chain_parse;
+ nftnl_chain_parse_file;
+ nftnl_chain_snprintf;
+ nftnl_chain_fprintf;
+ nftnl_chain_nlmsg_build_payload;
+ nftnl_chain_nlmsg_parse;
+ nftnl_chain_list_alloc;
+ nftnl_chain_list_free;
+ nftnl_chain_list_is_empty;
+ nftnl_chain_list_add;
+ nftnl_chain_list_add_tail;
+ nftnl_chain_list_del;
+ nftnl_chain_list_foreach;
+ nftnl_chain_list_iter_create;
+ nftnl_chain_list_iter_next;
+ nftnl_chain_list_iter_destroy;
+
+ nftnl_rule_alloc;
+ nftnl_rule_free;
+ nftnl_rule_attr_is_set;
+ nftnl_rule_attr_unset;
+ nftnl_rule_attr_set;
+ nftnl_rule_attr_set_u32;
+ nftnl_rule_attr_set_u64;
+ nftnl_rule_attr_set_str;
+ nftnl_rule_attr_get;
+ nftnl_rule_attr_get_u8;
+ nftnl_rule_attr_get_u32;
+ nftnl_rule_attr_get_u64;
+ nftnl_rule_attr_get_str;
+ nftnl_rule_parse;
+ nftnl_rule_parse_file;
+ nftnl_rule_snprintf;
+ nftnl_rule_fprintf;
+ nftnl_rule_nlmsg_build_payload;
+ nftnl_rule_nlmsg_parse;
+ nftnl_rule_add_expr;
+
+ nftnl_rule_expr_foreach;
+ nftnl_rule_expr_iter_create;
+ nftnl_rule_expr_iter_next;
+ nftnl_rule_expr_iter_destroy;
+
+ nftnl_rule_expr_alloc;
+ nftnl_rule_expr_is_set;
+ nftnl_rule_expr_set;
+ nftnl_rule_expr_set_u8;
+ nftnl_rule_expr_set_u16;
+ nftnl_rule_expr_set_u32;
+ nftnl_rule_expr_set_u64;
+ nftnl_rule_expr_set_str;
+ nftnl_rule_expr_get;
+ nftnl_rule_expr_get_u8;
+ nftnl_rule_expr_get_u16;
+ nftnl_rule_expr_get_u32;
+ nftnl_rule_expr_get_u64;
+ nftnl_rule_expr_get_str;
+ nftnl_rule_expr_snprintf;
+ nftnl_rule_expr_free;
+
+ nftnl_rule_list_alloc;
+ nftnl_rule_list_free;
+ nftnl_rule_list_is_empty;
+ nftnl_rule_list_add;
+ nftnl_rule_list_add_tail;
+ nftnl_rule_list_del;
+ nftnl_rule_list_foreach;
+ nftnl_rule_list_iter_create;
+ nftnl_rule_list_iter_cur;
+ nftnl_rule_list_iter_next;
+ nftnl_rule_list_iter_destroy;
+
+ nftnl_set_alloc;
+ nftnl_set_free;
+ nftnl_set_attr_unset;
+ nftnl_set_attr_is_set;
+ nftnl_set_attr_set;
+ nftnl_set_attr_set_u32;
+ nftnl_set_attr_set_u64;
+ nftnl_set_attr_set_str;
+ nftnl_set_attr_get;
+ nftnl_set_attr_get_str;
+ nftnl_set_attr_get_u32;
+ nftnl_set_attr_get_u64;
+ nftnl_set_nlmsg_build_payload;
+ nftnl_set_nlmsg_parse;
+ nftnl_set_parse;
+ nftnl_set_parse_file;
+ nftnl_set_snprintf;
+ nftnl_set_fprintf;
+
+ nftnl_set_list_alloc;
+ nftnl_set_list_free;
+ nftnl_set_list_add;
+ nftnl_set_list_add_tail;
+ nftnl_set_list_del;
+ nftnl_set_list_is_empty;
+ nftnl_set_list_foreach;
+
+ nftnl_set_list_iter_create;
+ nftnl_set_list_iter_cur;
+ nftnl_set_list_iter_next;
+ nftnl_set_list_iter_destroy;
+
+ nftnl_set_elem_alloc;
+ nftnl_set_elem_free;
+ nftnl_set_elem_add;
+ nftnl_set_elem_foreach;
+ nftnl_set_elem_attr_is_set;
+ nftnl_set_elem_attr_unset;
+ nftnl_set_elem_attr_set;
+ nftnl_set_elem_attr_set_u32;
+ nftnl_set_elem_attr_set_u64;
+ nftnl_set_elem_attr_set_str;
+ nftnl_set_elem_attr_get;
+ nftnl_set_elem_attr_get_str;
+ nftnl_set_elem_attr_get_u32;
+ nftnl_set_elem_attr_get_u64;
+ nftnl_set_elem_nlmsg_build_payload;
+ nftnl_set_elem_parse;
+ nftnl_set_elem_parse_file;
+ nftnl_set_elem_snprintf;
+ nftnl_set_elem_fprinf;
+
+ nftnl_set_elems_nlmsg_build_payload;
+ nftnl_set_elems_nlmsg_parse;
+
+ nftnl_set_elems_foreach;
+
+ nftnl_set_elems_iter_create;
+ nftnl_set_elems_iter_cur;
+ nftnl_set_elems_iter_next;
+ nftnl_set_elems_iter_destroy;
+
+ nftnl_ruleset_alloc;
+ nftnl_ruleset_free;
+ nftnl_ruleset_attr_is_set;
+ nftnl_ruleset_attr_unset;
+ nftnl_ruleset_attr_set;
+ nftnl_ruleset_attr_get;
+ nftnl_ruleset_parse;
+ nftnl_ruleset_parse_file;
+ nftnl_ruleset_snprintf;
+ nftnl_ruleset_fprintf;
+
+ nftnl_nlmsg_build_hdr;
+
+ nftnl_parse_err_alloc;
+ nftnl_parse_err_free;
+ nftnl_parse_perror;
+
+
local: *;
};
nft_rule_attr_get_data;
nft_set_attr_set_data;
nft_set_attr_get_data;
+
+#
+# aliases
+#
+
+ nftnl_table_attr_set_data;
+ nftnl_table_attr_get_data;
+ nftnl_chain_attr_set_data;
+ nftnl_chain_attr_get_data;
+ nftnl_rule_attr_set_data;
+ nftnl_rule_attr_get_data;
+ nftnl_set_attr_set_data;
+ nftnl_set_attr_get_data;
+
} LIBNFTNL_1.0;
LIBNFTNL_1.2 {
nft_gen_nlmsg_parse;
nft_gen_snprintf;
nft_gen_fprintf;
+
+#
+# aliases
+#
+
+ nftnl_set_elems_nlmsg_build_payload_iter;
+ nftnl_batch_is_supported;
+ nftnl_batch_begin;
+ nftnl_batch_end;
+
+ nftnl_gen_alloc;
+ nftnl_gen_free;
+ nftnl_gen_attr_is_set;
+ nftnl_gen_attr_unset;
+ nftnl_gen_attr_set_data;
+ nftnl_gen_attr_set;
+ nftnl_gen_attr_set_u32;
+ nftnl_gen_attr_get_data;
+ nftnl_gen_attr_get;
+ nftnl_gen_attr_get_u32;
+ nftnl_gen_nlmsg_parse;
+ nftnl_gen_snprintf;
+ nftnl_gen_fprintf;
+
+
} LIBNFTNL_1.1;
LIBNFTNL_1.2.0 {
nft_batch_buffer_len;
nft_batch_iovec_len;
nft_batch_iovec;
+
+#
+# aliases
+#
+
+ nftnl_ruleset_ctx_is_set;
+ nftnl_ruleset_ctx_get;
+ nftnl_ruleset_ctx_get_u32;
+ nftnl_ruleset_parse_file_cb;
+ nftnl_ruleset_parse_buffer_cb;
+ nftnl_ruleset_ctx_free;
+
+ nftnl_batch_alloc;
+ nftnl_batch_update;
+ nftnl_batch_free;
+ nftnl_batch_buffer;
+ nftnl_batch_buffer_len;
+ nftnl_batch_iovec_len;
+ nftnl_batch_iovec;
+
} LIBNFTNL_1.2;
return r;
}
-EXPORT_SYMBOL(nft_rule_alloc);
+EXPORT_SYMBOL(nftnl_rule_alloc, nft_rule_alloc);
void nft_rule_free(struct nft_rule *r)
{
xfree(r);
}
-EXPORT_SYMBOL(nft_rule_free);
+EXPORT_SYMBOL(nftnl_rule_free, nft_rule_free);
bool nft_rule_attr_is_set(const struct nft_rule *r, uint16_t attr)
{
return r->flags & (1 << attr);
}
-EXPORT_SYMBOL(nft_rule_attr_is_set);
+EXPORT_SYMBOL(nftnl_rule_attr_is_set, nft_rule_attr_is_set);
void nft_rule_attr_unset(struct nft_rule *r, uint16_t attr)
{
r->flags &= ~(1 << attr);
}
-EXPORT_SYMBOL(nft_rule_attr_unset);
+EXPORT_SYMBOL(nftnl_rule_attr_unset, nft_rule_attr_unset);
static uint32_t nft_rule_attr_validate[NFT_RULE_ATTR_MAX + 1] = {
[NFT_RULE_ATTR_HANDLE] = sizeof(uint64_t),
}
r->flags |= (1 << attr);
}
-EXPORT_SYMBOL(nft_rule_attr_set_data);
+EXPORT_SYMBOL(nftnl_rule_attr_set_data, nft_rule_attr_set_data);
void nft_rule_attr_set(struct nft_rule *r, uint16_t attr, const void *data)
{
nft_rule_attr_set_data(r, attr, data, nft_rule_attr_validate[attr]);
}
-EXPORT_SYMBOL(nft_rule_attr_set);
+EXPORT_SYMBOL(nftnl_rule_attr_set, nft_rule_attr_set);
void nft_rule_attr_set_u32(struct nft_rule *r, uint16_t attr, uint32_t val)
{
nft_rule_attr_set_data(r, attr, &val, sizeof(uint32_t));
}
-EXPORT_SYMBOL(nft_rule_attr_set_u32);
+EXPORT_SYMBOL(nftnl_rule_attr_set_u32, nft_rule_attr_set_u32);
void nft_rule_attr_set_u64(struct nft_rule *r, uint16_t attr, uint64_t val)
{
nft_rule_attr_set_data(r, attr, &val, sizeof(uint64_t));
}
-EXPORT_SYMBOL(nft_rule_attr_set_u64);
+EXPORT_SYMBOL(nftnl_rule_attr_set_u64, nft_rule_attr_set_u64);
void nft_rule_attr_set_str(struct nft_rule *r, uint16_t attr, const char *str)
{
nft_rule_attr_set_data(r, attr, str, strlen(str));
}
-EXPORT_SYMBOL(nft_rule_attr_set_str);
+EXPORT_SYMBOL(nftnl_rule_attr_set_str, nft_rule_attr_set_str);
const void *nft_rule_attr_get_data(const struct nft_rule *r, uint16_t attr,
uint32_t *data_len)
}
return NULL;
}
-EXPORT_SYMBOL(nft_rule_attr_get_data);
+EXPORT_SYMBOL(nftnl_rule_attr_get_data, nft_rule_attr_get_data);
const void *nft_rule_attr_get(const struct nft_rule *r, uint16_t attr)
{
uint32_t data_len;
return nft_rule_attr_get_data(r, attr, &data_len);
}
-EXPORT_SYMBOL(nft_rule_attr_get);
+EXPORT_SYMBOL(nftnl_rule_attr_get, nft_rule_attr_get);
const char *nft_rule_attr_get_str(const struct nft_rule *r, uint16_t attr)
{
return nft_rule_attr_get(r, attr);
}
-EXPORT_SYMBOL(nft_rule_attr_get_str);
+EXPORT_SYMBOL(nftnl_rule_attr_get_str, nft_rule_attr_get_str);
uint32_t nft_rule_attr_get_u32(const struct nft_rule *r, uint16_t attr)
{
return val ? *val : 0;
}
-EXPORT_SYMBOL(nft_rule_attr_get_u32);
+EXPORT_SYMBOL(nftnl_rule_attr_get_u32, nft_rule_attr_get_u32);
uint64_t nft_rule_attr_get_u64(const struct nft_rule *r, uint16_t attr)
{
return val ? *val : 0;
}
-EXPORT_SYMBOL(nft_rule_attr_get_u64);
+EXPORT_SYMBOL(nftnl_rule_attr_get_u64, nft_rule_attr_get_u64);
uint8_t nft_rule_attr_get_u8(const struct nft_rule *r, uint16_t attr)
{
return val ? *val : 0;
}
-EXPORT_SYMBOL(nft_rule_attr_get_u8);
+EXPORT_SYMBOL(nftnl_rule_attr_get_u8, nft_rule_attr_get_u8);
void nft_rule_nlmsg_build_payload(struct nlmsghdr *nlh, struct nft_rule *r)
{
mnl_attr_nest_end(nlh, nest);
}
}
-EXPORT_SYMBOL(nft_rule_nlmsg_build_payload);
+EXPORT_SYMBOL(nftnl_rule_nlmsg_build_payload, nft_rule_nlmsg_build_payload);
void nft_rule_add_expr(struct nft_rule *r, struct nft_rule_expr *expr)
{
list_add_tail(&expr->head, &r->expr_list);
}
-EXPORT_SYMBOL(nft_rule_add_expr);
+EXPORT_SYMBOL(nftnl_rule_add_expr, nft_rule_add_expr);
static int nft_rule_parse_attr_cb(const struct nlattr *attr, void *data)
{
return ret;
}
-EXPORT_SYMBOL(nft_rule_nlmsg_parse);
+EXPORT_SYMBOL(nftnl_rule_nlmsg_parse, nft_rule_nlmsg_parse);
#ifdef JSON_PARSING
int nft_jansson_parse_rule(struct nft_rule *r, json_t *tree,
{
return nft_rule_do_parse(r, type, data, err, NFT_PARSE_BUFFER);
}
-EXPORT_SYMBOL(nft_rule_parse);
+EXPORT_SYMBOL(nftnl_rule_parse, nft_rule_parse);
int nft_rule_parse_file(struct nft_rule *r, enum nft_parse_type type,
FILE *fp, struct nft_parse_err *err)
{
return nft_rule_do_parse(r, type, fp, err, NFT_PARSE_FILE);
}
-EXPORT_SYMBOL(nft_rule_parse_file);
+EXPORT_SYMBOL(nftnl_rule_parse_file, nft_rule_parse_file);
static int nft_rule_snprintf_json(char *buf, size_t size, struct nft_rule *r,
uint32_t type, uint32_t flags)
return nft_rule_cmd_snprintf(buf, size, r, nft_flag2cmd(flags), type,
flags);
}
-EXPORT_SYMBOL(nft_rule_snprintf);
+EXPORT_SYMBOL(nftnl_rule_snprintf, nft_rule_snprintf);
static inline int nft_rule_do_snprintf(char *buf, size_t size, void *r,
uint32_t cmd, uint32_t type,
return nft_fprintf(fp, r, NFT_CMD_UNSPEC, type, flags,
nft_rule_do_snprintf);
}
-EXPORT_SYMBOL(nft_rule_fprintf);
+EXPORT_SYMBOL(nftnl_rule_fprintf, nft_rule_fprintf);
int nft_rule_expr_foreach(struct nft_rule *r,
int (*cb)(struct nft_rule_expr *e, void *data),
}
return 0;
}
-EXPORT_SYMBOL(nft_rule_expr_foreach);
+EXPORT_SYMBOL(nftnl_rule_expr_foreach, nft_rule_expr_foreach);
struct nft_rule_expr_iter {
struct nft_rule *r;
return iter;
}
-EXPORT_SYMBOL(nft_rule_expr_iter_create);
+EXPORT_SYMBOL(nftnl_rule_expr_iter_create, nft_rule_expr_iter_create);
struct nft_rule_expr *nft_rule_expr_iter_next(struct nft_rule_expr_iter *iter)
{
return expr;
}
-EXPORT_SYMBOL(nft_rule_expr_iter_next);
+EXPORT_SYMBOL(nftnl_rule_expr_iter_next, nft_rule_expr_iter_next);
void nft_rule_expr_iter_destroy(struct nft_rule_expr_iter *iter)
{
xfree(iter);
}
-EXPORT_SYMBOL(nft_rule_expr_iter_destroy);
+EXPORT_SYMBOL(nftnl_rule_expr_iter_destroy, nft_rule_expr_iter_destroy);
struct nft_rule_list {
struct list_head list;
return list;
}
-EXPORT_SYMBOL(nft_rule_list_alloc);
+EXPORT_SYMBOL(nftnl_rule_list_alloc, nft_rule_list_alloc);
void nft_rule_list_free(struct nft_rule_list *list)
{
}
xfree(list);
}
-EXPORT_SYMBOL(nft_rule_list_free);
+EXPORT_SYMBOL(nftnl_rule_list_free, nft_rule_list_free);
int nft_rule_list_is_empty(struct nft_rule_list *list)
{
return list_empty(&list->list);
}
-EXPORT_SYMBOL(nft_rule_list_is_empty);
+EXPORT_SYMBOL(nftnl_rule_list_is_empty, nft_rule_list_is_empty);
void nft_rule_list_add(struct nft_rule *r, struct nft_rule_list *list)
{
list_add(&r->head, &list->list);
}
-EXPORT_SYMBOL(nft_rule_list_add);
+EXPORT_SYMBOL(nftnl_rule_list_add, nft_rule_list_add);
void nft_rule_list_add_tail(struct nft_rule *r, struct nft_rule_list *list)
{
list_add_tail(&r->head, &list->list);
}
-EXPORT_SYMBOL(nft_rule_list_add_tail);
+EXPORT_SYMBOL(nftnl_rule_list_add_tail, nft_rule_list_add_tail);
void nft_rule_list_del(struct nft_rule *r)
{
list_del(&r->head);
}
-EXPORT_SYMBOL(nft_rule_list_del);
+EXPORT_SYMBOL(nftnl_rule_list_del, nft_rule_list_del);
int nft_rule_list_foreach(struct nft_rule_list *rule_list,
int (*cb)(struct nft_rule *r, void *data),
}
return 0;
}
-EXPORT_SYMBOL(nft_rule_list_foreach);
+EXPORT_SYMBOL(nftnl_rule_list_foreach, nft_rule_list_foreach);
struct nft_rule_list_iter {
struct nft_rule_list *list;
return iter;
}
-EXPORT_SYMBOL(nft_rule_list_iter_create);
+EXPORT_SYMBOL(nftnl_rule_list_iter_create, nft_rule_list_iter_create);
struct nft_rule *nft_rule_list_iter_cur(struct nft_rule_list_iter *iter)
{
return iter->cur;
}
-EXPORT_SYMBOL(nft_rule_list_iter_cur);
+EXPORT_SYMBOL(nftnl_rule_list_iter_cur, nft_rule_list_iter_cur);
struct nft_rule *nft_rule_list_iter_next(struct nft_rule_list_iter *iter)
{
return r;
}
-EXPORT_SYMBOL(nft_rule_list_iter_next);
+EXPORT_SYMBOL(nftnl_rule_list_iter_next, nft_rule_list_iter_next);
void nft_rule_list_iter_destroy(struct nft_rule_list_iter *iter)
{
xfree(iter);
}
-EXPORT_SYMBOL(nft_rule_list_iter_destroy);
+EXPORT_SYMBOL(nftnl_rule_list_iter_destroy, nft_rule_list_iter_destroy);
{
return calloc(1, sizeof(struct nft_ruleset));
}
-EXPORT_SYMBOL(nft_ruleset_alloc);
+EXPORT_SYMBOL(nftnl_ruleset_alloc, nft_ruleset_alloc);
void nft_ruleset_free(struct nft_ruleset *r)
{
nft_rule_list_free(r->rule_list);
xfree(r);
}
-EXPORT_SYMBOL(nft_ruleset_free);
+EXPORT_SYMBOL(nftnl_ruleset_free, nft_ruleset_free);
bool nft_ruleset_attr_is_set(const struct nft_ruleset *r, uint16_t attr)
{
return r->flags & (1 << attr);
}
-EXPORT_SYMBOL(nft_ruleset_attr_is_set);
+EXPORT_SYMBOL(nftnl_ruleset_attr_is_set, nft_ruleset_attr_is_set);
void nft_ruleset_attr_unset(struct nft_ruleset *r, uint16_t attr)
{
}
r->flags &= ~(1 << attr);
}
-EXPORT_SYMBOL(nft_ruleset_attr_unset);
+EXPORT_SYMBOL(nftnl_ruleset_attr_unset, nft_ruleset_attr_unset);
void nft_ruleset_attr_set(struct nft_ruleset *r, uint16_t attr, void *data)
{
}
r->flags |= (1 << attr);
}
-EXPORT_SYMBOL(nft_ruleset_attr_set);
+EXPORT_SYMBOL(nftnl_ruleset_attr_set, nft_ruleset_attr_set);
void *nft_ruleset_attr_get(const struct nft_ruleset *r, uint16_t attr)
{
return NULL;
}
}
-EXPORT_SYMBOL(nft_ruleset_attr_get);
+EXPORT_SYMBOL(nftnl_ruleset_attr_get, nft_ruleset_attr_get);
void nft_ruleset_ctx_free(const struct nft_parse_ctx *ctx)
{
break;
}
}
-EXPORT_SYMBOL(nft_ruleset_ctx_free);
+EXPORT_SYMBOL(nftnl_ruleset_ctx_free, nft_ruleset_ctx_free);
bool nft_ruleset_ctx_is_set(const struct nft_parse_ctx *ctx, uint16_t attr)
{
return ctx->flags & (1 << attr);
}
-EXPORT_SYMBOL(nft_ruleset_ctx_is_set);
+EXPORT_SYMBOL(nftnl_ruleset_ctx_is_set, nft_ruleset_ctx_is_set);
void *nft_ruleset_ctx_get(const struct nft_parse_ctx *ctx, uint16_t attr)
{
return NULL;
}
}
-EXPORT_SYMBOL(nft_ruleset_ctx_get);
+EXPORT_SYMBOL(nftnl_ruleset_ctx_get, nft_ruleset_ctx_get);
uint32_t nft_ruleset_ctx_get_u32(const struct nft_parse_ctx *ctx, uint16_t attr)
{
const void *ret = nft_ruleset_ctx_get(ctx, attr);
return ret == NULL ? 0 : *((uint32_t *)ret);
}
-EXPORT_SYMBOL(nft_ruleset_ctx_get_u32);
+EXPORT_SYMBOL(nftnl_ruleset_ctx_get_u32, nft_ruleset_ctx_get_u32);
#if defined(JSON_PARSING) || defined(XML_PARSING)
static void nft_ruleset_ctx_set(struct nft_parse_ctx *ctx, uint16_t attr,
{
return nft_ruleset_do_parse(type, fp, err, NFT_PARSE_FILE, data, cb);
}
-EXPORT_SYMBOL(nft_ruleset_parse_file_cb);
+EXPORT_SYMBOL(nftnl_ruleset_parse_file_cb, nft_ruleset_parse_file_cb);
int nft_ruleset_parse_buffer_cb(enum nft_parse_type type, const char *buffer,
struct nft_parse_err *err, void *data,
return nft_ruleset_do_parse(type, buffer, err, NFT_PARSE_BUFFER, data,
cb);
}
-EXPORT_SYMBOL(nft_ruleset_parse_buffer_cb);
+EXPORT_SYMBOL(nftnl_ruleset_parse_buffer_cb, nft_ruleset_parse_buffer_cb);
static int nft_ruleset_cb(const struct nft_parse_ctx *ctx)
{
{
return nft_ruleset_parse_buffer_cb(type, data, err, r, nft_ruleset_cb);
}
-EXPORT_SYMBOL(nft_ruleset_parse);
+EXPORT_SYMBOL(nftnl_ruleset_parse, nft_ruleset_parse);
int nft_ruleset_parse_file(struct nft_ruleset *rs, enum nft_parse_type type,
FILE *fp, struct nft_parse_err *err)
{
return nft_ruleset_parse_file_cb(type, fp, err, rs, nft_ruleset_cb);
}
-EXPORT_SYMBOL(nft_ruleset_parse_file);
+EXPORT_SYMBOL(nftnl_ruleset_parse_file, nft_ruleset_parse_file);
static const char *nft_ruleset_o_opentag(uint32_t type)
{
return -1;
}
}
-EXPORT_SYMBOL(nft_ruleset_snprintf);
+EXPORT_SYMBOL(nftnl_ruleset_snprintf, nft_ruleset_snprintf);
static int nft_ruleset_fprintf_tables(FILE *fp, const struct nft_ruleset *rs,
uint32_t type, uint32_t flags)
return nft_ruleset_cmd_fprintf(fp, rs, nft_flag2cmd(flags), type,
flags);
}
-EXPORT_SYMBOL(nft_ruleset_fprintf);
+EXPORT_SYMBOL(nftnl_ruleset_fprintf, nft_ruleset_fprintf);
INIT_LIST_HEAD(&s->element_list);
return s;
}
-EXPORT_SYMBOL(nft_set_alloc);
+EXPORT_SYMBOL(nftnl_set_alloc, nft_set_alloc);
void nft_set_free(struct nft_set *s)
{
}
xfree(s);
}
-EXPORT_SYMBOL(nft_set_free);
+EXPORT_SYMBOL(nftnl_set_free, nft_set_free);
bool nft_set_attr_is_set(const struct nft_set *s, uint16_t attr)
{
return s->flags & (1 << attr);
}
-EXPORT_SYMBOL(nft_set_attr_is_set);
+EXPORT_SYMBOL(nftnl_set_attr_is_set, nft_set_attr_is_set);
void nft_set_attr_unset(struct nft_set *s, uint16_t attr)
{
s->flags &= ~(1 << attr);
}
-EXPORT_SYMBOL(nft_set_attr_unset);
+EXPORT_SYMBOL(nftnl_set_attr_unset, nft_set_attr_unset);
static uint32_t nft_set_attr_validate[NFT_SET_ATTR_MAX + 1] = {
[NFT_SET_ATTR_FLAGS] = sizeof(uint32_t),
}
s->flags |= (1 << attr);
}
-EXPORT_SYMBOL(nft_set_attr_set_data);
+EXPORT_SYMBOL(nftnl_set_attr_set_data, nft_set_attr_set_data);
void nft_set_attr_set(struct nft_set *s, uint16_t attr, const void *data)
{
nft_set_attr_set_data(s, attr, data, nft_set_attr_validate[attr]);
}
-EXPORT_SYMBOL(nft_set_attr_set);
+EXPORT_SYMBOL(nftnl_set_attr_set, nft_set_attr_set);
void nft_set_attr_set_u32(struct nft_set *s, uint16_t attr, uint32_t val)
{
nft_set_attr_set(s, attr, &val);
}
-EXPORT_SYMBOL(nft_set_attr_set_u32);
+EXPORT_SYMBOL(nftnl_set_attr_set_u32, nft_set_attr_set_u32);
void nft_set_attr_set_u64(struct nft_set *s, uint16_t attr, uint64_t val)
{
nft_set_attr_set(s, attr, &val);
}
-EXPORT_SYMBOL(nft_set_attr_set_u64);
+EXPORT_SYMBOL(nftnl_set_attr_set_u64, nft_set_attr_set_u64);
void nft_set_attr_set_str(struct nft_set *s, uint16_t attr, const char *str)
{
nft_set_attr_set(s, attr, str);
}
-EXPORT_SYMBOL(nft_set_attr_set_str);
+EXPORT_SYMBOL(nftnl_set_attr_set_str, nft_set_attr_set_str);
const void *nft_set_attr_get_data(struct nft_set *s, uint16_t attr,
uint32_t *data_len)
}
return NULL;
}
-EXPORT_SYMBOL(nft_set_attr_get_data);
+EXPORT_SYMBOL(nftnl_set_attr_get_data, nft_set_attr_get_data);
const void *nft_set_attr_get(struct nft_set *s, uint16_t attr)
{
uint32_t data_len;
return nft_set_attr_get_data(s, attr, &data_len);
}
-EXPORT_SYMBOL(nft_set_attr_get);
+EXPORT_SYMBOL(nftnl_set_attr_get, nft_set_attr_get);
const char *nft_set_attr_get_str(struct nft_set *s, uint16_t attr)
{
return nft_set_attr_get(s, attr);
}
-EXPORT_SYMBOL(nft_set_attr_get_str);
+EXPORT_SYMBOL(nftnl_set_attr_get_str, nft_set_attr_get_str);
uint32_t nft_set_attr_get_u32(struct nft_set *s, uint16_t attr)
{
return val ? *val : 0;
}
-EXPORT_SYMBOL(nft_set_attr_get_u32);
+EXPORT_SYMBOL(nftnl_set_attr_get_u32, nft_set_attr_get_u32);
uint64_t nft_set_attr_get_u64(struct nft_set *s, uint16_t attr)
{
return val ? *val : 0;
}
-EXPORT_SYMBOL(nft_set_attr_get_u64);
+EXPORT_SYMBOL(nftnl_set_attr_get_u64, nft_set_attr_get_u64);
struct nft_set *nft_set_clone(const struct nft_set *set)
{
if (s->flags & (1 << NFT_SET_ATTR_GC_INTERVAL))
mnl_attr_put_u32(nlh, NFTA_SET_GC_INTERVAL, htonl(s->gc_interval));
}
-EXPORT_SYMBOL(nft_set_nlmsg_build_payload);
+EXPORT_SYMBOL(nftnl_set_nlmsg_build_payload, nft_set_nlmsg_build_payload);
static int nft_set_parse_attr_cb(const struct nlattr *attr, void *data)
{
return ret;
}
-EXPORT_SYMBOL(nft_set_nlmsg_parse);
+EXPORT_SYMBOL(nftnl_set_nlmsg_parse, nft_set_nlmsg_parse);
#ifdef JSON_PARSING
static int nft_jansson_parse_set_info(struct nft_set *s, json_t *tree,
{
return nft_set_do_parse(s, type, data, err, NFT_PARSE_BUFFER);
}
-EXPORT_SYMBOL(nft_set_parse);
+EXPORT_SYMBOL(nftnl_set_parse, nft_set_parse);
int nft_set_parse_file(struct nft_set *s, enum nft_parse_type type,
FILE *fp, struct nft_parse_err *err)
{
return nft_set_do_parse(s, type, fp, err, NFT_PARSE_FILE);
}
-EXPORT_SYMBOL(nft_set_parse_file);
+EXPORT_SYMBOL(nftnl_set_parse_file, nft_set_parse_file);
static int nft_set_snprintf_json(char *buf, size_t size, struct nft_set *s,
uint32_t type, uint32_t flags)
return nft_set_cmd_snprintf(buf, size, s, nft_flag2cmd(flags), type,
flags);
}
-EXPORT_SYMBOL(nft_set_snprintf);
+EXPORT_SYMBOL(nftnl_set_snprintf, nft_set_snprintf);
static inline int nft_set_do_snprintf(char *buf, size_t size, void *s,
uint32_t cmd, uint32_t type,
return nft_fprintf(fp, s, NFT_CMD_UNSPEC, type, flags,
nft_set_do_snprintf);
}
-EXPORT_SYMBOL(nft_set_fprintf);
+EXPORT_SYMBOL(nftnl_set_fprintf, nft_set_fprintf);
void nft_set_elem_add(struct nft_set *s, struct nft_set_elem *elem)
{
list_add_tail(&elem->head, &s->element_list);
}
-EXPORT_SYMBOL(nft_set_elem_add);
+EXPORT_SYMBOL(nftnl_set_elem_add, nft_set_elem_add);
struct nft_set_list {
struct list_head list;
return list;
}
-EXPORT_SYMBOL(nft_set_list_alloc);
+EXPORT_SYMBOL(nftnl_set_list_alloc, nft_set_list_alloc);
void nft_set_list_free(struct nft_set_list *list)
{
}
xfree(list);
}
-EXPORT_SYMBOL(nft_set_list_free);
+EXPORT_SYMBOL(nftnl_set_list_free, nft_set_list_free);
int nft_set_list_is_empty(struct nft_set_list *list)
{
return list_empty(&list->list);
}
-EXPORT_SYMBOL(nft_set_list_is_empty);
+EXPORT_SYMBOL(nftnl_set_list_is_empty, nft_set_list_is_empty);
void nft_set_list_add(struct nft_set *s, struct nft_set_list *list)
{
list_add(&s->head, &list->list);
}
-EXPORT_SYMBOL(nft_set_list_add);
+EXPORT_SYMBOL(nftnl_set_list_add, nft_set_list_add);
void nft_set_list_add_tail(struct nft_set *s, struct nft_set_list *list)
{
list_add_tail(&s->head, &list->list);
}
-EXPORT_SYMBOL(nft_set_list_add_tail);
+EXPORT_SYMBOL(nftnl_set_list_add_tail, nft_set_list_add_tail);
void nft_set_list_del(struct nft_set *s)
{
list_del(&s->head);
}
-EXPORT_SYMBOL(nft_set_list_del);
+EXPORT_SYMBOL(nftnl_set_list_del, nft_set_list_del);
int nft_set_list_foreach(struct nft_set_list *set_list,
int (*cb)(struct nft_set *t, void *data), void *data)
}
return 0;
}
-EXPORT_SYMBOL(nft_set_list_foreach);
+EXPORT_SYMBOL(nftnl_set_list_foreach, nft_set_list_foreach);
struct nft_set_list_iter {
struct nft_set_list *list;
return iter;
}
-EXPORT_SYMBOL(nft_set_list_iter_create);
+EXPORT_SYMBOL(nftnl_set_list_iter_create, nft_set_list_iter_create);
struct nft_set *nft_set_list_iter_cur(struct nft_set_list_iter *iter)
{
return iter->cur;
}
-EXPORT_SYMBOL(nft_set_list_iter_cur);
+EXPORT_SYMBOL(nftnl_set_list_iter_cur, nft_set_list_iter_cur);
struct nft_set *nft_set_list_iter_next(struct nft_set_list_iter *iter)
{
return s;
}
-EXPORT_SYMBOL(nft_set_list_iter_next);
+EXPORT_SYMBOL(nftnl_set_list_iter_next, nft_set_list_iter_next);
void nft_set_list_iter_destroy(struct nft_set_list_iter *iter)
{
xfree(iter);
}
-EXPORT_SYMBOL(nft_set_list_iter_destroy);
+EXPORT_SYMBOL(nftnl_set_list_iter_destroy, nft_set_list_iter_destroy);
static struct nft_set *nft_set_lookup(const char *this_set_name,
struct nft_set_list *set_list)
return s;
}
-EXPORT_SYMBOL(nft_set_elem_alloc);
+EXPORT_SYMBOL(nftnl_set_elem_alloc, nft_set_elem_alloc);
void nft_set_elem_free(struct nft_set_elem *s)
{
xfree(s);
}
-EXPORT_SYMBOL(nft_set_elem_free);
+EXPORT_SYMBOL(nftnl_set_elem_free, nft_set_elem_free);
bool nft_set_elem_attr_is_set(const struct nft_set_elem *s, uint16_t attr)
{
return s->flags & (1 << attr);
}
-EXPORT_SYMBOL(nft_set_elem_attr_is_set);
+EXPORT_SYMBOL(nftnl_set_elem_attr_is_set, nft_set_elem_attr_is_set);
void nft_set_elem_attr_unset(struct nft_set_elem *s, uint16_t attr)
{
s->flags &= ~(1 << attr);
}
-EXPORT_SYMBOL(nft_set_elem_attr_unset);
+EXPORT_SYMBOL(nftnl_set_elem_attr_unset, nft_set_elem_attr_unset);
void nft_set_elem_attr_set(struct nft_set_elem *s, uint16_t attr,
const void *data, uint32_t data_len)
}
s->flags |= (1 << attr);
}
-EXPORT_SYMBOL(nft_set_elem_attr_set);
+EXPORT_SYMBOL(nftnl_set_elem_attr_set, nft_set_elem_attr_set);
void nft_set_elem_attr_set_u32(struct nft_set_elem *s, uint16_t attr, uint32_t val)
{
nft_set_elem_attr_set(s, attr, &val, sizeof(uint32_t));
}
-EXPORT_SYMBOL(nft_set_elem_attr_set_u32);
+EXPORT_SYMBOL(nftnl_set_elem_attr_set_u32, nft_set_elem_attr_set_u32);
void nft_set_elem_attr_set_u64(struct nft_set_elem *s, uint16_t attr, uint64_t val)
{
nft_set_elem_attr_set(s, attr, &val, sizeof(uint64_t));
}
-EXPORT_SYMBOL(nft_set_elem_attr_set_u64);
+EXPORT_SYMBOL(nftnl_set_elem_attr_set_u64, nft_set_elem_attr_set_u64);
void nft_set_elem_attr_set_str(struct nft_set_elem *s, uint16_t attr, const char *str)
{
nft_set_elem_attr_set(s, attr, str, strlen(str));
}
-EXPORT_SYMBOL(nft_set_elem_attr_set_str);
+EXPORT_SYMBOL(nftnl_set_elem_attr_set_str, nft_set_elem_attr_set_str);
const void *nft_set_elem_attr_get(struct nft_set_elem *s, uint16_t attr, uint32_t *data_len)
{
}
return NULL;
}
-EXPORT_SYMBOL(nft_set_elem_attr_get);
+EXPORT_SYMBOL(nftnl_set_elem_attr_get, nft_set_elem_attr_get);
const char *nft_set_elem_attr_get_str(struct nft_set_elem *s, uint16_t attr)
{
return nft_set_elem_attr_get(s, attr, &size);
}
-EXPORT_SYMBOL(nft_set_elem_attr_get_str);
+EXPORT_SYMBOL(nftnl_set_elem_attr_get_str, nft_set_elem_attr_get_str);
uint32_t nft_set_elem_attr_get_u32(struct nft_set_elem *s, uint16_t attr)
{
uint32_t val = *((uint32_t *)nft_set_elem_attr_get(s, attr, &size));
return val;
}
-EXPORT_SYMBOL(nft_set_elem_attr_get_u32);
+EXPORT_SYMBOL(nftnl_set_elem_attr_get_u32, nft_set_elem_attr_get_u32);
uint64_t nft_set_elem_attr_get_u64(struct nft_set_elem *s, uint16_t attr)
{
uint64_t val = *((uint64_t *)nft_set_elem_attr_get(s, attr, &size));
return val;
}
-EXPORT_SYMBOL(nft_set_elem_attr_get_u64);
+EXPORT_SYMBOL(nftnl_set_elem_attr_get_u64, nft_set_elem_attr_get_u64);
struct nft_set_elem *nft_set_elem_clone(struct nft_set_elem *elem)
{
mnl_attr_nest_end(nlh, nest1);
}
-EXPORT_SYMBOL(nft_set_elems_nlmsg_build_payload);
+EXPORT_SYMBOL(nftnl_set_elems_nlmsg_build_payload, nft_set_elems_nlmsg_build_payload);
static int nft_set_elem_parse_attr_cb(const struct nlattr *attr, void *data)
{
return ret;
}
-EXPORT_SYMBOL(nft_set_elems_nlmsg_parse);
+EXPORT_SYMBOL(nftnl_set_elems_nlmsg_parse, nft_set_elems_nlmsg_parse);
#ifdef XML_PARSING
int nft_mxml_set_elem_parse(mxml_node_t *tree, struct nft_set_elem *e,
{
return nft_set_elem_do_parse(e, type, data, err, NFT_PARSE_BUFFER);
}
-EXPORT_SYMBOL(nft_set_elem_parse);
+EXPORT_SYMBOL(nftnl_set_elem_parse, nft_set_elem_parse);
int nft_set_elem_parse_file(struct nft_set_elem *e, enum nft_parse_type type,
FILE *fp, struct nft_parse_err *err)
{
return nft_set_elem_do_parse(e, type, fp, err, NFT_PARSE_FILE);
}
-EXPORT_SYMBOL(nft_set_elem_parse_file);
+EXPORT_SYMBOL(nftnl_set_elem_parse_file, nft_set_elem_parse_file);
static int nft_set_elem_snprintf_json(char *buf, size_t size,
struct nft_set_elem *e, uint32_t flags)
return nft_set_elem_cmd_snprintf(buf, size, e, nft_flag2cmd(flags),
type, flags);
}
-EXPORT_SYMBOL(nft_set_elem_snprintf);
+EXPORT_SYMBOL(nftnl_set_elem_snprintf, nft_set_elem_snprintf);
static inline int nft_set_elem_do_snprintf(char *buf, size_t size, void *e,
uint32_t cmd, uint32_t type,
return nft_fprintf(fp, se, NFT_CMD_UNSPEC, type, flags,
nft_set_elem_do_snprintf);
}
-EXPORT_SYMBOL(nft_set_elem_fprintf);
+EXPORT_SYMBOL(nftnl_set_elem_fprintf, nft_set_elem_fprintf);
int nft_set_elem_foreach(struct nft_set *s,
int (*cb)(struct nft_set_elem *e, void *data),
}
return 0;
}
-EXPORT_SYMBOL(nft_set_elem_foreach);
+EXPORT_SYMBOL(nftnl_set_elem_foreach, nft_set_elem_foreach);
struct nft_set_elems_iter {
struct nft_set *set;
return iter;
}
-EXPORT_SYMBOL(nft_set_elems_iter_create);
+EXPORT_SYMBOL(nftnl_set_elems_iter_create, nft_set_elems_iter_create);
struct nft_set_elem *nft_set_elems_iter_cur(struct nft_set_elems_iter *iter)
{
return iter->cur;
}
-EXPORT_SYMBOL(nft_set_elems_iter_cur);
+EXPORT_SYMBOL(nftnl_set_elems_iter_cur, nft_set_elems_iter_cur);
struct nft_set_elem *nft_set_elems_iter_next(struct nft_set_elems_iter *iter)
{
return s;
}
-EXPORT_SYMBOL(nft_set_elems_iter_next);
+EXPORT_SYMBOL(nftnl_set_elems_iter_next, nft_set_elems_iter_next);
void nft_set_elems_iter_destroy(struct nft_set_elems_iter *iter)
{
xfree(iter);
}
-EXPORT_SYMBOL(nft_set_elems_iter_destroy);
+EXPORT_SYMBOL(nftnl_set_elems_iter_destroy, nft_set_elems_iter_destroy);
static bool nft_attr_nest_overflow(struct nlmsghdr *nlh,
const struct nlattr *from,
return ret;
}
-EXPORT_SYMBOL(nft_set_elems_nlmsg_build_payload_iter);
+EXPORT_SYMBOL(nftnl_set_elems_nlmsg_build_payload_iter, nft_set_elems_nlmsg_build_payload_iter);
{
return calloc(1, sizeof(struct nft_table));
}
-EXPORT_SYMBOL(nft_table_alloc);
+EXPORT_SYMBOL(nftnl_table_alloc, nft_table_alloc);
void nft_table_free(struct nft_table *t)
{
xfree(t);
}
-EXPORT_SYMBOL(nft_table_free);
+EXPORT_SYMBOL(nftnl_table_free, nft_table_free);
bool nft_table_attr_is_set(const struct nft_table *t, uint16_t attr)
{
return t->flags & (1 << attr);
}
-EXPORT_SYMBOL(nft_table_attr_is_set);
+EXPORT_SYMBOL(nftnl_table_attr_is_set, nft_table_attr_is_set);
void nft_table_attr_unset(struct nft_table *t, uint16_t attr)
{
}
t->flags &= ~(1 << attr);
}
-EXPORT_SYMBOL(nft_table_attr_unset);
+EXPORT_SYMBOL(nftnl_table_attr_unset, nft_table_attr_unset);
static uint32_t nft_table_attr_validate[NFT_TABLE_ATTR_MAX + 1] = {
[NFT_TABLE_ATTR_FLAGS] = sizeof(uint32_t),
}
t->flags |= (1 << attr);
}
-EXPORT_SYMBOL(nft_table_attr_set_data);
+EXPORT_SYMBOL(nftnl_table_attr_set_data, nft_table_attr_set_data);
void nft_table_attr_set(struct nft_table *t, uint16_t attr, const void *data)
{
nft_table_attr_set_data(t, attr, data, nft_table_attr_validate[attr]);
}
-EXPORT_SYMBOL(nft_table_attr_set);
+EXPORT_SYMBOL(nftnl_table_attr_set, nft_table_attr_set);
void nft_table_attr_set_u32(struct nft_table *t, uint16_t attr, uint32_t val)
{
nft_table_attr_set_data(t, attr, &val, sizeof(uint32_t));
}
-EXPORT_SYMBOL(nft_table_attr_set_u32);
+EXPORT_SYMBOL(nftnl_table_attr_set_u32, nft_table_attr_set_u32);
void nft_table_attr_set_u8(struct nft_table *t, uint16_t attr, uint8_t val)
{
nft_table_attr_set_data(t, attr, &val, sizeof(uint8_t));
}
-EXPORT_SYMBOL(nft_table_attr_set_u8);
+EXPORT_SYMBOL(nftnl_table_attr_set_u8, nft_table_attr_set_u8);
void nft_table_attr_set_str(struct nft_table *t, uint16_t attr, const char *str)
{
nft_table_attr_set_data(t, attr, str, 0);
}
-EXPORT_SYMBOL(nft_table_attr_set_str);
+EXPORT_SYMBOL(nftnl_table_attr_set_str, nft_table_attr_set_str);
const void *nft_table_attr_get_data(struct nft_table *t, uint16_t attr,
uint32_t *data_len)
}
return NULL;
}
-EXPORT_SYMBOL(nft_table_attr_get_data);
+EXPORT_SYMBOL(nftnl_table_attr_get_data, nft_table_attr_get_data);
const void *nft_table_attr_get(struct nft_table *t, uint16_t attr)
{
uint32_t data_len;
return nft_table_attr_get_data(t, attr, &data_len);
}
-EXPORT_SYMBOL(nft_table_attr_get);
+EXPORT_SYMBOL(nftnl_table_attr_get, nft_table_attr_get);
uint32_t nft_table_attr_get_u32(struct nft_table *t, uint16_t attr)
{
const void *ret = nft_table_attr_get(t, attr);
return ret == NULL ? 0 : *((uint32_t *)ret);
}
-EXPORT_SYMBOL(nft_table_attr_get_u32);
+EXPORT_SYMBOL(nftnl_table_attr_get_u32, nft_table_attr_get_u32);
uint8_t nft_table_attr_get_u8(struct nft_table *t, uint16_t attr)
{
const void *ret = nft_table_attr_get(t, attr);
return ret == NULL ? 0 : *((uint8_t *)ret);
}
-EXPORT_SYMBOL(nft_table_attr_get_u8);
+EXPORT_SYMBOL(nftnl_table_attr_get_u8, nft_table_attr_get_u8);
const char *nft_table_attr_get_str(struct nft_table *t, uint16_t attr)
{
return nft_table_attr_get(t, attr);
}
-EXPORT_SYMBOL(nft_table_attr_get_str);
+EXPORT_SYMBOL(nftnl_table_attr_get_str, nft_table_attr_get_str);
void nft_table_nlmsg_build_payload(struct nlmsghdr *nlh, const struct nft_table *t)
{
if (t->flags & (1 << NFT_TABLE_ATTR_FLAGS))
mnl_attr_put_u32(nlh, NFTA_TABLE_FLAGS, htonl(t->table_flags));
}
-EXPORT_SYMBOL(nft_table_nlmsg_build_payload);
+EXPORT_SYMBOL(nftnl_table_nlmsg_build_payload, nft_table_nlmsg_build_payload);
static int nft_table_parse_attr_cb(const struct nlattr *attr, void *data)
{
return 0;
}
-EXPORT_SYMBOL(nft_table_nlmsg_parse);
+EXPORT_SYMBOL(nftnl_table_nlmsg_parse, nft_table_nlmsg_parse);
#ifdef XML_PARSING
int nft_mxml_table_parse(mxml_node_t *tree, struct nft_table *t,
{
return nft_table_do_parse(t, type, data, err, NFT_PARSE_BUFFER);
}
-EXPORT_SYMBOL(nft_table_parse);
+EXPORT_SYMBOL(nftnl_table_parse, nft_table_parse);
int nft_table_parse_file(struct nft_table *t, enum nft_parse_type type,
FILE *fp, struct nft_parse_err *err)
{
return nft_table_do_parse(t, type, fp, err, NFT_PARSE_FILE);
}
-EXPORT_SYMBOL(nft_table_parse_file);
+EXPORT_SYMBOL(nftnl_table_parse_file, nft_table_parse_file);
static int nft_table_export(char *buf, size_t size, struct nft_table *t,
int type)
return nft_table_cmd_snprintf(buf, size, t, nft_flag2cmd(flags), type,
flags);
}
-EXPORT_SYMBOL(nft_table_snprintf);
+EXPORT_SYMBOL(nftnl_table_snprintf, nft_table_snprintf);
static inline int nft_table_do_snprintf(char *buf, size_t size, void *t,
uint32_t cmd, uint32_t type,
return nft_fprintf(fp, t, NFT_CMD_UNSPEC, type, flags,
nft_table_do_snprintf);
}
-EXPORT_SYMBOL(nft_table_fprintf);
+EXPORT_SYMBOL(nftnl_table_fprintf, nft_table_fprintf);
struct nft_table_list {
struct list_head list;
return list;
}
-EXPORT_SYMBOL(nft_table_list_alloc);
+EXPORT_SYMBOL(nftnl_table_list_alloc, nft_table_list_alloc);
void nft_table_list_free(struct nft_table_list *list)
{
}
xfree(list);
}
-EXPORT_SYMBOL(nft_table_list_free);
+EXPORT_SYMBOL(nftnl_table_list_free, nft_table_list_free);
int nft_table_list_is_empty(struct nft_table_list *list)
{
return list_empty(&list->list);
}
-EXPORT_SYMBOL(nft_table_list_is_empty);
+EXPORT_SYMBOL(nftnl_table_list_is_empty, nft_table_list_is_empty);
void nft_table_list_add(struct nft_table *r, struct nft_table_list *list)
{
list_add(&r->head, &list->list);
}
-EXPORT_SYMBOL(nft_table_list_add);
+EXPORT_SYMBOL(nftnl_table_list_add, nft_table_list_add);
void nft_table_list_add_tail(struct nft_table *r, struct nft_table_list *list)
{
list_add_tail(&r->head, &list->list);
}
-EXPORT_SYMBOL(nft_table_list_add_tail);
+EXPORT_SYMBOL(nftnl_table_list_add_tail, nft_table_list_add_tail);
void nft_table_list_del(struct nft_table *t)
{
list_del(&t->head);
}
-EXPORT_SYMBOL(nft_table_list_del);
+EXPORT_SYMBOL(nftnl_table_list_del, nft_table_list_del);
int nft_table_list_foreach(struct nft_table_list *table_list,
int (*cb)(struct nft_table *t, void *data),
}
return 0;
}
-EXPORT_SYMBOL(nft_table_list_foreach);
+EXPORT_SYMBOL(nftnl_table_list_foreach, nft_table_list_foreach);
struct nft_table_list_iter {
struct nft_table_list *list;
return iter;
}
-EXPORT_SYMBOL(nft_table_list_iter_create);
+EXPORT_SYMBOL(nftnl_table_list_iter_create, nft_table_list_iter_create);
struct nft_table *nft_table_list_iter_next(struct nft_table_list_iter *iter)
{
return r;
}
-EXPORT_SYMBOL(nft_table_list_iter_next);
+EXPORT_SYMBOL(nftnl_table_list_iter_next, nft_table_list_iter_next);
void nft_table_list_iter_destroy(struct nft_table_list_iter *iter)
{
xfree(iter);
}
-EXPORT_SYMBOL(nft_table_list_iter_destroy);
+EXPORT_SYMBOL(nftnl_table_list_iter_destroy, nft_table_list_iter_destroy);