diff --git a/sys/netinet/ip_fw.h b/sys/netinet/ip_fw.h index 4d3099a781a..e09646d6047 100644 --- a/sys/netinet/ip_fw.h +++ b/sys/netinet/ip_fw.h @@ -141,6 +141,28 @@ typedef struct _ip_fw3_opheader { #define IP_FW_NAT64CLAT_STATS 164 /* Get NAT64CLAT instance statistics */ #define IP_FW_NAT64CLAT_RESET_STATS 165 /* Reset NAT64CLAT instance statistics */ +#define IP_FW_SYNC_XCONFIG 171 /* Create/modify sync instance */ +#define IP_FW_SYNC_DESTROY 172 /* Destroys sync instance */ +#define IP_FW_SYNC_XGETCONFIG 173 /* Get sync instance config */ +#define IP_FW_SYNC_LIST 174 /* List of exported states */ +#define IP_FW_SYNC_START 175 /* Start of sync service */ +#define IP_FW_SYNC_STOP 176 /* Stop of sync service */ + +struct ipfw_sync_cfg { + char name[64]; + u_char mode; + u_char addrs; + struct cfg_addr { + union { + struct sockaddr addr; + struct sockaddr_in ip4; + struct sockaddr_in6 ip6; + }; + } addr[3]; +}; +#define CFG_SYNC_EDGE 1 +#define CFG_SYNC_COLLECTOR 2 + /* * The kernel representation of ipfw rules is made of a list of * 'instructions' (for all practical purposes equivalent to BPF