1800938fcabe76265d273fa0552dcf674d33973aaPablo Neira#ifndef _IPT_CLUSTERIP_H_target
2800938fcabe76265d273fa0552dcf674d33973aaPablo Neira#define _IPT_CLUSTERIP_H_target
3800938fcabe76265d273fa0552dcf674d33973aaPablo Neira
4800938fcabe76265d273fa0552dcf674d33973aaPablo Neiraenum clusterip_hashmode {
5800938fcabe76265d273fa0552dcf674d33973aaPablo Neira    CLUSTERIP_HASHMODE_SIP = 0,
6800938fcabe76265d273fa0552dcf674d33973aaPablo Neira    CLUSTERIP_HASHMODE_SIP_SPT,
7800938fcabe76265d273fa0552dcf674d33973aaPablo Neira    CLUSTERIP_HASHMODE_SIP_SPT_DPT,
8800938fcabe76265d273fa0552dcf674d33973aaPablo Neira};
9800938fcabe76265d273fa0552dcf674d33973aaPablo Neira
10800938fcabe76265d273fa0552dcf674d33973aaPablo Neira#define CLUSTERIP_HASHMODE_MAX CLUSTERIP_HASHMODE_SIP_SPT_DPT
11800938fcabe76265d273fa0552dcf674d33973aaPablo Neira
12800938fcabe76265d273fa0552dcf674d33973aaPablo Neira#define CLUSTERIP_MAX_NODES 16
13800938fcabe76265d273fa0552dcf674d33973aaPablo Neira
14800938fcabe76265d273fa0552dcf674d33973aaPablo Neira#define CLUSTERIP_FLAG_NEW 0x00000001
15800938fcabe76265d273fa0552dcf674d33973aaPablo Neira
16800938fcabe76265d273fa0552dcf674d33973aaPablo Neirastruct clusterip_config;
17800938fcabe76265d273fa0552dcf674d33973aaPablo Neira
18800938fcabe76265d273fa0552dcf674d33973aaPablo Neirastruct ipt_clusterip_tgt_info {
19800938fcabe76265d273fa0552dcf674d33973aaPablo Neira
20800938fcabe76265d273fa0552dcf674d33973aaPablo Neira	u_int32_t flags;
219fc3b5e9aaecaa4f3ebaf4bb55ddde2620e7f13ePatrick McHardy
22800938fcabe76265d273fa0552dcf674d33973aaPablo Neira	/* only relevant for new ones */
23800938fcabe76265d273fa0552dcf674d33973aaPablo Neira	u_int8_t clustermac[6];
24800938fcabe76265d273fa0552dcf674d33973aaPablo Neira	u_int16_t num_total_nodes;
25800938fcabe76265d273fa0552dcf674d33973aaPablo Neira	u_int16_t num_local_nodes;
26800938fcabe76265d273fa0552dcf674d33973aaPablo Neira	u_int16_t local_nodes[CLUSTERIP_MAX_NODES];
279fc3b5e9aaecaa4f3ebaf4bb55ddde2620e7f13ePatrick McHardy	u_int32_t hash_mode;
28800938fcabe76265d273fa0552dcf674d33973aaPablo Neira	u_int32_t hash_initval;
299fc3b5e9aaecaa4f3ebaf4bb55ddde2620e7f13ePatrick McHardy
30e0bba47e550420e371c97425cc6d39909a6e059bPatrick McHardy	/* Used internally by the kernel */
31800938fcabe76265d273fa0552dcf674d33973aaPablo Neira	struct clusterip_config *config;
32800938fcabe76265d273fa0552dcf674d33973aaPablo Neira};
33800938fcabe76265d273fa0552dcf674d33973aaPablo Neira
34800938fcabe76265d273fa0552dcf674d33973aaPablo Neira#endif /*_IPT_CLUSTERIP_H_target*/
35