SOURCES (LINUX_2_6_22): kernel-imq.patch - linuximq.net patch is b...
arekm
arekm at pld-linux.org
Wed Nov 28 22:01:22 CET 2007
Author: arekm Date: Wed Nov 28 21:01:22 2007 GMT
Module: SOURCES Tag: LINUX_2_6_22
---- Log message:
- linuximq.net patch is broken (see linuximq archives); use fixed one from http://www.actusa.net/~linuximq/linux-2.6.22-imq.diff
---- Files affected:
SOURCES:
kernel-imq.patch (1.1.2.1 -> 1.1.2.2)
---- Diffs:
================================================================
Index: SOURCES/kernel-imq.patch
diff -u SOURCES/kernel-imq.patch:1.1.2.1 SOURCES/kernel-imq.patch:1.1.2.2
--- SOURCES/kernel-imq.patch:1.1.2.1 Mon Oct 29 02:21:40 2007
+++ SOURCES/kernel-imq.patch Wed Nov 28 22:01:17 2007
@@ -1,150 +1,6 @@
-diff -Nru linux-2.6.21.1-orig/drivers/net/Kconfig linux-2.6.21.1/drivers/net/Kconfig
---- linux-2.6.21.1-orig/drivers/net/Kconfig 2007-04-27 21:49:26.000000000 +0000
-+++ linux-2.6.21.1/drivers/net/Kconfig 2007-06-02 21:43:55.000000000 +0000
-@@ -96,6 +96,129 @@
- To compile this driver as a module, choose M here: the module
- will be called eql. If unsure, say N.
-
-+config IMQ
-+ tristate "IMQ (intermediate queueing device) support"
-+ depends on NETDEVICES && NETFILTER
-+ ---help---
-+ The IMQ device(s) is used as placeholder for QoS queueing
-+ disciplines. Every packet entering/leaving the IP stack can be
-+ directed through the IMQ device where it's enqueued/dequeued to the
-+ attached qdisc. This allows you to treat network devices as classes
-+ and distribute bandwidth among them. Iptables is used to specify
-+ through which IMQ device, if any, packets travel.
-+
-+ More information at: http://www.linuximq.net/
-+
-+ To compile this driver as a module, choose M here: the module
-+ will be called imq. If unsure, say N.
-+
-+choice
-+ prompt "IMQ behavior (PRE/POSTROUTING)"
-+ depends on IMQ
-+ default IMQ_BEHAVIOR_BA
-+ help
-+
-+ This settings defines how IMQ behaves in respect to its
-+ hooking in PREROUTING and POSTROUTING.
-+
-+ IMQ can work in any of the following ways:
-+
-+ PREROUTING | POSTROUTING
-+ -----------------|-------------------
-+ #1 After NAT | After NAT
-+ #2 After NAT | Before NAT
-+ #3 Before NAT | After NAT
-+ #4 Before NAT | Before NAT
-+
-+ The default behavior is to hook before NAT on PREROUTING
-+ and after NAT on POSTROUTING (#3).
-+
-+ This settings are specially usefull when trying to use IMQ
-+ to shape NATed clients.
-+
-+ More information can be found at: www.linuximq.net
-+
-+ If not sure leave the default settings alone.
-+
-+config IMQ_BEHAVIOR_AA
-+ bool "IMQ AA"
-+ help
-+ This settings defines how IMQ behaves in respect to its
-+ hooking in PREROUTING and POSTROUTING.
-+
-+ Choosing this option will make IMQ hook like this:
-+
-+ PREROUTING: After NAT
-+ POSTROUTING: After NAT
-+
-+ More information can be found at: www.linuximq.net
-+
-+ If not sure leave the default settings alone.
-+
-+config IMQ_BEHAVIOR_AB
-+ bool "IMQ AB"
-+ help
-+ This settings defines how IMQ behaves in respect to its
-+ hooking in PREROUTING and POSTROUTING.
-+
-+ Choosing this option will make IMQ hook like this:
-+
-+ PREROUTING: After NAT
-+ POSTROUTING: Before NAT
-+
-+ More information can be found at: www.linuximq.net
-+
-+ If not sure leave the default settings alone.
-+
-+config IMQ_BEHAVIOR_BA
-+ bool "IMQ BA"
-+ help
-+ This settings defines how IMQ behaves in respect to its
-+ hooking in PREROUTING and POSTROUTING.
-+
-+ Choosing this option will make IMQ hook like this:
-+
-+ PREROUTING: Before NAT
-+ POSTROUTING: After NAT
-+
-+ More information can be found at: www.linuximq.net
-+
-+ If not sure leave the default settings alone.
-+
-+config IMQ_BEHAVIOR_BB
-+ bool "IMQ BB"
-+ help
-+ This settings defines how IMQ behaves in respect to its
-+ hooking in PREROUTING and POSTROUTING.
-+
-+ Choosing this option will make IMQ hook like this:
-+
-+ PREROUTING: Before NAT
-+ POSTROUTING: Before NAT
-+
-+ More information can be found at: www.linuximq.net
-+
-+ If not sure leave the default settings alone.
-+
-+endchoice
-+
-+config IMQ_NUM_DEVS
-+
-+ int "Number of IMQ devices"
-+ range 2 8
-+ depends on IMQ
-+ default "2"
-+ help
-+
-+ This settings defines how many IMQ devices will be
-+ created.
-+
-+ The default value is 2.
-+
-+ More information can be found at: www.linuximq.net
-+
-+ If not sure leave the default settings alone.
-+
- config TUN
- tristate "Universal TUN/TAP device driver support"
- select CRC32
-diff -Nru linux-2.6.21.1-orig/drivers/net/Makefile linux-2.6.21.1/drivers/net/Makefile
---- linux-2.6.21.1-orig/drivers/net/Makefile 2007-04-27 21:49:26.000000000 +0000
-+++ linux-2.6.21.1/drivers/net/Makefile 2007-06-02 21:43:55.000000000 +0000
-@@ -124,6 +124,7 @@
- obj-$(CONFIG_SLHC) += slhc.o
-
- obj-$(CONFIG_DUMMY) += dummy.o
-+obj-$(CONFIG_IMQ) += imq.o
- obj-$(CONFIG_IFB) += ifb.o
- obj-$(CONFIG_DE600) += de600.o
- obj-$(CONFIG_DE620) += de620.o
-diff -Nru linux-2.6.21.1-orig/drivers/net/imq.c linux-2.6.21.1/drivers/net/imq.c
---- linux-2.6.21.1-orig/drivers/net/imq.c 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.21.1/drivers/net/imq.c 2007-06-02 21:43:55.000000000 +0000
+diff -urN linux-2.6.22.1/drivers/net/imq.c linux-2.6.22.1+imq1/drivers/net/imq.c
+--- linux-2.6.22.1/drivers/net/imq.c 1970-01-01 09:30:00.000000000 +0930
++++ linux-2.6.22.1+imq1/drivers/net/imq.c 2007-07-15 11:03:43.000000000 +0930
@@ -0,0 +1,402 @@
+/*
+ * Pseudo-driver for the intermediate queue device.
@@ -269,7 +125,7 @@
+#if defined(CONFIG_IMQ_NUM_DEVS)
+static unsigned int numdevs = CONFIG_IMQ_NUM_DEVS;
+#else
-+static unsigned int numdevs = 2;
++static unsigned int numdevs = 16;
+#endif
+
+static struct net_device *imq_devs;
@@ -409,7 +265,7 @@
+err5:
+ nf_unregister_queue_handler(PF_INET6);
+err4:
-+ nf_unregister_hook(&imq_egress_ipv6);
++ nf_unregister_hook(&imq_egress_ipv4);
+#endif
+err3:
+ nf_unregister_hook(&imq_ingress_ipv4);
@@ -435,8 +291,8 @@
+{
+ dev->hard_start_xmit = imq_dev_xmit;
+ dev->type = ARPHRD_VOID;
-+ dev->mtu = 1500;
-+ dev->tx_queue_len = 30;
++ dev->mtu = 16000;
++ dev->tx_queue_len = 11000;
+ dev->flags = IFF_NOARP;
+ dev->priv = kmalloc(sizeof(struct net_device_stats), GFP_KERNEL);
+ if (dev->priv == NULL)
@@ -543,14 +399,158 @@
+module_init(imq_init_module);
+module_exit(imq_cleanup_module);
+
-+module_param(numdevs, int, 0);
++module_param(numdevs, int, 16);
+MODULE_PARM_DESC(numdevs, "number of IMQ devices (how many imq* devices will be created)");
+MODULE_AUTHOR("http://www.linuximq.net");
+MODULE_DESCRIPTION("Pseudo-driver for the intermediate queue device. See http://www.linuximq.net/ for more information.");
+MODULE_LICENSE("GPL");
-diff -Nru linux-2.6.21.1-orig/include/linux/imq.h linux-2.6.21.1/include/linux/imq.h
---- linux-2.6.21.1-orig/include/linux/imq.h 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.21.1/include/linux/imq.h 2007-06-02 21:43:55.000000000 +0000
+diff -urN linux-2.6.22.1/drivers/net/Kconfig linux-2.6.22.1+imq1/drivers/net/Kconfig
+--- linux-2.6.22.1/drivers/net/Kconfig 2007-07-14 15:40:42.000000000 +0930
++++ linux-2.6.22.1+imq1/drivers/net/Kconfig 2007-07-15 07:13:29.000000000 +0930
+@@ -96,6 +96,129 @@
+ To compile this driver as a module, choose M here: the module
+ will be called eql. If unsure, say N.
+
++config IMQ
++ tristate "IMQ (intermediate queueing device) support"
++ depends on NETDEVICES && NETFILTER
++ ---help---
++ The IMQ device(s) is used as placeholder for QoS queueing
++ disciplines. Every packet entering/leaving the IP stack can be
++ directed through the IMQ device where it's enqueued/dequeued to the
++ attached qdisc. This allows you to treat network devices as classes
++ and distribute bandwidth among them. Iptables is used to specify
++ through which IMQ device, if any, packets travel.
++
++ More information at: http://www.linuximq.net/
++
++ To compile this driver as a module, choose M here: the module
++ will be called imq. If unsure, say N.
++
++choice
++ prompt "IMQ behavior (PRE/POSTROUTING)"
++ depends on IMQ
++ default IMQ_BEHAVIOR_AB
++ help
++
++ This settings defines how IMQ behaves in respect to its
++ hooking in PREROUTING and POSTROUTING.
++
++ IMQ can work in any of the following ways:
++
++ PREROUTING | POSTROUTING
++ -----------------|-------------------
++ #1 After NAT | After NAT
++ #2 After NAT | Before NAT
++ #3 Before NAT | After NAT
++ #4 Before NAT | Before NAT
++
++ The default behavior is to hook before NAT on PREROUTING
++ and after NAT on POSTROUTING (#3).
++
++ This settings are specially usefull when trying to use IMQ
++ to shape NATed clients.
++
++ More information can be found at: www.linuximq.net
++
++ If not sure leave the default settings alone.
++
++config IMQ_BEHAVIOR_AA
++ bool "IMQ AA"
++ help
++ This settings defines how IMQ behaves in respect to its
++ hooking in PREROUTING and POSTROUTING.
++
++ Choosing this option will make IMQ hook like this:
++
++ PREROUTING: After NAT
++ POSTROUTING: After NAT
++
++ More information can be found at: www.linuximq.net
++
++ If not sure leave the default settings alone.
++
++config IMQ_BEHAVIOR_AB
++ bool "IMQ AB"
++ help
++ This settings defines how IMQ behaves in respect to its
++ hooking in PREROUTING and POSTROUTING.
++
++ Choosing this option will make IMQ hook like this:
++
++ PREROUTING: After NAT
++ POSTROUTING: Before NAT
++
++ More information can be found at: www.linuximq.net
++
++ If not sure leave the default settings alone.
++
++config IMQ_BEHAVIOR_BA
++ bool "IMQ BA"
++ help
++ This settings defines how IMQ behaves in respect to its
++ hooking in PREROUTING and POSTROUTING.
++
++ Choosing this option will make IMQ hook like this:
++
++ PREROUTING: Before NAT
++ POSTROUTING: After NAT
++
++ More information can be found at: www.linuximq.net
++
++ If not sure leave the default settings alone.
++
++config IMQ_BEHAVIOR_BB
++ bool "IMQ BB"
++ help
++ This settings defines how IMQ behaves in respect to its
++ hooking in PREROUTING and POSTROUTING.
++
++ Choosing this option will make IMQ hook like this:
++
++ PREROUTING: Before NAT
++ POSTROUTING: Before NAT
++
++ More information can be found at: www.linuximq.net
++
++ If not sure leave the default settings alone.
++
++endchoice
++
++config IMQ_NUM_DEVS
++
++ int "Number of IMQ devices"
++ range 2 16
++ depends on IMQ
++ default "16"
++ help
++
++ This settings defines how many IMQ devices will be
++ created.
++
++ The default value is 2.
++
++ More information can be found at: www.linuximq.net
++
++ If not sure leave the default settings alone.
++
+ config TUN
+ tristate "Universal TUN/TAP device driver support"
+ select CRC32
+diff -urN linux-2.6.22.1/drivers/net/Makefile linux-2.6.22.1+imq1/drivers/net/Makefile
+--- linux-2.6.22.1/drivers/net/Makefile 2007-07-14 15:40:42.000000000 +0930
++++ linux-2.6.22.1+imq1/drivers/net/Makefile 2007-07-15 07:13:29.000000000 +0930
+@@ -124,6 +124,7 @@
+ obj-$(CONFIG_SLHC) += slhc.o
+
+ obj-$(CONFIG_DUMMY) += dummy.o
++obj-$(CONFIG_IMQ) += imq.o
+ obj-$(CONFIG_IFB) += ifb.o
+ obj-$(CONFIG_DE600) += de600.o
+ obj-$(CONFIG_DE620) += de620.o
+diff -urN linux-2.6.22.1/include/linux/imq.h linux-2.6.22.1+imq1/include/linux/imq.h
+--- linux-2.6.22.1/include/linux/imq.h 1970-01-01 09:30:00.000000000 +0930
++++ linux-2.6.22.1+imq1/include/linux/imq.h 2007-07-15 07:13:29.000000000 +0930
@@ -0,0 +1,9 @@
+#ifndef _IMQ_H
+#define _IMQ_H
@@ -561,9 +561,9 @@
+#define IMQ_F_ENQUEUE 0x80
+
+#endif /* _IMQ_H */
-diff -Nru linux-2.6.21.1-orig/include/linux/netfilter_ipv4/ipt_IMQ.h linux-2.6.21.1/include/linux/netfilter_ipv4/ipt_IMQ.h
---- linux-2.6.21.1-orig/include/linux/netfilter_ipv4/ipt_IMQ.h 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.21.1/include/linux/netfilter_ipv4/ipt_IMQ.h 2007-06-02 21:43:55.000000000 +0000
+diff -urN linux-2.6.22.1/include/linux/netfilter_ipv4/ipt_IMQ.h linux-2.6.22.1+imq1/include/linux/netfilter_ipv4/ipt_IMQ.h
+--- linux-2.6.22.1/include/linux/netfilter_ipv4/ipt_IMQ.h 1970-01-01 09:30:00.000000000 +0930
++++ linux-2.6.22.1+imq1/include/linux/netfilter_ipv4/ipt_IMQ.h 2007-07-15 07:13:29.000000000 +0930
@@ -0,0 +1,8 @@
+#ifndef _IPT_IMQ_H
+#define _IPT_IMQ_H
@@ -573,9 +573,9 @@
+};
+
+#endif /* _IPT_IMQ_H */
-diff -Nru linux-2.6.21.1-orig/include/linux/netfilter_ipv6/ip6t_IMQ.h linux-2.6.21.1/include/linux/netfilter_ipv6/ip6t_IMQ.h
---- linux-2.6.21.1-orig/include/linux/netfilter_ipv6/ip6t_IMQ.h 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.21.1/include/linux/netfilter_ipv6/ip6t_IMQ.h 2007-06-02 21:43:55.000000000 +0000
+diff -urN linux-2.6.22.1/include/linux/netfilter_ipv6/ip6t_IMQ.h linux-2.6.22.1+imq1/include/linux/netfilter_ipv6/ip6t_IMQ.h
+--- linux-2.6.22.1/include/linux/netfilter_ipv6/ip6t_IMQ.h 1970-01-01 09:30:00.000000000 +0930
++++ linux-2.6.22.1+imq1/include/linux/netfilter_ipv6/ip6t_IMQ.h 2007-07-15 07:13:29.000000000 +0930
@@ -0,0 +1,8 @@
+#ifndef _IP6T_IMQ_H
+#define _IP6T_IMQ_H
@@ -585,11 +585,11 @@
+};
+
+#endif /* _IP6T_IMQ_H */
-diff -Nru linux-2.6.21.1-orig/include/linux/skbuff.h linux-2.6.21.1/include/linux/skbuff.h
---- linux-2.6.21.1-orig/include/linux/skbuff.h 2007-04-27 21:49:26.000000000 +0000
-+++ linux-2.6.21.1/include/linux/skbuff.h 2007-06-02 21:43:55.000000000 +0000
-@@ -294,6 +294,10 @@
- #if defined(CONFIG_NF_CONNTRACK) || defined(CONFIG_NF_CONNTRACK_MODULE)
+diff -urN linux-2.6.22.1/include/linux/skbuff.h linux-2.6.22.1+imq1/include/linux/skbuff.h
+--- linux-2.6.22.1/include/linux/skbuff.h 2007-07-14 15:41:17.000000000 +0930
++++ linux-2.6.22.1+imq1/include/linux/skbuff.h 2007-07-15 07:13:29.000000000 +0930
+@@ -285,6 +285,10 @@
+ struct nf_conntrack *nfct;
struct sk_buff *nfct_reasm;
#endif
+#if defined(CONFIG_IMQ) || defined(CONFIG_IMQ_MODULE)
@@ -599,42 +599,47 @@
#ifdef CONFIG_BRIDGE_NETFILTER
struct nf_bridge_info *nf_bridge;
#endif
-diff -Nru linux-2.6.21.1-orig/net/ipv4/netfilter/Kconfig linux-2.6.21.1/net/ipv4/netfilter/Kconfig
---- linux-2.6.21.1-orig/net/ipv4/netfilter/Kconfig 2007-04-27 21:49:26.000000000 +0000
-+++ linux-2.6.21.1/net/ipv4/netfilter/Kconfig 2007-06-02 21:43:55.000000000 +0000
-@@ -565,6 +565,17 @@
-
- To compile it as a module, choose M here. If unsure, say N.
+@@ -1673,6 +1677,10 @@
+ dst->nfct_reasm = src->nfct_reasm;
+ nf_conntrack_get_reasm(src->nfct_reasm);
+ #endif
++#if defined(CONFIG_IMQ) || defined(CONFIG_IMQ_MODULE)
++ dst->imq_flags = src->imq_flags;
++ dst->nf_info = src->nf_info;
++#endif
+ #ifdef CONFIG_BRIDGE_NETFILTER
+ dst->nf_bridge = src->nf_bridge;
+ nf_bridge_get(src->nf_bridge);
+diff -urN linux-2.6.22.1/net/core/dev.c linux-2.6.22.1+imq1/net/core/dev.c
+--- linux-2.6.22.1/net/core/dev.c 2007-07-14 15:41:23.000000000 +0930
++++ linux-2.6.22.1+imq1/net/core/dev.c 2007-07-15 07:13:30.000000000 +0930
+@@ -94,6 +94,9 @@
+ #include <linux/skbuff.h>
+ #include <net/sock.h>
+ #include <linux/rtnetlink.h>
++#if defined(CONFIG_IMQ) || defined(CONFIG_IMQ_MODULE)
++#include <linux/imq.h>
++#endif
+ #include <linux/proc_fs.h>
+ #include <linux/seq_file.h>
+ #include <linux/stat.h>
+@@ -1403,7 +1406,11 @@
+ int dev_hard_start_xmit(struct sk_buff *skb, struct net_device *dev)
+ {
+ if (likely(!skb->next)) {
+- if (!list_empty(&ptype_all))
++ if (!list_empty(&ptype_all)
++#if defined(CONFIG_IMQ) || defined(CONFIG_IMQ_MODULE)
++ && !(skb->imq_flags & IMQ_F_ENQUEUE)
++#endif
++ )
+ dev_queue_xmit_nit(skb, dev);
-+config IP_NF_TARGET_IMQ
-+ tristate "IMQ target support"
-+ depends on IP_NF_MANGLE
-+ help
-+ This option adds a `IMQ' target which is used to specify if and
-+ to which IMQ device packets should get enqueued/dequeued.
-+
-+ For more information visit: http://www.linuximq.net/
-+
-+ To compile it as a module, choose M here. If unsure, say N.
-+
- config IP_NF_TARGET_TOS
- tristate "TOS target support"
- depends on IP_NF_MANGLE
-diff -Nru linux-2.6.21.1-orig/net/ipv4/netfilter/Makefile linux-2.6.21.1/net/ipv4/netfilter/Makefile
---- linux-2.6.21.1-orig/net/ipv4/netfilter/Makefile 2007-04-27 21:49:26.000000000 +0000
-+++ linux-2.6.21.1/net/ipv4/netfilter/Makefile 2007-06-02 21:43:55.000000000 +0000
-@@ -96,6 +96,7 @@
- obj-$(CONFIG_IP_NF_TARGET_REJECT) += ipt_REJECT.o
- obj-$(CONFIG_IP_NF_TARGET_TOS) += ipt_TOS.o
- obj-$(CONFIG_IP_NF_TARGET_ECN) += ipt_ECN.o
-+obj-$(CONFIG_IP_NF_TARGET_IMQ) += ipt_IMQ.o
- obj-$(CONFIG_IP_NF_TARGET_MASQUERADE) += ipt_MASQUERADE.o
- obj-$(CONFIG_IP_NF_TARGET_REDIRECT) += ipt_REDIRECT.o
- obj-$(CONFIG_IP_NF_TARGET_NETMAP) += ipt_NETMAP.o
-diff -Nru linux-2.6.21.1-orig/net/ipv4/netfilter/ipt_IMQ.c linux-2.6.21.1/net/ipv4/netfilter/ipt_IMQ.c
---- linux-2.6.21.1-orig/net/ipv4/netfilter/ipt_IMQ.c 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.21.1/net/ipv4/netfilter/ipt_IMQ.c 2007-06-02 21:44:24.000000000 +0000
-@@ -0,0 +1,70 @@
+ if (netif_needs_gso(dev, skb)) {
+diff -urN linux-2.6.22.1/net/ipv4/netfilter/ipt_IMQ.c linux-2.6.22.1+imq1/net/ipv4/netfilter/ipt_IMQ.c
+--- linux-2.6.22.1/net/ipv4/netfilter/ipt_IMQ.c 1970-01-01 09:30:00.000000000 +0930
++++ linux-2.6.22.1+imq1/net/ipv4/netfilter/ipt_IMQ.c 2007-07-15 07:13:30.000000000 +0930
+@@ -0,0 +1,69 @@
+/*
+ * This target marks packets to be enqueued to an imq device
+ */
@@ -704,42 +709,42 @@
+MODULE_AUTHOR("http://www.linuximq.net");
+MODULE_DESCRIPTION("Pseudo-driver for the intermediate queue device. See http://www.linuximq.net/ for more information.");
+MODULE_LICENSE("GPL");
-+
-Binary files linux-2.6.21.1-orig/net/ipv6/netfilter/.ip6t_IMQ.swp and linux-2.6.21.1/net/ipv6/netfilter/.ip6t_IMQ.swp differ
-diff -Nru linux-2.6.21.1-orig/net/ipv6/netfilter/Kconfig linux-2.6.21.1/net/ipv6/netfilter/Kconfig
---- linux-2.6.21.1-orig/net/ipv6/netfilter/Kconfig 2007-04-27 21:49:26.000000000 +0000
-+++ linux-2.6.21.1/net/ipv6/netfilter/Kconfig 2007-06-02 21:43:55.000000000 +0000
-@@ -173,6 +173,15 @@
+diff -urN linux-2.6.22.1/net/ipv4/netfilter/Kconfig linux-2.6.22.1+imq1/net/ipv4/netfilter/Kconfig
+--- linux-2.6.22.1/net/ipv4/netfilter/Kconfig 2007-07-14 15:41:25.000000000 +0930
++++ linux-2.6.22.1+imq1/net/ipv4/netfilter/Kconfig 2007-07-15 07:13:30.000000000 +0930
+@@ -311,6 +311,17 @@
To compile it as a module, choose M here. If unsure, say N.
-+config IP6_NF_TARGET_IMQ
-+ tristate "IMQ target support"
-+ depends on IP6_NF_MANGLE
-+ help
-+ This option adds a `IMQ' target which is used to specify if and
-+ to which imq device packets should get enqueued/dequeued.
++config IP_NF_TARGET_IMQ
++ tristate "IMQ target support"
++ depends on IP_NF_MANGLE
++ help
++ This option adds a `IMQ' target which is used to specify if and
++ to which IMQ device packets should get enqueued/dequeued.
+
-+ To compile it as a module, choose M here. If unsure, say N.
++ For more information visit: http://www.linuximq.net/
+
- config IP6_NF_TARGET_HL
- tristate 'HL (hoplimit) target support'
- depends on IP6_NF_MANGLE
-diff -Nru linux-2.6.21.1-orig/net/ipv6/netfilter/Makefile linux-2.6.21.1/net/ipv6/netfilter/Makefile
---- linux-2.6.21.1-orig/net/ipv6/netfilter/Makefile 2007-04-27 21:49:26.000000000 +0000
-+++ linux-2.6.21.1/net/ipv6/netfilter/Makefile 2007-06-02 21:43:55.000000000 +0000
-@@ -13,6 +13,7 @@
- obj-$(CONFIG_IP6_NF_MATCH_OWNER) += ip6t_owner.o
- obj-$(CONFIG_IP6_NF_FILTER) += ip6table_filter.o
- obj-$(CONFIG_IP6_NF_MANGLE) += ip6table_mangle.o
-+obj-$(CONFIG_IP6_NF_TARGET_IMQ) += ip6t_IMQ.o
- obj-$(CONFIG_IP6_NF_TARGET_HL) += ip6t_HL.o
- obj-$(CONFIG_IP6_NF_QUEUE) += ip6_queue.o
- obj-$(CONFIG_IP6_NF_TARGET_LOG) += ip6t_LOG.o
-diff -Nru linux-2.6.21.1-orig/net/ipv6/netfilter/ip6t_IMQ.c linux-2.6.21.1/net/ipv6/netfilter/ip6t_IMQ.c
---- linux-2.6.21.1-orig/net/ipv6/netfilter/ip6t_IMQ.c 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.21.1/net/ipv6/netfilter/ip6t_IMQ.c 2007-06-02 21:45:36.000000000 +0000
-@@ -0,0 +1,70 @@
++ To compile it as a module, choose M here. If unsure, say N.
++
+ config IP_NF_TARGET_TOS
+ tristate "TOS target support"
+ depends on IP_NF_MANGLE
+diff -urN linux-2.6.22.1/net/ipv4/netfilter/Makefile linux-2.6.22.1+imq1/net/ipv4/netfilter/Makefile
+--- linux-2.6.22.1/net/ipv4/netfilter/Makefile 2007-07-14 15:41:25.000000000 +0930
++++ linux-2.6.22.1+imq1/net/ipv4/netfilter/Makefile 2007-07-15 07:13:30.000000000 +0930
+@@ -54,6 +54,7 @@
+ obj-$(CONFIG_IP_NF_TARGET_REJECT) += ipt_REJECT.o
+ obj-$(CONFIG_IP_NF_TARGET_TOS) += ipt_TOS.o
+ obj-$(CONFIG_IP_NF_TARGET_ECN) += ipt_ECN.o
++obj-$(CONFIG_IP_NF_TARGET_IMQ) += ipt_IMQ.o
+ obj-$(CONFIG_IP_NF_TARGET_MASQUERADE) += ipt_MASQUERADE.o
+ obj-$(CONFIG_IP_NF_TARGET_REDIRECT) += ipt_REDIRECT.o
+ obj-$(CONFIG_IP_NF_TARGET_NETMAP) += ipt_NETMAP.o
+diff -urN linux-2.6.22.1/net/ipv6/netfilter/ip6t_IMQ.c linux-2.6.22.1+imq1/net/ipv6/netfilter/ip6t_IMQ.c
+--- linux-2.6.22.1/net/ipv6/netfilter/ip6t_IMQ.c 1970-01-01 09:30:00.000000000 +0930
++++ linux-2.6.22.1+imq1/net/ipv6/netfilter/ip6t_IMQ.c 2007-07-15 07:13:30.000000000 +0930
+@@ -0,0 +1,69 @@
+/*
+ * This target marks packets to be enqueued to an imq device
+ */
@@ -785,7 +790,7 @@
+
+static struct xt_target ip6t_imq_reg = {
+ .name = "IMQ",
-+ .family = AF_INET6,
++ .family = AF_INET6,
+ .target = imq_target,
+ .targetsize = sizeof(struct ip6t_imq_info),
+ .table = "mangle",
@@ -809,11 +814,40 @@
+MODULE_AUTHOR("http://www.linuximq.net");
+MODULE_DESCRIPTION("Pseudo-driver for the intermediate queue device. See http://www.linuximq.net/ for more information.");
+MODULE_LICENSE("GPL");
+diff -urN linux-2.6.22.1/net/ipv6/netfilter/Kconfig linux-2.6.22.1+imq1/net/ipv6/netfilter/Kconfig
+--- linux-2.6.22.1/net/ipv6/netfilter/Kconfig 2007-07-14 15:41:26.000000000 +0930
++++ linux-2.6.22.1+imq1/net/ipv6/netfilter/Kconfig 2007-07-15 07:13:30.000000000 +0930
+@@ -173,6 +173,15 @@
+
+ To compile it as a module, choose M here. If unsure, say N.
+
++config IP6_NF_TARGET_IMQ
++ tristate "IMQ target support"
++ depends on IP6_NF_MANGLE
++ help
++ This option adds a `IMQ' target which is used to specify if and
++ to which imq device packets should get enqueued/dequeued.
++
++ To compile it as a module, choose M here. If unsure, say N.
+
-diff -Nru linux-2.6.21.1-orig/net/sched/sch_generic.c linux-2.6.21.1/net/sched/sch_generic.c
---- linux-2.6.21.1-orig/net/sched/sch_generic.c 2007-04-27 21:49:26.000000000 +0000
-+++ linux-2.6.21.1/net/sched/sch_generic.c 2007-06-02 21:43:55.000000000 +0000
-@@ -87,7 +87,6 @@
+ config IP6_NF_TARGET_HL
+ tristate 'HL (hoplimit) target support'
+ depends on IP6_NF_MANGLE
+diff -urN linux-2.6.22.1/net/ipv6/netfilter/Makefile linux-2.6.22.1+imq1/net/ipv6/netfilter/Makefile
+--- linux-2.6.22.1/net/ipv6/netfilter/Makefile 2007-07-14 15:38:30.000000000 +0930
++++ linux-2.6.22.1+imq1/net/ipv6/netfilter/Makefile 2007-07-15 07:13:30.000000000 +0930
+@@ -13,6 +13,7 @@
+ obj-$(CONFIG_IP6_NF_MATCH_OWNER) += ip6t_owner.o
+ obj-$(CONFIG_IP6_NF_FILTER) += ip6table_filter.o
+ obj-$(CONFIG_IP6_NF_MANGLE) += ip6table_mangle.o
++obj-$(CONFIG_IP6_NF_TARGET_IMQ) += ip6t_IMQ.o
+ obj-$(CONFIG_IP6_NF_TARGET_HL) += ip6t_HL.o
+ obj-$(CONFIG_IP6_NF_QUEUE) += ip6_queue.o
<<Diff was trimmed, longer than 597 lines>>
---- CVS-web:
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/SOURCES/kernel-imq.patch?r1=1.1.2.1&r2=1.1.2.2&f=u
More information about the pld-cvs-commit
mailing list