patch-2.3.99-pre2 linux/include/linux/netfilter_ipv4/compat_firewall.h

Next file: linux/include/linux/netfilter_ipv4/ip_conntrack.h
Previous file: linux/include/linux/netfilter.h
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.3.99-pre1/linux/include/linux/netfilter_ipv4/compat_firewall.h linux/include/linux/netfilter_ipv4/compat_firewall.h
@@ -0,0 +1,45 @@
+/* Minor modifications to fit on compatibility framework:
+   Rusty.Russell@rustcorp.com.au
+*/
+
+#ifndef __LINUX_FIREWALL_H
+#define __LINUX_FIREWALL_H
+
+/*
+ *	Definitions for loadable firewall modules
+ */
+
+#define FW_QUEUE	0
+#define FW_BLOCK	1
+#define FW_ACCEPT	2
+#define FW_REJECT	(-1)
+#define FW_REDIRECT	3
+#define FW_MASQUERADE	4
+#define FW_SKIP		5
+
+struct firewall_ops
+{
+	struct firewall_ops *next;
+	int (*fw_forward)(struct firewall_ops *this, int pf,
+			  struct net_device *dev, void *phdr, void *arg,
+			  struct sk_buff **pskb);
+	int (*fw_input)(struct firewall_ops *this, int pf,
+			struct net_device *dev, void *phdr, void *arg,
+			struct sk_buff **pskb);
+	int (*fw_output)(struct firewall_ops *this, int pf,
+			 struct net_device *dev, void *phdr, void *arg,
+			 struct sk_buff **pskb);
+	/* These may be NULL. */
+	int (*fw_acct_in)(struct firewall_ops *this, int pf,
+			  struct net_device *dev, void *phdr, void *arg,
+			  struct sk_buff **pskb);
+	int (*fw_acct_out)(struct firewall_ops *this, int pf,
+			   struct net_device *dev, void *phdr, void *arg,
+			   struct sk_buff **pskb);
+};
+
+extern int register_firewall(int pf, struct firewall_ops *fw);
+extern int unregister_firewall(int pf, struct firewall_ops *fw);
+
+extern int ip_fw_masq_timeouts(void *user, int len);
+#endif /* __LINUX_FIREWALL_H */

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)