}
};
-VNET_FEATURE_INIT (acl_out_ip6_fa_feature, static) =
-{
+VNET_FEATURE_INIT (acl_out_ip6_fa_feature, static) = {
.arc_name = "ip6-output",
.node_name = "acl-plugin-out-ip6-fa",
- .runs_before = VNET_FEATURES ("interface-output"),
+ .runs_before = VNET_FEATURES ("ip6-dvr-reinject", "interface-output"),
};
VLIB_REGISTER_NODE (acl_out_fa_ip4_node) =
}
};
-VNET_FEATURE_INIT (acl_out_ip4_fa_feature, static) =
-{
+VNET_FEATURE_INIT (acl_out_ip4_fa_feature, static) = {
.arc_name = "ip4-output",
.node_name = "acl-plugin-out-ip4-fa",
- .runs_before = VNET_FEATURES ("interface-output"),
+ .runs_before = VNET_FEATURES ("ip4-dvr-reinject", "interface-output"),
};
/* *INDENT-ON* */
return 0;
}
-VLIB_INIT_FUNCTION (dns_init);
-
/* *INDENT-OFF* */
+VLIB_INIT_FUNCTION (dns_init) = {
+ .init_order = VLIB_INITS ("flow_classify_init", "dns_init"),
+};
+
VLIB_PLUGIN_REGISTER () =
{
.version = VPP_BUILD_VER,
{
.arc_name = "ip4-output",
.node_name = "ip4-dvr-reinject",
- .runs_after = VNET_FEATURES ("nat44-in2out-output",
- "acl-plugin-out-ip4-fa"),
};
VNET_FEATURE_INIT (ip6_dvr_reinject_feat_node, static) =
{
.arc_name = "ip6-output",
.node_name = "ip6-dvr-reinject",
- .runs_after = VNET_FEATURES ("acl-plugin-out-ip6-fa"),
};
}
/* *INDENT-OFF* */
-VLIB_INIT_FUNCTION (ip_main_init) =
-{
- .init_order =
- VLIB_INITS ("vnet_main_init",
- "ip4_init",
- "ip6_init",
- "icmp4_init",
- "icmp6_init",
- "ip6_hop_by_hop_init",
- "udp_local_init",
- "udp_init",
- "ip_classify_init",
- "in_out_acl_init",
- "policer_classify_init",
- "flow_classify_init",
- "dns_init"),
+VLIB_INIT_FUNCTION (ip_main_init) = {
+ .init_order = VLIB_INITS ("vnet_main_init", "ip4_init", "ip6_init",
+ "icmp4_init", "icmp6_init", "ip6_hop_by_hop_init",
+ "udp_local_init", "udp_init", "ip_classify_init",
+ "in_out_acl_init", "policer_classify_init",
+ "flow_classify_init"),
};
/* *INDENT-ON* */