static void hl_print(const void *ip, const struct xt_entry_match *match,
int numeric)
{
- static const char *op[] = {
+ static const char *const op[] = {
[IP6T_HL_EQ] = "==",
[IP6T_HL_NE] = "!=",
[IP6T_HL_LT] = "<",
static void DNAT_print(const void *ip, const struct xt_entry_target *target,
int numeric)
{
- struct ipt_natinfo *info = (void *)target;
+ const struct ipt_natinfo *info = (const void *)target;
unsigned int i = 0;
printf("to:");
static void DNAT_save(const void *ip, const struct xt_entry_target *target)
{
- struct ipt_natinfo *info = (void *)target;
+ const struct ipt_natinfo *info = (const void *)target;
unsigned int i = 0;
for (i = 0; i < info->mr.rangesize; i++) {
MASQUERADE_print(const void *ip, const struct xt_entry_target *target,
int numeric)
{
- struct nf_nat_multi_range *mr
- = (struct nf_nat_multi_range *)target->data;
- struct nf_nat_range *r = &mr->range[0];
+ const struct nf_nat_multi_range *mr = (const void *)target->data;
+ const struct nf_nat_range *r = &mr->range[0];
if (r->flags & IP_NAT_RANGE_PROTO_SPECIFIED) {
printf("masq ports: ");
static void
MASQUERADE_save(const void *ip, const struct xt_entry_target *target)
{
- struct nf_nat_multi_range *mr
- = (struct nf_nat_multi_range *)target->data;
- struct nf_nat_range *r = &mr->range[0];
+ const struct nf_nat_multi_range *mr = (const void *)target->data;
+ const struct nf_nat_range *r = &mr->range[0];
if (r->flags & IP_NAT_RANGE_PROTO_SPECIFIED) {
printf("--to-ports %hu", ntohs(r->min.tcp.port));
static void NETMAP_print(const void *ip, const struct xt_entry_target *target,
int numeric)
{
- struct nf_nat_multi_range *mr
- = (struct nf_nat_multi_range *)target->data;
- struct nf_nat_range *r = &mr->range[0];
+ const struct nf_nat_multi_range *mr = (const void *)target->data;
+ const struct nf_nat_range *r = &mr->range[0];
struct in_addr a;
int bits;
static void REDIRECT_print(const void *ip, const struct xt_entry_target *target,
int numeric)
{
- struct nf_nat_multi_range *mr
- = (struct nf_nat_multi_range *)target->data;
- struct nf_nat_range *r = &mr->range[0];
+ const struct nf_nat_multi_range *mr = (const void *)target->data;
+ const struct nf_nat_range *r = &mr->range[0];
if (r->flags & IP_NAT_RANGE_PROTO_SPECIFIED) {
printf("redir ports ");
static void REDIRECT_save(const void *ip, const struct xt_entry_target *target)
{
- struct nf_nat_multi_range *mr
- = (struct nf_nat_multi_range *)target->data;
- struct nf_nat_range *r = &mr->range[0];
+ const struct nf_nat_multi_range *mr = (const void *)target->data;
+ const struct nf_nat_range *r = &mr->range[0];
if (r->flags & IP_NAT_RANGE_PROTO_SPECIFIED) {
printf("--to-ports ");
int numeric)
{
unsigned int count;
- struct ipt_same_info *mr
- = (struct ipt_same_info *)target->data;
+ const struct ipt_same_info *mr = (const void *)target->data;
int random_selection = 0;
printf("same:");
for (count = 0; count < mr->rangesize; count++) {
- struct nf_nat_range *r = &mr->range[count];
+ const struct nf_nat_range *r = &mr->range[count];
struct in_addr a;
a.s_addr = r->min_ip;
static void SAME_save(const void *ip, const struct xt_entry_target *target)
{
unsigned int count;
- struct ipt_same_info *mr
- = (struct ipt_same_info *)target->data;
+ const struct ipt_same_info *mr = (const void *)target->data;
int random_selection = 0;
for (count = 0; count < mr->rangesize; count++) {
- struct nf_nat_range *r = &mr->range[count];
+ const struct nf_nat_range *r = &mr->range[count];
struct in_addr a;
a.s_addr = r->min_ip;
static void SET_print(const void *ip, const struct xt_entry_target *target,
int numeric)
{
- struct ipt_set_info_target *info =
- (struct ipt_set_info_target *) target->data;
+ const struct ipt_set_info_target *info = (const void *)target->data;
print_target("add-set", &info->add_set);
print_target("del-set", &info->del_set);
static void SET_save(const void *ip, const struct xt_entry_target *target)
{
- struct ipt_set_info_target *info =
- (struct ipt_set_info_target *) target->data;
+ const struct ipt_set_info_target *info = (const void *)target->data;
print_target("--add-set", &info->add_set);
print_target("--del-set", &info->del_set);
static void SNAT_print(const void *ip, const struct xt_entry_target *target,
int numeric)
{
- struct ipt_natinfo *info = (void *)target;
+ const struct ipt_natinfo *info = (const void *)target;
unsigned int i = 0;
printf("to:");
static void SNAT_save(const void *ip, const struct xt_entry_target *target)
{
- struct ipt_natinfo *info = (void *)target;
+ const struct ipt_natinfo *info = (const void *)target;
unsigned int i = 0;
for (i = 0; i < info->mr.rangesize; i++) {
static void realm_print(const void *ip, const struct xt_entry_match *match,
int numeric)
{
- struct ipt_realm_info *ri = (struct ipt_realm_info *) match->data;
+ const struct ipt_realm_info *ri = (const void *)match->data;
if (ri->invert)
printf("! ");
static void realm_save(const void *ip, const struct xt_entry_match *match)
{
- struct ipt_realm_info *ri = (struct ipt_realm_info *) match->data;
+ const struct ipt_realm_info *ri = (const void *)match->data;
if (ri->invert)
printf("! ");
static void set_print(const void *ip, const struct xt_entry_match *match,
int numeric)
{
- struct ipt_set_info_match *info =
- (struct ipt_set_info_match *) match->data;
+ const struct ipt_set_info_match *info = (const void *)match->data;
print_match("set", &info->match_set);
}
static void set_save(const void *ip, const struct xt_entry_match *match)
{
- struct ipt_set_info_match *info =
- (struct ipt_set_info_match *) match->data;
+ const struct ipt_set_info_match *info = (const void *)match->data;
print_match("--set", &info->match_set);
}
"or --restore is allowed");
}
-static void print_connsecmark(struct xt_connsecmark_target_info *info)
+static void print_connsecmark(const struct xt_connsecmark_target_info *info)
{
switch (info->mode) {
case CONNSECMARK_SAVE:
CONNSECMARK_print(const void *ip, const struct xt_entry_target *target,
int numeric)
{
- struct xt_connsecmark_target_info *info =
+ const struct xt_connsecmark_target_info *info =
(struct xt_connsecmark_target_info*)(target)->data;
printf("CONNSECMARK ");
static void
CONNSECMARK_save(const void *ip, const struct xt_entry_target *target)
{
- struct xt_connsecmark_target_info *info =
+ const struct xt_connsecmark_target_info *info =
(struct xt_connsecmark_target_info*)target->data;
printf("--");
static void
__RATEEST_print(const struct xt_entry_target *target, const char *prefix)
{
- struct xt_rateest_target_info *info = (void *)target->data;
+ const struct xt_rateest_target_info *info = (const void *)target->data;
unsigned int local_interval;
unsigned int local_ewma_log;
xtables_error(PARAMETER_PROBLEM, PFX "parameter required");
}
-static void print_secmark(struct xt_secmark_target_info *info)
+static void print_secmark(const struct xt_secmark_target_info *info)
{
switch (info->mode) {
case SECMARK_MODE_SEL:
static void SECMARK_print(const void *ip, const struct xt_entry_target *target,
int numeric)
{
- struct xt_secmark_target_info *info =
+ const struct xt_secmark_target_info *info =
(struct xt_secmark_target_info*)(target)->data;
printf("SECMARK ");
static void SECMARK_save(const void *ip, const struct xt_entry_target *target)
{
- struct xt_secmark_target_info *info =
+ const struct xt_secmark_target_info *info =
(struct xt_secmark_target_info*)target->data;
printf("--");
static void
comment_print(const void *ip, const struct xt_entry_match *match, int numeric)
{
- struct xt_comment_info *commentinfo = (struct xt_comment_info *)match->data;
+ struct xt_comment_info *commentinfo = (void *)match->data;
commentinfo->comment[XT_MAX_COMMENT_LEN-1] = '\0';
printf("/* %s */ ", commentinfo->comment);
static void
comment_save(const void *ip, const struct xt_entry_match *match)
{
- struct xt_comment_info *commentinfo = (struct xt_comment_info *)match->data;
+ struct xt_comment_info *commentinfo = (void *)match->data;
commentinfo->comment[XT_MAX_COMMENT_LEN-1] = '\0';
printf("--comment ");
"`--connbytes-dir' and `--connbytes-mode'");
}
-static void print_mode(struct xt_connbytes_info *sinfo)
+static void print_mode(const struct xt_connbytes_info *sinfo)
{
switch (sinfo->what) {
case XT_CONNBYTES_PKTS:
}
}
-static void print_direction(struct xt_connbytes_info *sinfo)
+static void print_direction(const struct xt_connbytes_info *sinfo)
{
switch (sinfo->direction) {
case XT_CONNBYTES_DIR_ORIGINAL:
static void
connbytes_print(const void *ip, const struct xt_entry_match *match, int numeric)
{
- struct xt_connbytes_info *sinfo = (struct xt_connbytes_info *)match->data;
+ const struct xt_connbytes_info *sinfo = (const void *)match->data;
if (sinfo->count.from > sinfo->count.to)
printf("connbytes ! %llu:%llu ",
static void connbytes_save(const void *ip, const struct xt_entry_match *match)
{
- struct xt_connbytes_info *sinfo = (struct xt_connbytes_info *)match->data;
+ const struct xt_connbytes_info *sinfo = (const void *)match->data;
if (sinfo->count.from > sinfo->count.to)
printf("! --connbytes %llu:%llu ",
static void
connmark_print(const void *ip, const struct xt_entry_match *match, int numeric)
{
- struct xt_connmark_info *info = (struct xt_connmark_info *)match->data;
+ const struct xt_connmark_info *info = (const void *)match->data;
printf("CONNMARK match ");
if (info->invert)
static void connmark_save(const void *ip, const struct xt_entry_match *match)
{
- struct xt_connmark_info *info = (struct xt_connmark_info *)match->data;
+ const struct xt_connmark_info *info = (const void *)match->data;
if (info->invert)
printf("! ");
}
static void
-print_addr(struct in_addr *addr, struct in_addr *mask, int inv, int numeric)
+print_addr(const struct in_addr *addr, const struct in_addr *mask,
+ int inv, int numeric)
{
char buf[BUFSIZ];
static void
matchinfo_print(const void *ip, const struct xt_entry_match *match, int numeric, const char *optpfx)
{
- struct xt_conntrack_info *sinfo = (void *)match->data;
+ const struct xt_conntrack_info *sinfo = (const void *)match->data;
if(sinfo->flags & XT_CONNTRACK_STATE) {
if (sinfo->invflags & XT_CONNTRACK_STATE)
static void hashlimit_print(const void *ip,
const struct xt_entry_match *match, int numeric)
{
- struct xt_hashlimit_info *r =
- (struct xt_hashlimit_info *)match->data;
+ const struct xt_hashlimit_info *r = (const void *)match->data;
fputs("limit: avg ", stdout); print_rate(r->cfg.avg);
printf("burst %u ", r->cfg.burst);
fputs("mode ", stdout);
static void hashlimit_save(const void *ip, const struct xt_entry_match *match)
{
- struct xt_hashlimit_info *r =
- (struct xt_hashlimit_info *)match->data;
+ const struct xt_hashlimit_info *r = (const void *)match->data;
fputs("--hashlimit ", stdout); print_rate(r->cfg.avg);
if (r->cfg.burst != XT_HASHLIMIT_BURST)
static void
helper_print(const void *ip, const struct xt_entry_match *match, int numeric)
{
- struct xt_helper_info *info = (struct xt_helper_info *)match->data;
+ const struct xt_helper_info *info = (const void *)match->data;
printf("helper match %s\"%s\" ", info->invert ? "! " : "", info->name);
}
static void helper_save(const void *ip, const struct xt_entry_match *match)
{
- struct xt_helper_info *info = (struct xt_helper_info *)match->data;
+ const struct xt_helper_info *info = (const void *)match->data;
printf("%s--helper ",info->invert ? "! " : "");
xtables_save_string(info->name);
static void
limit_print(const void *ip, const struct xt_entry_match *match, int numeric)
{
- struct xt_rateinfo *r = (struct xt_rateinfo *)match->data;
+ const struct xt_rateinfo *r = (const void *)match->data;
printf("limit: avg "); print_rate(r->avg);
printf("burst %u ", r->burst);
}
static void limit_save(const void *ip, const struct xt_entry_match *match)
{
- struct xt_rateinfo *r = (struct xt_rateinfo *)match->data;
+ const struct xt_rateinfo *r = (const void *)match->data;
printf("--limit "); print_rate(r->avg);
if (r->burst != XT_LIMIT_BURST)
static void
mark_print(const void *ip, const struct xt_entry_match *match, int numeric)
{
- struct xt_mark_info *info = (struct xt_mark_info *)match->data;
+ const struct xt_mark_info *info = (const void *)match->data;
printf("MARK match ");
static void
mark_save(const void *ip, const struct xt_entry_match *match)
{
- struct xt_mark_info *info = (struct xt_mark_info *)match->data;
+ const struct xt_mark_info *info = (const void *)match->data;
if (info->invert)
printf("! ");
static void
physdev_print(const void *ip, const struct xt_entry_match *match, int numeric)
{
- struct xt_physdev_info *info =
- (struct xt_physdev_info*)match->data;
+ const struct xt_physdev_info *info = (const void *)match->data;
printf("PHYSDEV match");
if (info->bitmask & XT_PHYSDEV_OP_ISIN)
static void physdev_save(const void *ip, const struct xt_entry_match *match)
{
- struct xt_physdev_info *info =
- (struct xt_physdev_info*)match->data;
+ const struct xt_physdev_info *info = (const void *)match->data;
if (info->bitmask & XT_PHYSDEV_OP_ISIN)
printf("%s--physdev-is-in ",
xtables_error(PARAMETER_PROBLEM, "You must specify \"--pkt-type\"");
}
-static void print_pkttype(struct xt_pkttype_info *info)
+static void print_pkttype(const struct xt_pkttype_info *info)
{
unsigned int i;
static void pkttype_print(const void *ip, const struct xt_entry_match *match,
int numeric)
{
- struct xt_pkttype_info *info = (struct xt_pkttype_info *)match->data;
+ const struct xt_pkttype_info *info = (const void *)match->data;
printf("PKTTYPE %s= ", info->invert?"!":"");
print_pkttype(info);
static void pkttype_save(const void *ip, const struct xt_entry_match *match)
{
- struct xt_pkttype_info *info = (struct xt_pkttype_info *)match->data;
+ const struct xt_pkttype_info *info = (const void *)match->data;
printf("%s--pkt-type ", info->invert ? "! " : "");
print_pkttype(info);
static void
quota_print(const void *ip, const struct xt_entry_match *match, int numeric)
{
- struct xt_quota_info *q = (struct xt_quota_info *) match->data;
+ const struct xt_quota_info *q = (const void *)match->data;
printf("quota: %llu bytes", (unsigned long long) q->quota);
}
static void
quota_save(const void *ip, const struct xt_entry_match *match)
{
- struct xt_quota_info *q = (struct xt_quota_info *) match->data;
+ const struct xt_quota_info *q = (const void *)match->data;
printf("--quota %llu ", (unsigned long long) q->quota);
}
}
static void
-rateest_print_mode(struct xt_rateest_match_info *info, const char *prefix)
+rateest_print_mode(const struct xt_rateest_match_info *info,
+ const char *prefix)
{
if (info->flags & XT_RATEEST_MATCH_INVERT)
printf("! ");
static void
rateest_print(const void *ip, const struct xt_entry_match *match, int numeric)
{
- struct xt_rateest_match_info *info = (void *)match->data;
+ const struct xt_rateest_match_info *info = (const void *)match->data;
printf("rateest match ");
static void
rateest_save(const void *ip, const struct xt_entry_match *match)
{
- struct xt_rateest_match_info *info = (void *)match->data;
+ const struct xt_rateest_match_info *info = (const void *)match->data;
if (info->flags & XT_RATEEST_MATCH_REL) {
printf("--rateest1 %s ", info->name1);
const struct xt_entry_match *match,
int numeric)
{
- struct xt_state_info *sinfo = (struct xt_state_info *)match->data;
+ const struct xt_state_info *sinfo = (const void *)match->data;
printf("state ");
state_print_state(sinfo->statemask);
static void state_save(const void *ip, const struct xt_entry_match *match)
{
- struct xt_state_info *sinfo = (struct xt_state_info *)match->data;
+ const struct xt_state_info *sinfo = (const void *)match->data;
printf("--state ");
state_print_state(sinfo->statemask);
static void
statistic_print(const void *ip, const struct xt_entry_match *match, int numeric)
{
- struct xt_statistic_info *info = (struct xt_statistic_info *)match->data;
+ const struct xt_statistic_info *info = (const void *)match->data;
printf("statistic ");
print_match(info, "");
static void statistic_save(const void *ip, const struct xt_entry_match *match)
{
- struct xt_statistic_info *info = (struct xt_statistic_info *)match->data;
+ const struct xt_statistic_info *info = (const void *)match->data;
print_match(info, "--");
}
static void time_print(const void *ip, const struct xt_entry_match *match,
int numeric)
{
- struct xt_time_info *info = (void *)match->data;
+ const struct xt_time_info *info = (const void *)match->data;
unsigned int h, m, s;
printf("TIME ");