[mpls-linux-general] Cleanups for 2.6.0-test9
Status: Beta
Brought to you by:
jleu
|
From: Vilyan D. <vdi...@ne...> - 2003-11-18 10:14:01
|
Hi all,
James, here are my 2 cents.
First, we need some config:
diff -rNu linux-2.6.0-test9/net/Kconfig linux-2.6.0-test9-mpls/net/Kconfig
--- linux-2.6.0-test9/net/Kconfig 2003-10-25 21:42:51.000000000 +0300
+++ linux-2.6.0-test9-mpls/net/Kconfig 2003-11-10 12:57:58.000000000 +0200
@@ -561,6 +561,14 @@
If unsure, say N.
+config MPLS
+ bool "Multi Protocol Label Switching - MPLS"
+ depends on EXPERIMENTAL
+ ---help---
+ Multi Protocol Label Switching (MPLS)
+
+ If unsure, say N.
+
config NET_FASTROUTE
bool "Fast switching (read help!)"
depends on EXPERIMENTAL
diff -rNu linux-2.6.0-test9/net/ipv4/netfilter/Kconfig
linux-2.6.0-test9-mpls/net/ipv4/netfilter/Kconfig
--- linux-2.6.0-test9/net/ipv4/netfilter/Kconfig 2003-10-25
21:44:33.000000000 +0300
+++ linux-2.6.0-test9-mpls/net/ipv4/netfilter/Kconfig 2003-11-10
13:01:40.000000000 +0200
@@ -466,6 +466,14 @@
To compile it as a module, choose M here. If unsure, say N.
+config IP_NF_TARGET_MPLS
+ tristate "MPLS target support"
+ depends on IP_NF_MANGLE && MPLS
+ help
+ This option adds a `MPLS' target.
+
+ To compile it as a module, choose M here. If unsure, say N.
+
config IP_NF_TARGET_CLASSIFY
tristate "CLASSIFY target support"
depends on IP_NF_MANGLE
There are changes in kernel Makefiles. Here is new way:
diff -rNu linux-2.6.0-test9/net/mpls/Makefile
linux-2.6.0-test9-mpls/net/mpls/Makefile
--- linux-2.6.0-test9/net/mpls/Makefile 1970-01-01 02:00:00.000000000 +0200
+++ linux-2.6.0-test9-mpls/net/mpls/Makefile 2003-11-10
12:19:58.000000000 +0200
@@ -0,0 +1,10 @@
+#
+# Makefile for the Linux MPLS layer.
+#
+
+obj-$(CONFIG_MPLS) += mpls.o
+
+mpls-y := mpls_if.o mpls_in_info.o mpls_init.o mpls_input.o \
+ mpls_ioctls.o mpls_opcode.o mpls_out_info.o mpls_output.o \
+ mpls_proc.o mpls_ref.o mpls_utils.o mpls_tunnel.o
+
And again this is oldfashioned:
struct packet_type mpls_uc_pt =
{
__constant_htons(ETH_P_MPLS_UC),
NULL, /* All devices */
mpls_rcv,
(void*)1,
NULL,
};
#if 0
struct packet_type mpls_mc_pt =
{
__constant_htons(ETH_P_MPLS_MC);
NULL, /* All devices */
mpls_mc_rcv,
(void*)1,
NULL,
};
#endif
It must be something like:
struct packet_type mpls_uc_pt =
{
.type = __constant_htons(ETH_P_MPLS_UC),
.dev = NULL, /* All devices */
.func = mpls_rcv,
/* ??? .af_packet_priv = (void*)1, */
};
--
Regards,
Vilyan Dimitrov
Network Administrator
Net Is Sat Ltd.
|