#include <unistd.h>
#include <stdarg.h>
#include <stdlib.h>
+#include <getopt.h>
#include <netinet/in.h>
#if 0
FWD_P_UNSPEC = 0,
FWD_P_DROP = 1,
FWD_P_REJECT = 2,
- FWD_P_ACCEPT = 3
+ FWD_P_ACCEPT = 3
};
enum fwd_stype {
struct fwd_zone {
char *name;
struct fwd_network_list *networks;
+ struct fwd_data *forwardings;
+ struct fwd_data *redirects;
+ struct fwd_data *rules;
enum fwd_policy input;
enum fwd_policy forward;
enum fwd_policy output;
struct fwd_cidr *dest_ip;
struct fwd_portrange *dest_port;
struct fwd_proto *proto;
+ int clone; /* true if rule is cloned (tcpudp -> tcp + udp) */
};
struct fwd_rule {
struct fwd_proto *proto;
struct fwd_icmptype *icmp_type;
enum fwd_policy target;
+ int clone; /* true if rule is cloned (tcpudp -> tcp + udp) */
};
struct fwd_include {