netfilter: xtables: move extension arguments into compound structure (1/6)
[deliverable/linux.git] / include / linux / netfilter / x_tables.h
index 85aa42785a5e72cdee4752c8228506e6c13ffcfd..bcd40ec83257b5bdcf4aa74afb3d498304389ef0 100644 (file)
@@ -173,6 +173,26 @@ struct xt_counters_info
 
 #include <linux/netdevice.h>
 
+/**
+ * struct xt_match_param - parameters for match extensions' match functions
+ *
+ * @in:                input netdevice
+ * @out:       output netdevice
+ * @match:     struct xt_match through which this function was invoked
+ * @matchinfo: per-match data
+ * @fragoff:   packet is a fragment, this is the data offset
+ * @thoff:     position of transport header relative to skb->data
+ * @hotdrop:   drop packet if we had inspection problems
+ */
+struct xt_match_param {
+       const struct net_device *in, *out;
+       const struct xt_match *match;
+       const void *matchinfo;
+       int fragoff;
+       unsigned int thoff;
+       bool *hotdrop;
+};
+
 struct xt_match
 {
        struct list_head list;
@@ -185,13 +205,7 @@ struct xt_match
           non-linear skb, using skb_header_pointer and
           skb_ip_make_writable. */
        bool (*match)(const struct sk_buff *skb,
-                     const struct net_device *in,
-                     const struct net_device *out,
-                     const struct xt_match *match,
-                     const void *matchinfo,
-                     int offset,
-                     unsigned int protoff,
-                     bool *hotdrop);
+                     const struct xt_match_param *);
 
        /* Called when user tries to insert an entry of this type. */
        /* Should return true or false. */
This page took 0.026664 seconds and 5 git commands to generate.