patch-2.1.30 linux/include/linux/firewall.h
Next file: linux/include/linux/hdlcdrv.h
Previous file: linux/include/linux/etherdevice.h
Back to the patch index
Back to the overall index
- Lines: 70
- Date:
Wed Mar 26 11:01:28 1997
- Orig file:
v2.1.29/linux/include/linux/firewall.h
- Orig date:
Sun May 19 13:40:49 1996
diff -u --recursive --new-file v2.1.29/linux/include/linux/firewall.h linux/include/linux/firewall.h
@@ -1,26 +1,29 @@
#ifndef __LINUX_FIREWALL_H
#define __LINUX_FIREWALL_H
+#include <linux/config.h>
+
/*
* Definitions for loadable firewall modules
*/
-#define FW_BLOCK 0
-#define FW_ACCEPT 1
+#define FW_QUEUE 0
+#define FW_BLOCK 1
+#define FW_ACCEPT 2
#define FW_REJECT (-1)
-#define FW_REDIRECT 2
-#define FW_MASQUERADE 3
-#define FW_SKIP 4
+#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 device *dev, void *phdr, void *arg);
+ struct device *dev, void *phdr, void *arg, struct sk_buff **pskb);
int (*fw_input)(struct firewall_ops *this, int pf,
- struct device *dev, void *phdr, void *arg);
+ struct device *dev, void *phdr, void *arg, struct sk_buff **pskb);
int (*fw_output)(struct firewall_ops *this, int pf,
- struct device *dev, void *phdr, void *arg);
+ struct device *dev, void *phdr, void *arg, struct sk_buff **pskb);
/* Data falling in the second 486 cache line isn't used directly
during a firewall call and scan, only by insert/delete and other
unusual cases
@@ -32,10 +35,27 @@
#ifdef __KERNEL__
extern int register_firewall(int pf, struct firewall_ops *fw);
extern int unregister_firewall(int pf, struct firewall_ops *fw);
-extern int call_fw_firewall(int pf, struct device *dev, void *phdr, void *arg);
-extern int call_in_firewall(int pf, struct device *dev, void *phdr, void *arg);
-extern int call_out_firewall(int pf, struct device *dev, void *phdr, void *arg);
extern void fwchain_init(void);
-#endif
+#ifdef CONFIG_FIREWALL
+extern int call_fw_firewall(int pf, struct device *dev, void *phdr, void *arg, struct sk_buff **pskb);
+extern int call_in_firewall(int pf, struct device *dev, void *phdr, void *arg, struct sk_buff **pskb);
+extern int call_out_firewall(int pf, struct device *dev, void *phdr, void *arg, struct sk_buff **pskb);
+#else
+extern __inline__ int call_fw_firewall(int pf, struct device *dev, void *phdr, void *arg, struct sk_buff **skb)
+{
+ return FW_ACCEPT;
+}
+
+extern __inline__ int call_in_firewall(int pf, struct device *dev, void *phdr, void *arg, struct sk_buff **skb)
+{
+ return FW_ACCEPT;
+}
+extern __inline__ int call_out_firewall(int pf, struct device *dev, void *phdr, void *arg, struct sk_buff **skb)
+{
+ return FW_ACCEPT;
+}
+
+#endif
+#endif
#endif
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov