}
if (r->flags & IP_NAT_RANGE_PROTO_RANDOM)
- printf("random");
+ printf("random ");
}
/* Saves the union ipt_targinfo in parsable form to stdout. */
printf("-%hu", ntohs(r->max.tcp.port));
printf(" ");
}
+
+ if (r->flags & IP_NAT_RANGE_PROTO_RANDOM)
+ printf("--random ");
}
static struct iptables_target masq = { NULL,
int count;
struct ipt_same_info *mr
= (struct ipt_same_info *)target->data;
+ int random = 0;
for (count = 0; count < mr->rangesize; count++) {
struct ip_nat_range *r = &mr->range[count];
printf(" ");
else
printf("-%s ", addr_to_dotted(&a));
+ if (r->flags & IP_NAT_RANGE_PROTO_RANDOM)
+ random = 1;
}
if (mr->info & IPT_SAME_NODST)
printf("--nodst ");
+
+ if (random)
+ printf("--random ");
}
static struct iptables_target same = {
if (r->max.tcp.port != r->min.tcp.port)
printf("-%hu", ntohs(r->max.tcp.port));
}
- if (r->flags & IP_NAT_RANGE_PROTO_RANDOM)
- printf(" random");
}
/* Prints out the targinfo. */
for (i = 0; i < info->mr.rangesize; i++) {
print_range(&info->mr.range[i]);
printf(" ");
+ if (info->mr.range[i].flags & IP_NAT_RANGE_PROTO_RANDOM)
+ printf("random ");
}
}
printf("--to-source ");
print_range(&info->mr.range[i]);
printf(" ");
+ if (info->mr.range[i].flags & IP_NAT_RANGE_PROTO_RANDOM)
+ printf("--random ");
}
}