aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorShesha Sreenivasamurthy <shesha@cisco.com>2016-06-24 11:04:29 -0700
committerShesha Sreenivasamurthy <shesha@cisco.com>2016-06-24 11:25:13 -0700
commitd6b3850c64fe6315a17a51ce19a5813fae58ca7a (patch)
tree5a88f28847730ac0ea3abd7f1cd2b35e9c152baf
parentb0ccf03b6e1d29b473e092d42768ced9f2ae8508 (diff)
Move vcgn as plugin
Use appropriate libnames to copy Change-Id: Iaa1e7e3ceed52f328e26e75ee7309fc6464d5c66 Signed-off-by: Shesha Sreenivasamurthy <shesha@cisco.com>
-rw-r--r--plugins/Makefile.am83
-rw-r--r--plugins/plugins/vcgn/README (renamed from vnet/vnet/vcgn/README)0
-rw-r--r--plugins/plugins/vcgn/cgn_bitmap.h (renamed from vnet/vnet/vcgn/cgn_bitmap.h)0
-rw-r--r--plugins/plugins/vcgn/cgse_defs.h (renamed from vnet/vnet/vcgn/cgse_defs.h)0
-rw-r--r--plugins/plugins/vcgn/cnat_bulk_port.c (renamed from vnet/vnet/vcgn/cnat_bulk_port.c)0
-rw-r--r--plugins/plugins/vcgn/cnat_bulk_port.h (renamed from vnet/vnet/vcgn/cnat_bulk_port.h)0
-rw-r--r--plugins/plugins/vcgn/cnat_bulk_port_defs.h (renamed from vnet/vnet/vcgn/cnat_bulk_port_defs.h)0
-rw-r--r--plugins/plugins/vcgn/cnat_cli.h (renamed from vnet/vnet/vcgn/cnat_cli.h)0
-rw-r--r--plugins/plugins/vcgn/cnat_cli_handler.c (renamed from vnet/vnet/vcgn/cnat_cli_handler.c)14
-rw-r--r--plugins/plugins/vcgn/cnat_common_api.h (renamed from vnet/vnet/vcgn/cnat_common_api.h)0
-rw-r--r--plugins/plugins/vcgn/cnat_config.c (renamed from vnet/vnet/vcgn/cnat_config.c)0
-rw-r--r--plugins/plugins/vcgn/cnat_config.h (renamed from vnet/vnet/vcgn/cnat_config.h)0
-rw-r--r--plugins/plugins/vcgn/cnat_config_api.h (renamed from vnet/vnet/vcgn/cnat_config_api.h)0
-rw-r--r--plugins/plugins/vcgn/cnat_db.h (renamed from vnet/vnet/vcgn/cnat_db.h)0
-rw-r--r--plugins/plugins/vcgn/cnat_db_scanner.c (renamed from vnet/vnet/vcgn/cnat_db_scanner.c)0
-rw-r--r--plugins/plugins/vcgn/cnat_db_v2.c (renamed from vnet/vnet/vcgn/cnat_db_v2.c)0
-rw-r--r--plugins/plugins/vcgn/cnat_debug_msg_handler.c (renamed from vnet/vnet/vcgn/cnat_debug_msg_handler.c)0
-rw-r--r--plugins/plugins/vcgn/cnat_global.c (renamed from vnet/vnet/vcgn/cnat_global.c)0
-rw-r--r--plugins/plugins/vcgn/cnat_global.h (renamed from vnet/vnet/vcgn/cnat_global.h)0
-rw-r--r--plugins/plugins/vcgn/cnat_ipv4_icmp.h (renamed from vnet/vnet/vcgn/cnat_ipv4_icmp.h)0
-rw-r--r--plugins/plugins/vcgn/cnat_ipv4_icmp_error_inside_input.c (renamed from vnet/vnet/vcgn/cnat_ipv4_icmp_error_inside_input.c)0
-rw-r--r--plugins/plugins/vcgn/cnat_ipv4_icmp_error_outside_input.c (renamed from vnet/vnet/vcgn/cnat_ipv4_icmp_error_outside_input.c)0
-rw-r--r--plugins/plugins/vcgn/cnat_ipv4_icmp_query_inside_input.c (renamed from vnet/vnet/vcgn/cnat_ipv4_icmp_query_inside_input.c)0
-rw-r--r--plugins/plugins/vcgn/cnat_ipv4_icmp_query_inside_input_exception.c (renamed from vnet/vnet/vcgn/cnat_ipv4_icmp_query_inside_input_exception.c)0
-rw-r--r--plugins/plugins/vcgn/cnat_ipv4_icmp_query_outside_input.c (renamed from vnet/vnet/vcgn/cnat_ipv4_icmp_query_outside_input.c)0
-rw-r--r--plugins/plugins/vcgn/cnat_ipv4_tcp_inside_input.c (renamed from vnet/vnet/vcgn/cnat_ipv4_tcp_inside_input.c)0
-rw-r--r--plugins/plugins/vcgn/cnat_ipv4_tcp_inside_input_exceptions.c (renamed from vnet/vnet/vcgn/cnat_ipv4_tcp_inside_input_exceptions.c)0
-rw-r--r--plugins/plugins/vcgn/cnat_ipv4_tcp_outside_input.c (renamed from vnet/vnet/vcgn/cnat_ipv4_tcp_outside_input.c)0
-rw-r--r--plugins/plugins/vcgn/cnat_ipv4_udp.h (renamed from vnet/vnet/vcgn/cnat_ipv4_udp.h)0
-rw-r--r--plugins/plugins/vcgn/cnat_ipv4_udp_inside_input.c (renamed from vnet/vnet/vcgn/cnat_ipv4_udp_inside_input.c)0
-rw-r--r--plugins/plugins/vcgn/cnat_ipv4_udp_inside_input_exceptions.c (renamed from vnet/vnet/vcgn/cnat_ipv4_udp_inside_input_exceptions.c)0
-rw-r--r--plugins/plugins/vcgn/cnat_ipv4_udp_outside_input.c (renamed from vnet/vnet/vcgn/cnat_ipv4_udp_outside_input.c)0
-rw-r--r--plugins/plugins/vcgn/cnat_log_api.h (renamed from vnet/vnet/vcgn/cnat_log_api.h)0
-rw-r--r--plugins/plugins/vcgn/cnat_log_common.h (renamed from vnet/vnet/vcgn/cnat_log_common.h)0
-rw-r--r--plugins/plugins/vcgn/cnat_logging.c (renamed from vnet/vnet/vcgn/cnat_logging.c)0
-rw-r--r--plugins/plugins/vcgn/cnat_logging.h (renamed from vnet/vnet/vcgn/cnat_logging.h)0
-rw-r--r--plugins/plugins/vcgn/cnat_pcp_server.h (renamed from vnet/vnet/vcgn/cnat_pcp_server.h)0
-rw-r--r--plugins/plugins/vcgn/cnat_ports.c (renamed from vnet/vnet/vcgn/cnat_ports.c)0
-rw-r--r--plugins/plugins/vcgn/cnat_ports.h (renamed from vnet/vnet/vcgn/cnat_ports.h)0
-rw-r--r--plugins/plugins/vcgn/cnat_show.c (renamed from vnet/vnet/vcgn/cnat_show.c)0
-rw-r--r--plugins/plugins/vcgn/cnat_show_api.h (renamed from vnet/vnet/vcgn/cnat_show_api.h)0
-rw-r--r--plugins/plugins/vcgn/cnat_show_response.h (renamed from vnet/vnet/vcgn/cnat_show_response.h)0
-rw-r--r--plugins/plugins/vcgn/cnat_syslog.c (renamed from vnet/vnet/vcgn/cnat_syslog.c)0
-rw-r--r--plugins/plugins/vcgn/cnat_syslog.h (renamed from vnet/vnet/vcgn/cnat_syslog.h)0
-rw-r--r--plugins/plugins/vcgn/cnat_util.c (renamed from vnet/vnet/vcgn/cnat_util.c)0
-rw-r--r--plugins/plugins/vcgn/cnat_v4_ftp_alg.h (renamed from vnet/vnet/vcgn/cnat_v4_ftp_alg.h)0
-rw-r--r--plugins/plugins/vcgn/cnat_v4_functions.c (renamed from vnet/vnet/vcgn/cnat_v4_functions.c)0
-rw-r--r--plugins/plugins/vcgn/cnat_v4_functions.h (renamed from vnet/vnet/vcgn/cnat_v4_functions.h)0
-rw-r--r--plugins/plugins/vcgn/cnat_v4_pptp_alg.h (renamed from vnet/vnet/vcgn/cnat_v4_pptp_alg.h)0
-rw-r--r--plugins/plugins/vcgn/cnat_v4_tcp_in2out_stages.c (renamed from vnet/vnet/vcgn/cnat_v4_tcp_in2out_stages.c)0
-rw-r--r--plugins/plugins/vcgn/cnat_va_db.c (renamed from vnet/vnet/vcgn/cnat_va_db.c)0
-rw-r--r--plugins/plugins/vcgn/cnat_va_db.h (renamed from vnet/vnet/vcgn/cnat_va_db.h)0
-rw-r--r--plugins/plugins/vcgn/dslite_db.h (renamed from vnet/vnet/vcgn/dslite_db.h)0
-rw-r--r--plugins/plugins/vcgn/dslite_defs.h (renamed from vnet/vnet/vcgn/dslite_defs.h)0
-rw-r--r--plugins/plugins/vcgn/index_list.c (renamed from vnet/vnet/vcgn/index_list.c)0
-rw-r--r--plugins/plugins/vcgn/index_list.h (renamed from vnet/vnet/vcgn/index_list.h)0
-rw-r--r--plugins/plugins/vcgn/nat64_db.h (renamed from vnet/vnet/vcgn/nat64_db.h)0
-rw-r--r--plugins/plugins/vcgn/nat64_defs.h (renamed from vnet/vnet/vcgn/nat64_defs.h)0
-rw-r--r--plugins/plugins/vcgn/nat64_tcp_sm.h (renamed from vnet/vnet/vcgn/nat64_tcp_sm.h)0
-rw-r--r--plugins/plugins/vcgn/platform_common.h (renamed from vnet/vnet/vcgn/platform_common.h)0
-rw-r--r--plugins/plugins/vcgn/platform_common_override.h (renamed from vnet/vnet/vcgn/platform_common_override.h)0
-rw-r--r--plugins/plugins/vcgn/spp_ctx.h (renamed from vnet/vnet/vcgn/spp_ctx.h)0
-rw-r--r--plugins/plugins/vcgn/spp_platform_trace_log.c (renamed from vnet/vnet/vcgn/spp_platform_trace_log.c)0
-rw-r--r--plugins/plugins/vcgn/spp_platform_trace_log.h (renamed from vnet/vnet/vcgn/spp_platform_trace_log.h)0
-rw-r--r--plugins/plugins/vcgn/spp_timers.h (renamed from vnet/vnet/vcgn/spp_timers.h)0
-rw-r--r--plugins/plugins/vcgn/tcp_header_definitions.h (renamed from vnet/vnet/vcgn/tcp_header_definitions.h)0
-rw-r--r--plugins/plugins/vcgn/vcgn_classify.c (renamed from vnet/vnet/vcgn/vcgn_classify.c)15
-rw-r--r--plugins/plugins/vcgn/vcgn_db.h (renamed from vnet/vnet/vcgn/vcgn_db.h)0
-rw-r--r--vnet/Makefile.am37
-rw-r--r--vnet/configure.ac8
70 files changed, 102 insertions, 55 deletions
diff --git a/plugins/Makefile.am b/plugins/Makefile.am
index 34b31b45466..2087c4e8f58 100644
--- a/plugins/Makefile.am
+++ b/plugins/Makefile.am
@@ -23,7 +23,7 @@ libsixrd_plugin_la_SOURCES = plugins/sixrd/sixrd.c plugins/sixrd/ip4_sixrd.c plu
nobase_include_HEADERS = plugins/sixrd/sixrd.h
libsixrd_plugin_la_LDFLAGS = -module
-BUILT_SOURCES =
+#BUILT_SOURCES =
lib_LTLIBRARIES = libsixrd_plugin.la
@@ -35,7 +35,7 @@ ioam_pot_plugin_la_SOURCES = plugins/ioam/lib-pot/pot_util.c plugins/ioam/encap/
plugins/ioam/lib-pot/pot_util.h plugins/ioam/lib-pot/math64.h plugins/ioam/lib-pot/pot_api.c
ioam_pot_plugin_la_LDFLAGS = -module
-BUILT_SOURCES += plugins/ioam/lib-pot/pot.api.h
+BUILT_SOURCES = plugins/ioam/lib-pot/pot.api.h
SUFFIXES = .api.h .api
%.api.h: %.api
@@ -55,12 +55,89 @@ ioam_pot_test_plugin_la_LDFLAGS = -module
lib_LTLIBRARIES += ioam_pot_plugin.la ioam_pot_test_plugin.la
+########################################
+# Virtual Carrier Grade NAT
+########################################
+
+libvcgn_plugin_la_SOURCES = \
+ plugins/vcgn/cnat_bulk_port.c \
+ plugins/vcgn/cnat_config.c \
+ plugins/vcgn/cnat_db_scanner.c \
+ plugins/vcgn/cnat_db_v2.c \
+ plugins/vcgn/cnat_debug_msg_handler.c \
+ plugins/vcgn/cnat_cli_handler.c \
+ plugins/vcgn/cnat_global.c \
+ plugins/vcgn/cnat_ipv4_udp_inside_input.c \
+ plugins/vcgn/cnat_ipv4_udp_inside_input_exceptions.c \
+ plugins/vcgn/cnat_ipv4_udp_outside_input.c \
+ plugins/vcgn/cnat_ipv4_tcp_inside_input.c \
+ plugins/vcgn/cnat_ipv4_tcp_inside_input_exceptions.c \
+ plugins/vcgn/cnat_ipv4_tcp_outside_input.c \
+ plugins/vcgn/cnat_ipv4_icmp_query_inside_input.c \
+ plugins/vcgn/cnat_ipv4_icmp_query_inside_input_exception.c \
+ plugins/vcgn/cnat_ipv4_icmp_query_outside_input.c \
+ plugins/vcgn/cnat_ipv4_icmp_error_inside_input.c \
+ plugins/vcgn/cnat_ipv4_icmp_error_outside_input.c \
+ plugins/vcgn/cnat_logging.c \
+ plugins/vcgn/cnat_ports.c \
+ plugins/vcgn/cnat_util.c \
+ plugins/vcgn/cnat_show.c \
+ plugins/vcgn/cnat_syslog.c \
+ plugins/vcgn/cnat_v4_functions.c \
+ plugins/vcgn/index_list.c \
+ plugins/vcgn/spp_platform_trace_log.c \
+ plugins/vcgn/vcgn_classify.c
+
+nobase_include_HEADERS += plugins/vcgn/cgn_bitmap.h \
+ plugins/vcgn/cgse_defs.h \
+ plugins/vcgn/cnat_bulk_port_defs.h \
+ plugins/vcgn/cnat_bulk_port.h \
+ plugins/vcgn/cnat_cli.h \
+ plugins/vcgn/cnat_common_api.h \
+ plugins/vcgn/cnat_config_api.h \
+ plugins/vcgn/cnat_config.h \
+ plugins/vcgn/cnat_db.h \
+ plugins/vcgn/cnat_global.h \
+ plugins/vcgn/cnat_ipv4_icmp.h \
+ plugins/vcgn/cnat_ipv4_udp.h \
+ plugins/vcgn/cnat_log_api.h \
+ plugins/vcgn/cnat_log_common.h \
+ plugins/vcgn/cnat_logging.h \
+ plugins/vcgn/cnat_pcp_server.h \
+ plugins/vcgn/cnat_ports.h \
+ plugins/vcgn/cnat_show_api.h \
+ plugins/vcgn/cnat_show_response.h \
+ plugins/vcgn/cnat_syslog.h \
+ plugins/vcgn/cnat_v4_ftp_alg.h \
+ plugins/vcgn/cnat_v4_functions.h \
+ plugins/vcgn/cnat_v4_pptp_alg.h \
+ plugins/vcgn/cnat_va_db.h \
+ plugins/vcgn/dslite_db.h \
+ plugins/vcgn/dslite_defs.h \
+ plugins/vcgn/index_list.h \
+ plugins/vcgn/nat64_db.h \
+ plugins/vcgn/nat64_defs.h \
+ plugins/vcgn/nat64_tcp_sm.h \
+ plugins/vcgn/platform_common.h \
+ plugins/vcgn/platform_common_override.h \
+ plugins/vcgn/spp_ctx.h \
+ plugins/vcgn/spp_platform_trace_log.h \
+ plugins/vcgn/spp_timers.h \
+ plugins/vcgn/tcp_header_definitions.h \
+ plugins/vcgn/vcgn_db.h
+
+libvcgn_plugin_la_LDFLAGS = -module
+
+lib_LTLIBRARIES += libvcgn_plugin.la
+
if WITH_PLUGIN_TOOLKIT
install-data-hook:
mkdir /usr/lib/vpp_plugins || true
mkdir /usr/lib/vpp_api_test_plugins || true
- cp $(prefix)/lib/sixrd_plugin.so.*.*.* /usr/lib/vpp_plugins
+ cp $(prefix)/lib/libsixrd_plugin.so.*.*.* /usr/lib/vpp_plugins
+ cp $(prefix)/lib/libvcgn_plugin.so.*.*.* /usr/lib/vpp_plugins
cp $(prefix)/lib/ioam_pot_plugin.so.*.*.* /usr/lib/vpp_plugins
cp $(prefix)/lib/ioam_pot_test_plugin.so.*.*.* \
/usr/lib/vpp_api_test_plugins
endif
+
diff --git a/vnet/vnet/vcgn/README b/plugins/plugins/vcgn/README
index 9b903967ac4..9b903967ac4 100644
--- a/vnet/vnet/vcgn/README
+++ b/plugins/plugins/vcgn/README
diff --git a/vnet/vnet/vcgn/cgn_bitmap.h b/plugins/plugins/vcgn/cgn_bitmap.h
index 6c46b75a608..6c46b75a608 100644
--- a/vnet/vnet/vcgn/cgn_bitmap.h
+++ b/plugins/plugins/vcgn/cgn_bitmap.h
diff --git a/vnet/vnet/vcgn/cgse_defs.h b/plugins/plugins/vcgn/cgse_defs.h
index 08255875fec..08255875fec 100644
--- a/vnet/vnet/vcgn/cgse_defs.h
+++ b/plugins/plugins/vcgn/cgse_defs.h
diff --git a/vnet/vnet/vcgn/cnat_bulk_port.c b/plugins/plugins/vcgn/cnat_bulk_port.c
index d8894eb84f5..d8894eb84f5 100644
--- a/vnet/vnet/vcgn/cnat_bulk_port.c
+++ b/plugins/plugins/vcgn/cnat_bulk_port.c
diff --git a/vnet/vnet/vcgn/cnat_bulk_port.h b/plugins/plugins/vcgn/cnat_bulk_port.h
index 3e48b9a7794..3e48b9a7794 100644
--- a/vnet/vnet/vcgn/cnat_bulk_port.h
+++ b/plugins/plugins/vcgn/cnat_bulk_port.h
diff --git a/vnet/vnet/vcgn/cnat_bulk_port_defs.h b/plugins/plugins/vcgn/cnat_bulk_port_defs.h
index edb47b0a8e1..edb47b0a8e1 100644
--- a/vnet/vnet/vcgn/cnat_bulk_port_defs.h
+++ b/plugins/plugins/vcgn/cnat_bulk_port_defs.h
diff --git a/vnet/vnet/vcgn/cnat_cli.h b/plugins/plugins/vcgn/cnat_cli.h
index e9d190a577a..e9d190a577a 100644
--- a/vnet/vnet/vcgn/cnat_cli.h
+++ b/plugins/plugins/vcgn/cnat_cli.h
diff --git a/vnet/vnet/vcgn/cnat_cli_handler.c b/plugins/plugins/vcgn/cnat_cli_handler.c
index 4650559c299..a4010349b40 100644
--- a/vnet/vnet/vcgn/cnat_cli_handler.c
+++ b/plugins/plugins/vcgn/cnat_cli_handler.c
@@ -327,7 +327,7 @@ void cnat_nat44_handle_show_config(vlib_main_t *vm)
*global_nfv9_logging_info = 0;
vnet_hw_interface_t * hw;
- dpdk_main_t * dm = &dpdk_main;
+ vnet_main_t * vnm = vnet_get_main();
void cnat_nfv9_show_collector
(vlib_main_t *vm, cnat_nfv9_logging_info_t *my_nfv9_logging_info);
@@ -338,9 +338,9 @@ void cnat_nat44_handle_show_config(vlib_main_t *vm)
vlib_cli_output(vm, "\tdynamic port start range : %u\n", cnat_static_port_range);
pool_foreach(my_vrfmap, cnat_map_by_vrf, ({
- hw = vnet_get_hw_interface (dm->vnet_main, my_vrfmap->i_vrf);
+ hw = vnet_get_hw_interface (vnm, my_vrfmap->i_vrf);
vlib_cli_output(vm, "\tInside Interface : %v\n", hw->name);
- hw = vnet_get_hw_interface (dm->vnet_main, my_vrfmap->o_vrf);
+ hw = vnet_get_hw_interface (vnm, my_vrfmap->o_vrf);
vlib_cli_output(vm, "\tOutside Interface : %v\n", hw->name);
memset(status_str, 0x00, sizeof(status_str));
@@ -504,7 +504,7 @@ void cnat_v4_show_inside_entry_req_t_handler
u8 display_entry;
u8 flag_str[11];
vnet_hw_interface_t * hw;
- dpdk_main_t * dm = &dpdk_main;
+ vnet_main_t * vnm = vnet_get_main();
ki.k.k.ipv4 = mp->ipv4_addr;
ki.k.k.vrf = mp->vrf_id;
@@ -724,7 +724,7 @@ next_entry:
else strncpy((char *)transl_str, "Unknown", 7); /* currently we are not supporting static/alg entries */
ip.s_addr = clib_net_to_host_u32(u_ki.k.k.ipv4);
- hw = vnet_get_hw_interface (dm->vnet_main, u_ki.k.k.vrf);
+ hw = vnet_get_hw_interface (vnm, u_ki.k.k.vrf);
vlib_cli_output (vm, "Inside-translation details\n");
vlib_cli_output (vm, "--------------------------\n");
@@ -791,7 +791,7 @@ void cnat_v4_show_outside_entry_req_t_handler
u8 display_entry;
u8 flag_str[11];
vnet_hw_interface_t * hw;
- dpdk_main_t * dm = &dpdk_main;
+ vnet_main_t * vnm = vnet_get_main();
ko.k.k.ipv4 = mp->ipv4_addr;
ko.k.k.vrf = mp->vrf_id;
@@ -912,7 +912,7 @@ void cnat_v4_show_outside_entry_req_t_handler
else strncpy((char *)transl_str, "Unknown", 7); /* currently we are not supporting static/alg entries */
ip.s_addr = clib_net_to_host_u32(ko.k.k.ipv4);
- hw = vnet_get_hw_interface (dm->vnet_main, (ko.k.k.vrf & CNAT_VRF_MASK));
+ hw = vnet_get_hw_interface (vnm, (ko.k.k.vrf & CNAT_VRF_MASK));
vlib_cli_output (vm, "Outside-translation details\n");
vlib_cli_output (vm, "--------------------------\n");
diff --git a/vnet/vnet/vcgn/cnat_common_api.h b/plugins/plugins/vcgn/cnat_common_api.h
index a4eb74432f2..a4eb74432f2 100644
--- a/vnet/vnet/vcgn/cnat_common_api.h
+++ b/plugins/plugins/vcgn/cnat_common_api.h
diff --git a/vnet/vnet/vcgn/cnat_config.c b/plugins/plugins/vcgn/cnat_config.c
index 87183dfa961..87183dfa961 100644
--- a/vnet/vnet/vcgn/cnat_config.c
+++ b/plugins/plugins/vcgn/cnat_config.c
diff --git a/vnet/vnet/vcgn/cnat_config.h b/plugins/plugins/vcgn/cnat_config.h
index f104273716f..f104273716f 100644
--- a/vnet/vnet/vcgn/cnat_config.h
+++ b/plugins/plugins/vcgn/cnat_config.h
diff --git a/vnet/vnet/vcgn/cnat_config_api.h b/plugins/plugins/vcgn/cnat_config_api.h
index 0789d6a92af..0789d6a92af 100644
--- a/vnet/vnet/vcgn/cnat_config_api.h
+++ b/plugins/plugins/vcgn/cnat_config_api.h
diff --git a/vnet/vnet/vcgn/cnat_db.h b/plugins/plugins/vcgn/cnat_db.h
index 3596e2384e6..3596e2384e6 100644
--- a/vnet/vnet/vcgn/cnat_db.h
+++ b/plugins/plugins/vcgn/cnat_db.h
diff --git a/vnet/vnet/vcgn/cnat_db_scanner.c b/plugins/plugins/vcgn/cnat_db_scanner.c
index 6e536d84c79..6e536d84c79 100644
--- a/vnet/vnet/vcgn/cnat_db_scanner.c
+++ b/plugins/plugins/vcgn/cnat_db_scanner.c
diff --git a/vnet/vnet/vcgn/cnat_db_v2.c b/plugins/plugins/vcgn/cnat_db_v2.c
index 2b43849dca3..2b43849dca3 100644
--- a/vnet/vnet/vcgn/cnat_db_v2.c
+++ b/plugins/plugins/vcgn/cnat_db_v2.c
diff --git a/vnet/vnet/vcgn/cnat_debug_msg_handler.c b/plugins/plugins/vcgn/cnat_debug_msg_handler.c
index 519f4b64939..519f4b64939 100644
--- a/vnet/vnet/vcgn/cnat_debug_msg_handler.c
+++ b/plugins/plugins/vcgn/cnat_debug_msg_handler.c
diff --git a/vnet/vnet/vcgn/cnat_global.c b/plugins/plugins/vcgn/cnat_global.c
index 7177083466e..7177083466e 100644
--- a/vnet/vnet/vcgn/cnat_global.c
+++ b/plugins/plugins/vcgn/cnat_global.c
diff --git a/vnet/vnet/vcgn/cnat_global.h b/plugins/plugins/vcgn/cnat_global.h
index 823a47974d4..823a47974d4 100644
--- a/vnet/vnet/vcgn/cnat_global.h
+++ b/plugins/plugins/vcgn/cnat_global.h
diff --git a/vnet/vnet/vcgn/cnat_ipv4_icmp.h b/plugins/plugins/vcgn/cnat_ipv4_icmp.h
index 664b62ac3dc..664b62ac3dc 100644
--- a/vnet/vnet/vcgn/cnat_ipv4_icmp.h
+++ b/plugins/plugins/vcgn/cnat_ipv4_icmp.h
diff --git a/vnet/vnet/vcgn/cnat_ipv4_icmp_error_inside_input.c b/plugins/plugins/vcgn/cnat_ipv4_icmp_error_inside_input.c
index 218d7e538fa..218d7e538fa 100644
--- a/vnet/vnet/vcgn/cnat_ipv4_icmp_error_inside_input.c
+++ b/plugins/plugins/vcgn/cnat_ipv4_icmp_error_inside_input.c
diff --git a/vnet/vnet/vcgn/cnat_ipv4_icmp_error_outside_input.c b/plugins/plugins/vcgn/cnat_ipv4_icmp_error_outside_input.c
index f25f4d022c7..f25f4d022c7 100644
--- a/vnet/vnet/vcgn/cnat_ipv4_icmp_error_outside_input.c
+++ b/plugins/plugins/vcgn/cnat_ipv4_icmp_error_outside_input.c
diff --git a/vnet/vnet/vcgn/cnat_ipv4_icmp_query_inside_input.c b/plugins/plugins/vcgn/cnat_ipv4_icmp_query_inside_input.c
index 1b9f0266d71..1b9f0266d71 100644
--- a/vnet/vnet/vcgn/cnat_ipv4_icmp_query_inside_input.c
+++ b/plugins/plugins/vcgn/cnat_ipv4_icmp_query_inside_input.c
diff --git a/vnet/vnet/vcgn/cnat_ipv4_icmp_query_inside_input_exception.c b/plugins/plugins/vcgn/cnat_ipv4_icmp_query_inside_input_exception.c
index 9b5e280e571..9b5e280e571 100644
--- a/vnet/vnet/vcgn/cnat_ipv4_icmp_query_inside_input_exception.c
+++ b/plugins/plugins/vcgn/cnat_ipv4_icmp_query_inside_input_exception.c
diff --git a/vnet/vnet/vcgn/cnat_ipv4_icmp_query_outside_input.c b/plugins/plugins/vcgn/cnat_ipv4_icmp_query_outside_input.c
index 2c05e0b400e..2c05e0b400e 100644
--- a/vnet/vnet/vcgn/cnat_ipv4_icmp_query_outside_input.c
+++ b/plugins/plugins/vcgn/cnat_ipv4_icmp_query_outside_input.c
diff --git a/vnet/vnet/vcgn/cnat_ipv4_tcp_inside_input.c b/plugins/plugins/vcgn/cnat_ipv4_tcp_inside_input.c
index 5bea707385c..5bea707385c 100644
--- a/vnet/vnet/vcgn/cnat_ipv4_tcp_inside_input.c
+++ b/plugins/plugins/vcgn/cnat_ipv4_tcp_inside_input.c
diff --git a/vnet/vnet/vcgn/cnat_ipv4_tcp_inside_input_exceptions.c b/plugins/plugins/vcgn/cnat_ipv4_tcp_inside_input_exceptions.c
index bc1bebb04ba..bc1bebb04ba 100644
--- a/vnet/vnet/vcgn/cnat_ipv4_tcp_inside_input_exceptions.c
+++ b/plugins/plugins/vcgn/cnat_ipv4_tcp_inside_input_exceptions.c
diff --git a/vnet/vnet/vcgn/cnat_ipv4_tcp_outside_input.c b/plugins/plugins/vcgn/cnat_ipv4_tcp_outside_input.c
index bcf132b1dd7..bcf132b1dd7 100644
--- a/vnet/vnet/vcgn/cnat_ipv4_tcp_outside_input.c
+++ b/plugins/plugins/vcgn/cnat_ipv4_tcp_outside_input.c
diff --git a/vnet/vnet/vcgn/cnat_ipv4_udp.h b/plugins/plugins/vcgn/cnat_ipv4_udp.h
index 1ccf74a004e..1ccf74a004e 100644
--- a/vnet/vnet/vcgn/cnat_ipv4_udp.h
+++ b/plugins/plugins/vcgn/cnat_ipv4_udp.h
diff --git a/vnet/vnet/vcgn/cnat_ipv4_udp_inside_input.c b/plugins/plugins/vcgn/cnat_ipv4_udp_inside_input.c
index 657c5f1e64e..657c5f1e64e 100644
--- a/vnet/vnet/vcgn/cnat_ipv4_udp_inside_input.c
+++ b/plugins/plugins/vcgn/cnat_ipv4_udp_inside_input.c
diff --git a/vnet/vnet/vcgn/cnat_ipv4_udp_inside_input_exceptions.c b/plugins/plugins/vcgn/cnat_ipv4_udp_inside_input_exceptions.c
index f078c8d4391..f078c8d4391 100644
--- a/vnet/vnet/vcgn/cnat_ipv4_udp_inside_input_exceptions.c
+++ b/plugins/plugins/vcgn/cnat_ipv4_udp_inside_input_exceptions.c
diff --git a/vnet/vnet/vcgn/cnat_ipv4_udp_outside_input.c b/plugins/plugins/vcgn/cnat_ipv4_udp_outside_input.c
index 5a24a111f75..5a24a111f75 100644
--- a/vnet/vnet/vcgn/cnat_ipv4_udp_outside_input.c
+++ b/plugins/plugins/vcgn/cnat_ipv4_udp_outside_input.c
diff --git a/vnet/vnet/vcgn/cnat_log_api.h b/plugins/plugins/vcgn/cnat_log_api.h
index 60cf683697d..60cf683697d 100644
--- a/vnet/vnet/vcgn/cnat_log_api.h
+++ b/plugins/plugins/vcgn/cnat_log_api.h
diff --git a/vnet/vnet/vcgn/cnat_log_common.h b/plugins/plugins/vcgn/cnat_log_common.h
index 52731bc0028..52731bc0028 100644
--- a/vnet/vnet/vcgn/cnat_log_common.h
+++ b/plugins/plugins/vcgn/cnat_log_common.h
diff --git a/vnet/vnet/vcgn/cnat_logging.c b/plugins/plugins/vcgn/cnat_logging.c
index 50805d118ae..50805d118ae 100644
--- a/vnet/vnet/vcgn/cnat_logging.c
+++ b/plugins/plugins/vcgn/cnat_logging.c
diff --git a/vnet/vnet/vcgn/cnat_logging.h b/plugins/plugins/vcgn/cnat_logging.h
index 7bd43ecf21e..7bd43ecf21e 100644
--- a/vnet/vnet/vcgn/cnat_logging.h
+++ b/plugins/plugins/vcgn/cnat_logging.h
diff --git a/vnet/vnet/vcgn/cnat_pcp_server.h b/plugins/plugins/vcgn/cnat_pcp_server.h
index c77c6a875f8..c77c6a875f8 100644
--- a/vnet/vnet/vcgn/cnat_pcp_server.h
+++ b/plugins/plugins/vcgn/cnat_pcp_server.h
diff --git a/vnet/vnet/vcgn/cnat_ports.c b/plugins/plugins/vcgn/cnat_ports.c
index 943fb3ed38c..943fb3ed38c 100644
--- a/vnet/vnet/vcgn/cnat_ports.c
+++ b/plugins/plugins/vcgn/cnat_ports.c
diff --git a/vnet/vnet/vcgn/cnat_ports.h b/plugins/plugins/vcgn/cnat_ports.h
index bc1fb0d24a8..bc1fb0d24a8 100644
--- a/vnet/vnet/vcgn/cnat_ports.h
+++ b/plugins/plugins/vcgn/cnat_ports.h
diff --git a/vnet/vnet/vcgn/cnat_show.c b/plugins/plugins/vcgn/cnat_show.c
index 68c52756d2a..68c52756d2a 100644
--- a/vnet/vnet/vcgn/cnat_show.c
+++ b/plugins/plugins/vcgn/cnat_show.c
diff --git a/vnet/vnet/vcgn/cnat_show_api.h b/plugins/plugins/vcgn/cnat_show_api.h
index 5904c7e2dd6..5904c7e2dd6 100644
--- a/vnet/vnet/vcgn/cnat_show_api.h
+++ b/plugins/plugins/vcgn/cnat_show_api.h
diff --git a/vnet/vnet/vcgn/cnat_show_response.h b/plugins/plugins/vcgn/cnat_show_response.h
index bec1bd97245..bec1bd97245 100644
--- a/vnet/vnet/vcgn/cnat_show_response.h
+++ b/plugins/plugins/vcgn/cnat_show_response.h
diff --git a/vnet/vnet/vcgn/cnat_syslog.c b/plugins/plugins/vcgn/cnat_syslog.c
index 91758f141a9..91758f141a9 100644
--- a/vnet/vnet/vcgn/cnat_syslog.c
+++ b/plugins/plugins/vcgn/cnat_syslog.c
diff --git a/vnet/vnet/vcgn/cnat_syslog.h b/plugins/plugins/vcgn/cnat_syslog.h
index 931f4b9cd22..931f4b9cd22 100644
--- a/vnet/vnet/vcgn/cnat_syslog.h
+++ b/plugins/plugins/vcgn/cnat_syslog.h
diff --git a/vnet/vnet/vcgn/cnat_util.c b/plugins/plugins/vcgn/cnat_util.c
index c3697b6be2f..c3697b6be2f 100644
--- a/vnet/vnet/vcgn/cnat_util.c
+++ b/plugins/plugins/vcgn/cnat_util.c
diff --git a/vnet/vnet/vcgn/cnat_v4_ftp_alg.h b/plugins/plugins/vcgn/cnat_v4_ftp_alg.h
index df3dfcb0797..df3dfcb0797 100644
--- a/vnet/vnet/vcgn/cnat_v4_ftp_alg.h
+++ b/plugins/plugins/vcgn/cnat_v4_ftp_alg.h
diff --git a/vnet/vnet/vcgn/cnat_v4_functions.c b/plugins/plugins/vcgn/cnat_v4_functions.c
index d3051fba5a7..d3051fba5a7 100644
--- a/vnet/vnet/vcgn/cnat_v4_functions.c
+++ b/plugins/plugins/vcgn/cnat_v4_functions.c
diff --git a/vnet/vnet/vcgn/cnat_v4_functions.h b/plugins/plugins/vcgn/cnat_v4_functions.h
index 2429e5e1437..2429e5e1437 100644
--- a/vnet/vnet/vcgn/cnat_v4_functions.h
+++ b/plugins/plugins/vcgn/cnat_v4_functions.h
diff --git a/vnet/vnet/vcgn/cnat_v4_pptp_alg.h b/plugins/plugins/vcgn/cnat_v4_pptp_alg.h
index 5a6d4243165..5a6d4243165 100644
--- a/vnet/vnet/vcgn/cnat_v4_pptp_alg.h
+++ b/plugins/plugins/vcgn/cnat_v4_pptp_alg.h
diff --git a/vnet/vnet/vcgn/cnat_v4_tcp_in2out_stages.c b/plugins/plugins/vcgn/cnat_v4_tcp_in2out_stages.c
index 220ced461aa..220ced461aa 100644
--- a/vnet/vnet/vcgn/cnat_v4_tcp_in2out_stages.c
+++ b/plugins/plugins/vcgn/cnat_v4_tcp_in2out_stages.c
diff --git a/vnet/vnet/vcgn/cnat_va_db.c b/plugins/plugins/vcgn/cnat_va_db.c
index 7423bdf2de2..7423bdf2de2 100644
--- a/vnet/vnet/vcgn/cnat_va_db.c
+++ b/plugins/plugins/vcgn/cnat_va_db.c
diff --git a/vnet/vnet/vcgn/cnat_va_db.h b/plugins/plugins/vcgn/cnat_va_db.h
index 6e0051b46f7..6e0051b46f7 100644
--- a/vnet/vnet/vcgn/cnat_va_db.h
+++ b/plugins/plugins/vcgn/cnat_va_db.h
diff --git a/vnet/vnet/vcgn/dslite_db.h b/plugins/plugins/vcgn/dslite_db.h
index 2269b98c989..2269b98c989 100644
--- a/vnet/vnet/vcgn/dslite_db.h
+++ b/plugins/plugins/vcgn/dslite_db.h
diff --git a/vnet/vnet/vcgn/dslite_defs.h b/plugins/plugins/vcgn/dslite_defs.h
index 4860adcb77d..4860adcb77d 100644
--- a/vnet/vnet/vcgn/dslite_defs.h
+++ b/plugins/plugins/vcgn/dslite_defs.h
diff --git a/vnet/vnet/vcgn/index_list.c b/plugins/plugins/vcgn/index_list.c
index ec1b83b0b30..ec1b83b0b30 100644
--- a/vnet/vnet/vcgn/index_list.c
+++ b/plugins/plugins/vcgn/index_list.c
diff --git a/vnet/vnet/vcgn/index_list.h b/plugins/plugins/vcgn/index_list.h
index 498cd7eb7ad..498cd7eb7ad 100644
--- a/vnet/vnet/vcgn/index_list.h
+++ b/plugins/plugins/vcgn/index_list.h
diff --git a/vnet/vnet/vcgn/nat64_db.h b/plugins/plugins/vcgn/nat64_db.h
index 837464f6940..837464f6940 100644
--- a/vnet/vnet/vcgn/nat64_db.h
+++ b/plugins/plugins/vcgn/nat64_db.h
diff --git a/vnet/vnet/vcgn/nat64_defs.h b/plugins/plugins/vcgn/nat64_defs.h
index 47e431a7462..47e431a7462 100644
--- a/vnet/vnet/vcgn/nat64_defs.h
+++ b/plugins/plugins/vcgn/nat64_defs.h
diff --git a/vnet/vnet/vcgn/nat64_tcp_sm.h b/plugins/plugins/vcgn/nat64_tcp_sm.h
index 3a505bc1649..3a505bc1649 100644
--- a/vnet/vnet/vcgn/nat64_tcp_sm.h
+++ b/plugins/plugins/vcgn/nat64_tcp_sm.h
diff --git a/vnet/vnet/vcgn/platform_common.h b/plugins/plugins/vcgn/platform_common.h
index 2805b6078ce..2805b6078ce 100644
--- a/vnet/vnet/vcgn/platform_common.h
+++ b/plugins/plugins/vcgn/platform_common.h
diff --git a/vnet/vnet/vcgn/platform_common_override.h b/plugins/plugins/vcgn/platform_common_override.h
index d6d3b0785b5..d6d3b0785b5 100644
--- a/vnet/vnet/vcgn/platform_common_override.h
+++ b/plugins/plugins/vcgn/platform_common_override.h
diff --git a/vnet/vnet/vcgn/spp_ctx.h b/plugins/plugins/vcgn/spp_ctx.h
index 2d3c95c8887..2d3c95c8887 100644
--- a/vnet/vnet/vcgn/spp_ctx.h
+++ b/plugins/plugins/vcgn/spp_ctx.h
diff --git a/vnet/vnet/vcgn/spp_platform_trace_log.c b/plugins/plugins/vcgn/spp_platform_trace_log.c
index a96894f935d..a96894f935d 100644
--- a/vnet/vnet/vcgn/spp_platform_trace_log.c
+++ b/plugins/plugins/vcgn/spp_platform_trace_log.c
diff --git a/vnet/vnet/vcgn/spp_platform_trace_log.h b/plugins/plugins/vcgn/spp_platform_trace_log.h
index 36da710f28c..36da710f28c 100644
--- a/vnet/vnet/vcgn/spp_platform_trace_log.h
+++ b/plugins/plugins/vcgn/spp_platform_trace_log.h
diff --git a/vnet/vnet/vcgn/spp_timers.h b/plugins/plugins/vcgn/spp_timers.h
index afb0147b2ed..afb0147b2ed 100644
--- a/vnet/vnet/vcgn/spp_timers.h
+++ b/plugins/plugins/vcgn/spp_timers.h
diff --git a/vnet/vnet/vcgn/tcp_header_definitions.h b/plugins/plugins/vcgn/tcp_header_definitions.h
index 02920bcc8ee..02920bcc8ee 100644
--- a/vnet/vnet/vcgn/tcp_header_definitions.h
+++ b/plugins/plugins/vcgn/tcp_header_definitions.h
diff --git a/vnet/vnet/vcgn/vcgn_classify.c b/plugins/plugins/vcgn/vcgn_classify.c
index 7747266aa95..18cc4ba0d1e 100644
--- a/vnet/vnet/vcgn/vcgn_classify.c
+++ b/plugins/plugins/vcgn/vcgn_classify.c
@@ -13,6 +13,7 @@
* limitations under the License.
*/
+#include <vnet/plugin/plugin.h>
#include <vlib/vlib.h>
#include <vnet/vnet.h>
#include <vnet/pg/pg.h>
@@ -1492,4 +1493,16 @@ vcgn_init (vlib_main_t * vm)
return error;
}
-VLIB_INIT_FUNCTION (vcgn_init);
+/*
+ * This routine exists to convince the vlib plugin framework that
+ * we haven't accidentally copied a random .dll into the plugin
+ * directory. This is used in lieu of VLIB_INIT_FUNCTION(vcgn_init).
+ *
+ * Also collects global variable pointers passed from the vpp engine
+ */
+clib_error_t *
+vlib_plugin_register (vlib_main_t * vm, vnet_plugin_handoff_t * h,
+ int from_early_init)
+{
+ return vcgn_init(vm);
+}
diff --git a/vnet/vnet/vcgn/vcgn_db.h b/plugins/plugins/vcgn/vcgn_db.h
index cd7d835cba1..cd7d835cba1 100644
--- a/vnet/vnet/vcgn/vcgn_db.h
+++ b/plugins/plugins/vcgn/vcgn_db.h
diff --git a/vnet/Makefile.am b/vnet/Makefile.am
index d0a06be8e9e..2d623c3229d 100644
--- a/vnet/Makefile.am
+++ b/vnet/Makefile.am
@@ -13,7 +13,7 @@
AUTOMAKE_OPTIONS = foreign subdir-objects
-AM_CFLAGS = -Wall @DPDK@ @VIRL@ @IPSEC@ @VCGN@ @IPV6SR@
+AM_CFLAGS = -Wall @DPDK@ @VIRL@ @IPSEC@ @IPV6SR@
libvnet_la_SOURCES =
libvnetplugin_la_SOURCES =
@@ -524,41 +524,6 @@ nobase_include_HEADERS += \
vnet/sr/sr.h
########################################
-# CGN
-#########################################
-
-if WITH_VCGN
-libvnet_la_SOURCES += \
- vnet/vcgn/cnat_bulk_port.c \
- vnet/vcgn/cnat_config.c \
- vnet/vcgn/cnat_db_scanner.c \
- vnet/vcgn/cnat_db_v2.c \
- vnet/vcgn/cnat_debug_msg_handler.c \
- vnet/vcgn/cnat_cli_handler.c \
- vnet/vcgn/cnat_global.c \
- vnet/vcgn/cnat_ipv4_udp_inside_input.c \
- vnet/vcgn/cnat_ipv4_udp_inside_input_exceptions.c \
- vnet/vcgn/cnat_ipv4_udp_outside_input.c \
- vnet/vcgn/cnat_ipv4_tcp_inside_input.c \
- vnet/vcgn/cnat_ipv4_tcp_inside_input_exceptions.c \
- vnet/vcgn/cnat_ipv4_tcp_outside_input.c \
- vnet/vcgn/cnat_ipv4_icmp_query_inside_input.c \
- vnet/vcgn/cnat_ipv4_icmp_query_inside_input_exception.c \
- vnet/vcgn/cnat_ipv4_icmp_query_outside_input.c \
- vnet/vcgn/cnat_ipv4_icmp_error_inside_input.c \
- vnet/vcgn/cnat_ipv4_icmp_error_outside_input.c \
- vnet/vcgn/cnat_logging.c \
- vnet/vcgn/cnat_ports.c \
- vnet/vcgn/cnat_util.c \
- vnet/vcgn/cnat_show.c \
- vnet/vcgn/cnat_syslog.c \
- vnet/vcgn/cnat_v4_functions.c \
- vnet/vcgn/index_list.c \
- vnet/vcgn/spp_platform_trace_log.c \
- vnet/vcgn/vcgn_classify.c
-endif
-
-########################################
# DHCPv6 proxy
########################################
libvnet_la_SOURCES += \
diff --git a/vnet/configure.ac b/vnet/configure.ac
index 8f8b91f793c..9afae520159 100644
--- a/vnet/configure.ac
+++ b/vnet/configure.ac
@@ -24,11 +24,6 @@ AC_ARG_WITH(ipsec,
[with_ipsec=0],
[with_ipsec=1])
-AC_ARG_WITH(vcgn,
- AC_HELP_STRING([--without-vcgn],[Disable vcgn]),
- [with_vcgn=0],
- [with_vcgn=1])
-
AC_ARG_WITH(ipv6sr,
AC_HELP_STRING([--without-ipv6sr],[Disable ipv6sr]),
[with_ipv6sr=0],
@@ -48,9 +43,6 @@ AC_SUBST(VIRL,[-DVIRL=${with_virl}])
AM_CONDITIONAL(WITH_IPSEC, test "$with_ipsec" = "1")
AC_SUBST(IPSEC,[-DIPSEC=${with_ipsec}])
-AM_CONDITIONAL(WITH_VCGN, test "$with_vcgn" = "1")
-AC_SUBST(VCGN,[-DVCGN=${with_vcgn}])
-
AM_CONDITIONAL(WITH_IPV6SR, test "$with_ipv6sr" = "1")
AC_SUBST(IPV6SR,[-DIPV6SR=${with_ipv6sr}])