mirror of
https://github.com/breeze303/nss-packages.git
synced 2025-12-16 16:57:29 +00:00
qca-nss-ecm: update to 12.4.r1
Signed-off-by: bitthief <bitthief@protonmail.ch>
This commit is contained in:
parent
08daa5dfaa
commit
b4275fd896
@ -1,14 +1,13 @@
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=qca-nss-ecm
|
||||
PKG_RELEASE:=$(AUTORELEASE)
|
||||
PKG_RELEASE=1
|
||||
|
||||
PKG_SOURCE_URL:=https://git.codelinaro.org/clo/qsdk/oss/lklm/qca-nss-ecm.git
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_DATE:=2023-01-20
|
||||
PKG_SOURCE_VERSION:=db66c472e07990600bec9f01fb79e103540b0ca3
|
||||
PKG_MIRROR_HASH:=613fa9f8ff20984db5296763c35dea8a9ac0a5f507a0c125ea2814a6d4047a3a
|
||||
PKG_RELEASE=1
|
||||
PKG_SOURCE_DATE:=2023-04-26
|
||||
PKG_SOURCE_VERSION:=f9b52bfceedca844c61e2e3df2078be8ee736853
|
||||
PKG_MIRROR_HASH:=16d6d10b9544be68758736dee1c0e5c616fb1cf406646fbdf3e7a8db3844e7b3
|
||||
|
||||
PKG_BUILD_PARALLEL:=1
|
||||
PKG_FLAGS:=nonshared
|
||||
|
||||
@ -12,11 +12,9 @@ Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
|
||||
frontends/ecm_front_end_common.c | 7 ++++
|
||||
5 files changed, 72 insertions(+), 12 deletions(-)
|
||||
|
||||
diff --git a/Makefile b/Makefile
|
||||
index a59cbce..f7e40f8 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -125,9 +125,17 @@ ccflags-$(ECM_INTERFACE_BOND_ENABLE) += -DECM_INTERFACE_BOND_ENABLE
|
||||
@@ -130,10 +130,18 @@ ccflags-$(ECM_INTERFACE_BOND_ENABLE) +=
|
||||
# Define ECM_INTERFACE_PPPOE_ENABLE=y in order
|
||||
# to enable support for PPPoE acceleration.
|
||||
# #############################################################################
|
||||
@ -26,29 +24,30 @@ index a59cbce..f7e40f8 100644
|
||||
+endif
|
||||
ccflags-$(ECM_INTERFACE_PPPOE_ENABLE) += -DECM_INTERFACE_PPPOE_ENABLE
|
||||
|
||||
+# #############################################################################
|
||||
# #############################################################################
|
||||
+# Define ECM_INTERFACE_L2TPV2_PPTP_ENABLE=y in order
|
||||
+# to enable support for l2tpv2 or PPTP detection.
|
||||
+# #############################################################################
|
||||
+ccflags-$(ECM_INTERFACE_L2TPV2_PPTP_ENABLE) += -DECM_INTERFACE_L2TPV2_PPTP_ENABLE
|
||||
+
|
||||
# #############################################################################
|
||||
+# #############################################################################
|
||||
# Define ECM_INTERFACE_L2TPV2_ENABLE=y in order
|
||||
# to enable support for l2tpv2 acceleration.
|
||||
@@ -154,6 +162,12 @@ endif
|
||||
endif
|
||||
# #############################################################################
|
||||
@@ -160,6 +168,12 @@ endif
|
||||
ccflags-$(ECM_INTERFACE_PPP_ENABLE) += -DECM_INTERFACE_PPP_ENABLE
|
||||
|
||||
+# #############################################################################
|
||||
# #############################################################################
|
||||
+# Define ECM_INTERFACE_GRE_ENABLE=y in order
|
||||
+# to enable support for GRE detection.
|
||||
+# #############################################################################
|
||||
+ccflags-$(ECM_INTERFACE_GRE_ENABLE) += -DECM_INTERFACE_GRE_ENABLE
|
||||
+
|
||||
# #############################################################################
|
||||
+# #############################################################################
|
||||
# Define ECM_INTERFACE_GRE_TAP_ENABLE=y in order
|
||||
# to enable support for GRE TAP interface.
|
||||
@@ -237,7 +251,9 @@ ccflags-$(ECM_INTERFACE_OVS_BRIDGE_ENABLE) += -DECM_INTERFACE_OVS_BRIDGE_ENABLE
|
||||
# #############################################################################
|
||||
@@ -242,7 +256,9 @@ ccflags-$(ECM_INTERFACE_OVS_BRIDGE_ENABL
|
||||
# #############################################################################
|
||||
# Define ECM_INTERFACE_VLAN_ENABLE=y in order to enable support for VLAN
|
||||
# #############################################################################
|
||||
@ -59,7 +58,7 @@ index a59cbce..f7e40f8 100644
|
||||
ccflags-$(ECM_INTERFACE_VLAN_ENABLE) += -DECM_INTERFACE_VLAN_ENABLE
|
||||
|
||||
# #############################################################################
|
||||
@@ -279,7 +295,9 @@ ccflags-$(ECM_CLASSIFIER_OVS_ENABLE) += -DECM_CLASSIFIER_OVS_ENABLE
|
||||
@@ -284,7 +300,9 @@ ccflags-$(ECM_CLASSIFIER_OVS_ENABLE) +=
|
||||
# #############################################################################
|
||||
# Define ECM_CLASSIFIER_MARK_ENABLE=y in order to enable mark classifier.
|
||||
# #############################################################################
|
||||
@ -70,7 +69,7 @@ index a59cbce..f7e40f8 100644
|
||||
ecm-$(ECM_CLASSIFIER_MARK_ENABLE) += ecm_classifier_mark.o
|
||||
ccflags-$(ECM_CLASSIFIER_MARK_ENABLE) += -DECM_CLASSIFIER_MARK_ENABLE
|
||||
|
||||
@@ -303,7 +321,9 @@ ccflags-$(ECM_CLASSIFIER_NL_ENABLE) += -DECM_CLASSIFIER_NL_ENABLE
|
||||
@@ -308,7 +326,9 @@ ccflags-$(ECM_CLASSIFIER_NL_ENABLE) += -
|
||||
# #############################################################################
|
||||
# Define ECM_CLASSIFIER_DSCP_ENABLE=y in order to enable DSCP classifier.
|
||||
# #############################################################################
|
||||
@ -81,7 +80,7 @@ index a59cbce..f7e40f8 100644
|
||||
ecm-$(ECM_CLASSIFIER_DSCP_ENABLE) += ecm_classifier_dscp.o
|
||||
ccflags-$(ECM_CLASSIFIER_DSCP_ENABLE) += -DECM_CLASSIFIER_DSCP_ENABLE
|
||||
ccflags-$(ECM_CLASSIFIER_DSCP_IGS) += -DECM_CLASSIFIER_DSCP_IGS
|
||||
@@ -322,7 +342,9 @@ ccflags-$(ECM_CLASSIFIER_HYFI_ENABLE) += -DECM_CLASSIFIER_HYFI_ENABLE
|
||||
@@ -327,7 +347,9 @@ ccflags-$(ECM_CLASSIFIER_HYFI_ENABLE) +=
|
||||
# the Parental Controls subsystem classifier in ECM. Currently disabled until
|
||||
# customers require it / if they need to integrate their Parental Controls with it.
|
||||
# #############################################################################
|
||||
@ -92,7 +91,7 @@ index a59cbce..f7e40f8 100644
|
||||
ecm-$(ECM_CLASSIFIER_PCC_ENABLE) += ecm_classifier_pcc.o
|
||||
ccflags-$(ECM_CLASSIFIER_PCC_ENABLE) += -DECM_CLASSIFIER_PCC_ENABLE
|
||||
|
||||
@@ -363,27 +385,36 @@ ccflags-$(ECM_NON_PORTED_SUPPORT_ENABLE) += -DECM_NON_PORTED_SUPPORT_ENABLE
|
||||
@@ -368,27 +390,36 @@ ccflags-$(ECM_NON_PORTED_SUPPORT_ENABLE)
|
||||
# #############################################################################
|
||||
# Define ECM_STATE_OUTPUT_ENABLE=y to support XML state output
|
||||
# #############################################################################
|
||||
@ -132,7 +131,7 @@ index a59cbce..f7e40f8 100644
|
||||
ccflags-$(ECM_TRACKER_DPI_SUPPORT_ENABLE) += -DECM_TRACKER_DPI_SUPPORT_ENABLE
|
||||
|
||||
# #############################################################################
|
||||
@@ -391,14 +422,18 @@ ccflags-$(ECM_TRACKER_DPI_SUPPORT_ENABLE) += -DECM_TRACKER_DPI_SUPPORT_ENABLE
|
||||
@@ -396,14 +427,18 @@ ccflags-$(ECM_TRACKER_DPI_SUPPORT_ENABLE
|
||||
# support for the database keeping lists of connections that are assigned
|
||||
# on a per TYPE of classifier basis.
|
||||
# #############################################################################
|
||||
@ -153,7 +152,7 @@ index a59cbce..f7e40f8 100644
|
||||
ccflags-$(ECM_BAND_STEERING_ENABLE) += -DECM_BAND_STEERING_ENABLE
|
||||
|
||||
# #############################################################################
|
||||
@@ -468,7 +503,6 @@ ccflags-y += -DECM_TRACKER_UDP_DEBUG_LEVEL=1
|
||||
@@ -479,7 +514,6 @@ ccflags-y += -DECM_TRACKER_UDP_DEBUG_LEV
|
||||
ccflags-y += -DECM_BOND_NOTIFIER_DEBUG_LEVEL=1
|
||||
ccflags-y += -DECM_INTERFACE_DEBUG_LEVEL=1
|
||||
ccflags-y += -DECM_STATE_DEBUG_LEVEL=1
|
||||
@ -161,11 +160,9 @@ index a59cbce..f7e40f8 100644
|
||||
ccflags-y += -DECM_NOTIFIER_DEBUG_LEVEL=1
|
||||
ccflags-y += -DECM_AE_CLASSIFIER_DEBUG_LEVEL=1
|
||||
|
||||
diff --git a/ecm_db/ecm_db_connection.c b/ecm_db/ecm_db_connection.c
|
||||
index 6d0bff4..77e5f3f 100644
|
||||
--- a/ecm_db/ecm_db_connection.c
|
||||
+++ b/ecm_db/ecm_db_connection.c
|
||||
@@ -441,7 +441,9 @@ EXPORT_SYMBOL(ecm_db_connection_make_defunct);
|
||||
@@ -446,7 +446,9 @@ EXPORT_SYMBOL(ecm_db_connection_make_def
|
||||
*/
|
||||
void ecm_db_connection_data_totals_update(struct ecm_db_connection_instance *ci, bool is_from, uint64_t size, uint64_t packets)
|
||||
{
|
||||
@ -175,7 +172,7 @@ index 6d0bff4..77e5f3f 100644
|
||||
|
||||
DEBUG_CHECK_MAGIC(ci, ECM_DB_CONNECTION_INSTANCE_MAGIC, "%px: magic failed\n", ci);
|
||||
|
||||
@@ -540,7 +542,9 @@ EXPORT_SYMBOL(ecm_db_connection_data_totals_update);
|
||||
@@ -545,7 +547,9 @@ EXPORT_SYMBOL(ecm_db_connection_data_tot
|
||||
*/
|
||||
void ecm_db_connection_data_totals_update_dropped(struct ecm_db_connection_instance *ci, bool is_from, uint64_t size, uint64_t packets)
|
||||
{
|
||||
@ -185,7 +182,7 @@ index 6d0bff4..77e5f3f 100644
|
||||
|
||||
DEBUG_CHECK_MAGIC(ci, ECM_DB_CONNECTION_INSTANCE_MAGIC, "%px: magic failed\n", ci);
|
||||
|
||||
@@ -1526,6 +1530,7 @@ void ecm_db_connection_defunct_all(void)
|
||||
@@ -1539,6 +1543,7 @@ void ecm_db_connection_defunct_all(void)
|
||||
}
|
||||
EXPORT_SYMBOL(ecm_db_connection_defunct_all);
|
||||
|
||||
@ -193,7 +190,7 @@ index 6d0bff4..77e5f3f 100644
|
||||
/*
|
||||
* ecm_db_connection_defunct_by_classifier()
|
||||
* Make defunct based on masked fields
|
||||
@@ -1692,6 +1697,7 @@ next_ci:
|
||||
@@ -1705,6 +1710,7 @@ next_ci:
|
||||
ECM_IP_ADDR_TO_OCTAL(dest_addr_mask), dest_port_mask, proto_mask, cnt);
|
||||
}
|
||||
}
|
||||
@ -201,7 +198,7 @@ index 6d0bff4..77e5f3f 100644
|
||||
|
||||
/*
|
||||
* ecm_db_connection_defunct_by_port()
|
||||
@@ -1981,6 +1987,7 @@ struct ecm_db_node_instance *ecm_db_connection_node_get_and_ref(struct ecm_db_co
|
||||
@@ -1994,6 +2000,7 @@ struct ecm_db_node_instance *ecm_db_conn
|
||||
}
|
||||
EXPORT_SYMBOL(ecm_db_connection_node_get_and_ref);
|
||||
|
||||
@ -209,7 +206,7 @@ index 6d0bff4..77e5f3f 100644
|
||||
/*
|
||||
* ecm_db_connection_mapping_get_and_ref_next()
|
||||
* Return reference to next connection in the mapping chain in the specified direction.
|
||||
@@ -2022,6 +2029,7 @@ struct ecm_db_connection_instance *ecm_db_connection_iface_get_and_ref_next(stru
|
||||
@@ -2035,6 +2042,7 @@ struct ecm_db_connection_instance *ecm_d
|
||||
return nci;
|
||||
}
|
||||
EXPORT_SYMBOL(ecm_db_connection_iface_get_and_ref_next);
|
||||
@ -217,37 +214,35 @@ index 6d0bff4..77e5f3f 100644
|
||||
|
||||
/*
|
||||
* ecm_db_connection_mapping_get_and_ref()
|
||||
diff --git a/ecm_db/ecm_db_node.c b/ecm_db/ecm_db_node.c
|
||||
index c3d70be..89b386f 100644
|
||||
--- a/ecm_db/ecm_db_node.c
|
||||
+++ b/ecm_db/ecm_db_node.c
|
||||
@@ -227,8 +227,10 @@ EXPORT_SYMBOL(ecm_db_node_get_and_ref_next);
|
||||
@@ -227,9 +227,11 @@ EXPORT_SYMBOL(ecm_db_node_get_and_ref_ne
|
||||
*/
|
||||
int ecm_db_node_deref(struct ecm_db_node_instance *ni)
|
||||
{
|
||||
+#ifdef ECM_DB_XREF_ENABLE
|
||||
#if (DEBUG_LEVEL >= 1)
|
||||
int dir;
|
||||
+#endif
|
||||
#endif
|
||||
+#endif
|
||||
DEBUG_CHECK_MAGIC(ni, ECM_DB_NODE_INSTANCE_MAGIC, "%px: magic failed\n", ni);
|
||||
|
||||
@@ -489,8 +491,10 @@ EXPORT_SYMBOL(ecm_db_node_iface_get_and_ref);
|
||||
spin_lock_bh(&ecm_db_lock);
|
||||
@@ -489,9 +491,11 @@ EXPORT_SYMBOL(ecm_db_node_iface_get_and_
|
||||
void ecm_db_node_add(struct ecm_db_node_instance *ni, struct ecm_db_iface_instance *ii, uint8_t *address,
|
||||
ecm_db_node_final_callback_t final, void *arg)
|
||||
{
|
||||
+#ifdef ECM_DB_XREF_ENABLE
|
||||
#if (DEBUG_LEVEL >= 1)
|
||||
int dir;
|
||||
+#endif
|
||||
#endif
|
||||
+#endif
|
||||
ecm_db_node_hash_t hash_index;
|
||||
struct ecm_db_listener_instance *li;
|
||||
diff --git a/ecm_interface.c b/ecm_interface.c
|
||||
index d7ca169..2ca02bc 100644
|
||||
|
||||
--- a/ecm_interface.c
|
||||
+++ b/ecm_interface.c
|
||||
@@ -1424,6 +1424,7 @@ struct neighbour *ecm_interface_ipv6_neigh_get(struct ecm_front_end_connection_i
|
||||
@@ -1483,6 +1483,7 @@ struct neighbour *ecm_interface_ipv6_nei
|
||||
*/
|
||||
bool ecm_interface_is_pptp(struct sk_buff *skb, const struct net_device *out)
|
||||
{
|
||||
@ -255,7 +250,7 @@ index d7ca169..2ca02bc 100644
|
||||
struct net_device *in;
|
||||
|
||||
/*
|
||||
@@ -1448,6 +1449,7 @@ bool ecm_interface_is_pptp(struct sk_buff *skb, const struct net_device *out)
|
||||
@@ -1507,6 +1508,7 @@ bool ecm_interface_is_pptp(struct sk_buf
|
||||
}
|
||||
|
||||
dev_put(in);
|
||||
@ -263,7 +258,7 @@ index d7ca169..2ca02bc 100644
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -1460,6 +1462,7 @@ bool ecm_interface_is_pptp(struct sk_buff *skb, const struct net_device *out)
|
||||
@@ -1519,6 +1521,7 @@ bool ecm_interface_is_pptp(struct sk_buf
|
||||
*/
|
||||
bool ecm_interface_is_l2tp_packet_by_version(struct sk_buff *skb, const struct net_device *out, int ver)
|
||||
{
|
||||
@ -271,7 +266,7 @@ index d7ca169..2ca02bc 100644
|
||||
uint32_t flag = 0;
|
||||
struct net_device *in;
|
||||
|
||||
@@ -1492,6 +1495,7 @@ bool ecm_interface_is_l2tp_packet_by_version(struct sk_buff *skb, const struct n
|
||||
@@ -1551,6 +1554,7 @@ bool ecm_interface_is_l2tp_packet_by_ver
|
||||
}
|
||||
|
||||
dev_put(in);
|
||||
@ -279,7 +274,7 @@ index d7ca169..2ca02bc 100644
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -1504,6 +1508,7 @@ bool ecm_interface_is_l2tp_packet_by_version(struct sk_buff *skb, const struct n
|
||||
@@ -1563,6 +1567,7 @@ bool ecm_interface_is_l2tp_packet_by_ver
|
||||
*/
|
||||
bool ecm_interface_is_l2tp_pptp(struct sk_buff *skb, const struct net_device *out)
|
||||
{
|
||||
@ -287,7 +282,7 @@ index d7ca169..2ca02bc 100644
|
||||
struct net_device *in;
|
||||
|
||||
/*
|
||||
@@ -1526,6 +1531,7 @@ bool ecm_interface_is_l2tp_pptp(struct sk_buff *skb, const struct net_device *ou
|
||||
@@ -1585,6 +1590,7 @@ bool ecm_interface_is_l2tp_pptp(struct s
|
||||
}
|
||||
|
||||
dev_put(in);
|
||||
@ -295,7 +290,7 @@ index d7ca169..2ca02bc 100644
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -6898,6 +6904,7 @@ static void ecm_interface_regenerate_connections(struct ecm_db_iface_instance *i
|
||||
@@ -7120,6 +7126,7 @@ static void ecm_interface_regenerate_con
|
||||
return;
|
||||
}
|
||||
|
||||
@ -303,7 +298,7 @@ index d7ca169..2ca02bc 100644
|
||||
for (dir = 0; dir < ECM_DB_OBJ_DIR_MAX; dir++) {
|
||||
/*
|
||||
* Re-generate all connections associated with this interface
|
||||
@@ -6913,6 +6920,7 @@ static void ecm_interface_regenerate_connections(struct ecm_db_iface_instance *i
|
||||
@@ -7135,6 +7142,7 @@ static void ecm_interface_regenerate_con
|
||||
ci[dir] = cin;
|
||||
}
|
||||
}
|
||||
@ -311,11 +306,9 @@ index d7ca169..2ca02bc 100644
|
||||
|
||||
#ifdef ECM_MULTICAST_ENABLE
|
||||
/*
|
||||
diff --git a/frontends/ecm_front_end_common.c b/frontends/ecm_front_end_common.c
|
||||
index 3b33c41..e21ca24 100644
|
||||
--- a/frontends/ecm_front_end_common.c
|
||||
+++ b/frontends/ecm_front_end_common.c
|
||||
@@ -460,6 +460,7 @@ bool ecm_front_end_gre_proto_is_accel_allowed(struct net_device *indev,
|
||||
@@ -491,6 +491,7 @@ bool ecm_front_end_gre_proto_is_accel_al
|
||||
struct nf_conntrack_tuple *tuple,
|
||||
int ip_version, uint16_t offset)
|
||||
{
|
||||
@ -323,7 +316,7 @@ index 3b33c41..e21ca24 100644
|
||||
struct net_device *dev;
|
||||
struct gre_base_hdr *greh;
|
||||
|
||||
@@ -471,10 +472,12 @@ bool ecm_front_end_gre_proto_is_accel_allowed(struct net_device *indev,
|
||||
@@ -502,10 +503,12 @@ bool ecm_front_end_gre_proto_is_accel_al
|
||||
/*
|
||||
* Case 1: PPTP locally terminated
|
||||
*/
|
||||
@ -336,7 +329,7 @@ index 3b33c41..e21ca24 100644
|
||||
|
||||
/*
|
||||
* Case 2: PPTP pass through
|
||||
@@ -582,6 +585,10 @@ bool ecm_front_end_gre_proto_is_accel_allowed(struct net_device *indev,
|
||||
@@ -613,6 +616,10 @@ bool ecm_front_end_gre_proto_is_accel_al
|
||||
*/
|
||||
DEBUG_TRACE("%px: GRE IPv%d pass through - allow acceleration\n", skb, ip_version);
|
||||
return true;
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
--- a/ecm_interface.c
|
||||
+++ b/ecm_interface.c
|
||||
@@ -336,7 +336,7 @@ static struct net_device *ecm_interface_dev_find_by_local_addr_ipv6(ip_addr_t ad
|
||||
@@ -336,7 +336,7 @@ static struct net_device *ecm_interface_
|
||||
struct net_device *dev;
|
||||
|
||||
ECM_IP_ADDR_TO_NIN6_ADDR(addr6, addr);
|
||||
@ -9,7 +9,7 @@
|
||||
return dev;
|
||||
}
|
||||
#endif
|
||||
@@ -737,7 +737,7 @@ static bool ecm_interface_mac_addr_get_ipv6_no_route(struct net_device *dev, ip_
|
||||
@@ -779,7 +779,7 @@ static bool ecm_interface_mac_addr_get_i
|
||||
* Get the MAC address that corresponds to IP address given.
|
||||
*/
|
||||
ECM_IP_ADDR_TO_NIN6_ADDR(daddr, addr);
|
||||
@ -18,11 +18,9 @@
|
||||
if (local_dev) {
|
||||
DEBUG_TRACE("%pi6 is a local address\n", &daddr);
|
||||
memcpy(mac_addr, dev->dev_addr, ETH_ALEN);
|
||||
diff --git a/frontends/ecm_front_end_common.c b/frontends/ecm_front_end_common.c
|
||||
index 8142be1..927e548 100644
|
||||
--- a/frontends/ecm_front_end_common.c
|
||||
+++ b/frontends/ecm_front_end_common.c
|
||||
@@ -101,6 +101,10 @@
|
||||
@@ -102,6 +102,10 @@
|
||||
#endif
|
||||
#endif
|
||||
|
||||
@ -33,7 +31,7 @@ index 8142be1..927e548 100644
|
||||
/*
|
||||
* Sysctl table header
|
||||
*/
|
||||
@@ -547,7 +551,7 @@ bool ecm_front_end_gre_proto_is_accel_allowed(struct net_device *indev,
|
||||
@@ -578,7 +582,7 @@ bool ecm_front_end_gre_proto_is_accel_al
|
||||
}
|
||||
} else {
|
||||
#ifdef ECM_IPV6_ENABLE
|
||||
@ -42,7 +40,7 @@ index 8142be1..927e548 100644
|
||||
if (dev) {
|
||||
/*
|
||||
* Source IP address is local
|
||||
@@ -557,7 +561,7 @@ bool ecm_front_end_gre_proto_is_accel_allowed(struct net_device *indev,
|
||||
@@ -588,7 +592,7 @@ bool ecm_front_end_gre_proto_is_accel_al
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
@ -38,11 +38,9 @@ Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
|
||||
frontends/sfe/ecm_sfe_ported_ipv6.c | 8 +---
|
||||
31 files changed, 122 insertions(+), 330 deletions(-)
|
||||
|
||||
diff --git a/ecm_classifier_default.c b/ecm_classifier_default.c
|
||||
index 39315a9..1dad277 100644
|
||||
--- a/ecm_classifier_default.c
|
||||
+++ b/ecm_classifier_default.c
|
||||
@@ -760,26 +760,14 @@ int ecm_classifier_default_init(struct dentry *dentry)
|
||||
@@ -760,26 +760,14 @@ int ecm_classifier_default_init(struct d
|
||||
return -1;
|
||||
}
|
||||
|
||||
@ -75,11 +73,9 @@ index 39315a9..1dad277 100644
|
||||
|
||||
return 0;
|
||||
}
|
||||
diff --git a/ecm_classifier_dscp.c b/ecm_classifier_dscp.c
|
||||
index 4f0caeb..6c9401e 100644
|
||||
--- a/ecm_classifier_dscp.c
|
||||
+++ b/ecm_classifier_dscp.c
|
||||
@@ -816,12 +816,8 @@ int ecm_classifier_dscp_init(struct dentry *dentry)
|
||||
@@ -816,12 +816,8 @@ int ecm_classifier_dscp_init(struct dent
|
||||
return -1;
|
||||
}
|
||||
|
||||
@ -94,11 +90,9 @@ index 4f0caeb..6c9401e 100644
|
||||
|
||||
return 0;
|
||||
}
|
||||
diff --git a/ecm_classifier_emesh.c b/ecm_classifier_emesh.c
|
||||
index 72cf2e1..f8aecec 100644
|
||||
--- a/ecm_classifier_emesh.c
|
||||
+++ b/ecm_classifier_emesh.c
|
||||
@@ -1954,33 +1954,17 @@ int ecm_classifier_emesh_sawf_init(struct dentry *dentry)
|
||||
@@ -2059,33 +2059,17 @@ int ecm_classifier_emesh_sawf_init(struc
|
||||
return -1;
|
||||
}
|
||||
|
||||
@ -138,13 +132,11 @@ index 72cf2e1..f8aecec 100644
|
||||
+ debugfs_create_u32("cake_enabled", S_IRUGO | S_IWUSR, ecm_classifier_emesh_sawf_dentry,
|
||||
+ (u32 *)&ecm_classifier_sawf_cake_enabled);
|
||||
|
||||
/*
|
||||
* Register for service prioritization notification update.
|
||||
diff --git a/ecm_classifier_hyfi.c b/ecm_classifier_hyfi.c
|
||||
index a57a13e..fad7209 100644
|
||||
if (!debugfs_create_file("udp_ipsec_port", S_IRUGO | S_IWUSR, ecm_classifier_emesh_sawf_dentry,
|
||||
NULL, &ecm_classifier_sawf_emesh_udp_ipsec_port_fops)) {
|
||||
--- a/ecm_classifier_hyfi.c
|
||||
+++ b/ecm_classifier_hyfi.c
|
||||
@@ -1111,11 +1111,8 @@ int ecm_classifier_hyfi_rules_init(struct dentry *dentry)
|
||||
@@ -1111,11 +1111,8 @@ int ecm_classifier_hyfi_rules_init(struc
|
||||
goto classifier_task_cleanup;
|
||||
}
|
||||
|
||||
@ -158,11 +150,9 @@ index a57a13e..fad7209 100644
|
||||
|
||||
if (!debugfs_create_file("cmd", S_IWUSR, ecm_classifier_hyfi_dentry,
|
||||
NULL, &ecm_classifier_hyfi_cmd_fops)) {
|
||||
diff --git a/ecm_classifier_mark.c b/ecm_classifier_mark.c
|
||||
index d054d8e..65dd1e1 100644
|
||||
--- a/ecm_classifier_mark.c
|
||||
+++ b/ecm_classifier_mark.c
|
||||
@@ -753,12 +753,8 @@ int ecm_classifier_mark_init(struct dentry *dentry)
|
||||
@@ -753,12 +753,8 @@ int ecm_classifier_mark_init(struct dent
|
||||
return -1;
|
||||
}
|
||||
|
||||
@ -177,11 +167,9 @@ index d054d8e..65dd1e1 100644
|
||||
|
||||
return 0;
|
||||
}
|
||||
diff --git a/ecm_classifier_ovs.c b/ecm_classifier_ovs.c
|
||||
index b9d98d4..16a2ea9 100644
|
||||
--- a/ecm_classifier_ovs.c
|
||||
+++ b/ecm_classifier_ovs.c
|
||||
@@ -2265,12 +2265,8 @@ int ecm_classifier_ovs_init(struct dentry *dentry)
|
||||
@@ -2265,12 +2265,8 @@ int ecm_classifier_ovs_init(struct dentr
|
||||
return -1;
|
||||
}
|
||||
|
||||
@ -196,11 +184,9 @@ index b9d98d4..16a2ea9 100644
|
||||
|
||||
return 0;
|
||||
}
|
||||
diff --git a/ecm_classifier_pcc.c b/ecm_classifier_pcc.c
|
||||
index 6c6fcd4..af13357 100644
|
||||
--- a/ecm_classifier_pcc.c
|
||||
+++ b/ecm_classifier_pcc.c
|
||||
@@ -1246,12 +1246,8 @@ int ecm_classifier_pcc_init(struct dentry *dentry)
|
||||
@@ -1246,12 +1246,8 @@ int ecm_classifier_pcc_init(struct dentr
|
||||
return -1;
|
||||
}
|
||||
|
||||
@ -215,11 +201,9 @@ index 6c6fcd4..af13357 100644
|
||||
|
||||
return 0;
|
||||
}
|
||||
diff --git a/ecm_conntrack_notifier.c b/ecm_conntrack_notifier.c
|
||||
index f4f2c60..7b20132 100644
|
||||
--- a/ecm_conntrack_notifier.c
|
||||
+++ b/ecm_conntrack_notifier.c
|
||||
@@ -429,12 +429,8 @@ int ecm_conntrack_notifier_init(struct dentry *dentry)
|
||||
@@ -429,12 +429,8 @@ int ecm_conntrack_notifier_init(struct d
|
||||
return -1;
|
||||
}
|
||||
|
||||
@ -234,11 +218,9 @@ index f4f2c60..7b20132 100644
|
||||
|
||||
#ifdef CONFIG_NF_CONNTRACK_EVENTS
|
||||
/*
|
||||
diff --git a/ecm_db/ecm_db_connection.c b/ecm_db/ecm_db_connection.c
|
||||
index 77e5f3f..4bd47c3 100644
|
||||
--- a/ecm_db/ecm_db_connection.c
|
||||
+++ b/ecm_db/ecm_db_connection.c
|
||||
@@ -3776,11 +3776,8 @@ static struct file_operations ecm_db_connection_count_simple_fops = {
|
||||
@@ -4378,11 +4378,8 @@ static struct file_operations ecm_db_con
|
||||
*/
|
||||
bool ecm_db_connection_init(struct dentry *dentry)
|
||||
{
|
||||
@ -252,8 +234,6 @@ index 77e5f3f..4bd47c3 100644
|
||||
|
||||
if (!debugfs_create_file("connection_count_simple", S_IRUGO, dentry,
|
||||
NULL, &ecm_db_connection_count_simple_fops)) {
|
||||
diff --git a/ecm_db/ecm_db_host.c b/ecm_db/ecm_db_host.c
|
||||
index 8820576..38a21b4 100644
|
||||
--- a/ecm_db/ecm_db_host.c
|
||||
+++ b/ecm_db/ecm_db_host.c
|
||||
@@ -771,11 +771,8 @@ EXPORT_SYMBOL(ecm_db_host_alloc);
|
||||
@ -270,8 +250,6 @@ index 8820576..38a21b4 100644
|
||||
|
||||
ecm_db_host_table = vzalloc(sizeof(struct ecm_db_host_instance *) * ECM_DB_HOST_HASH_SLOTS);
|
||||
if (!ecm_db_host_table) {
|
||||
diff --git a/ecm_db/ecm_db_iface.c b/ecm_db/ecm_db_iface.c
|
||||
index 53c254c..f9ad269 100644
|
||||
--- a/ecm_db/ecm_db_iface.c
|
||||
+++ b/ecm_db/ecm_db_iface.c
|
||||
@@ -3706,11 +3706,8 @@ EXPORT_SYMBOL(ecm_db_iface_alloc);
|
||||
@ -288,8 +266,6 @@ index 53c254c..f9ad269 100644
|
||||
|
||||
return true;
|
||||
}
|
||||
diff --git a/ecm_db/ecm_db_mapping.c b/ecm_db/ecm_db_mapping.c
|
||||
index 1d06ef4..8574d20 100644
|
||||
--- a/ecm_db/ecm_db_mapping.c
|
||||
+++ b/ecm_db/ecm_db_mapping.c
|
||||
@@ -807,11 +807,8 @@ EXPORT_SYMBOL(ecm_db_mapping_alloc);
|
||||
@ -306,8 +282,6 @@ index 1d06ef4..8574d20 100644
|
||||
|
||||
ecm_db_mapping_table = vzalloc(sizeof(struct ecm_db_mapping_instance *) * ECM_DB_MAPPING_HASH_SLOTS);
|
||||
if (!ecm_db_mapping_table) {
|
||||
diff --git a/ecm_db/ecm_db_node.c b/ecm_db/ecm_db_node.c
|
||||
index 89b386f..513fb84 100644
|
||||
--- a/ecm_db/ecm_db_node.c
|
||||
+++ b/ecm_db/ecm_db_node.c
|
||||
@@ -1211,11 +1211,8 @@ keep_sni_conn:
|
||||
@ -324,11 +298,9 @@ index 89b386f..513fb84 100644
|
||||
|
||||
ecm_db_node_table = vzalloc(sizeof(struct ecm_db_node_instance *) * ECM_DB_NODE_HASH_SLOTS);
|
||||
if (!ecm_db_node_table) {
|
||||
diff --git a/ecm_state.c b/ecm_state.c
|
||||
index b4348a8..2424b58 100644
|
||||
--- a/ecm_state.c
|
||||
+++ b/ecm_state.c
|
||||
@@ -894,17 +894,11 @@ int ecm_state_init(struct dentry *dentry)
|
||||
@@ -894,17 +894,11 @@ int ecm_state_init(struct dentry *dentry
|
||||
return -1;
|
||||
}
|
||||
|
||||
@ -350,11 +322,9 @@ index b4348a8..2424b58 100644
|
||||
|
||||
/*
|
||||
* Register a char device that we will use to provide a dump of our state
|
||||
diff --git a/frontends/cmn/ecm_bond_notifier.c b/frontends/cmn/ecm_bond_notifier.c
|
||||
index ca7fb45..f7e75e7 100644
|
||||
--- a/frontends/cmn/ecm_bond_notifier.c
|
||||
+++ b/frontends/cmn/ecm_bond_notifier.c
|
||||
@@ -241,12 +241,8 @@ int ecm_bond_notifier_init(struct dentry *dentry)
|
||||
@@ -241,12 +241,8 @@ int ecm_bond_notifier_init(struct dentry
|
||||
return -1;
|
||||
}
|
||||
|
||||
@ -369,8 +339,6 @@ index ca7fb45..f7e75e7 100644
|
||||
|
||||
/*
|
||||
* Register Link Aggregation callbacks with the bonding driver
|
||||
diff --git a/frontends/ecm_front_end_ipv4.c b/frontends/ecm_front_end_ipv4.c
|
||||
index 8bf040b..3b060f1 100644
|
||||
--- a/frontends/ecm_front_end_ipv4.c
|
||||
+++ b/frontends/ecm_front_end_ipv4.c
|
||||
@@ -383,11 +383,8 @@ void ecm_front_end_ipv4_stop(int num)
|
||||
@ -387,8 +355,6 @@ index 8bf040b..3b060f1 100644
|
||||
|
||||
return ecm_ipv4_init(dentry);
|
||||
}
|
||||
diff --git a/frontends/ecm_front_end_ipv6.c b/frontends/ecm_front_end_ipv6.c
|
||||
index c6f09a8..2450346 100644
|
||||
--- a/frontends/ecm_front_end_ipv6.c
|
||||
+++ b/frontends/ecm_front_end_ipv6.c
|
||||
@@ -262,11 +262,8 @@ void ecm_front_end_ipv6_stop(int num)
|
||||
@ -405,11 +371,9 @@ index c6f09a8..2450346 100644
|
||||
|
||||
return ecm_ipv6_init(dentry);
|
||||
}
|
||||
diff --git a/frontends/nss/ecm_nss_ipv4.c b/frontends/nss/ecm_nss_ipv4.c
|
||||
index 0fee3e8..5b0ce29 100644
|
||||
--- a/frontends/nss/ecm_nss_ipv4.c
|
||||
+++ b/frontends/nss/ecm_nss_ipv4.c
|
||||
@@ -1009,41 +1009,23 @@ int ecm_nss_ipv4_init(struct dentry *dentry)
|
||||
@@ -1009,41 +1009,23 @@ int ecm_nss_ipv4_init(struct dentry *den
|
||||
return result;
|
||||
}
|
||||
|
||||
@ -463,7 +427,7 @@ index 0fee3e8..5b0ce29 100644
|
||||
|
||||
if (!debugfs_create_file("accel_limit_mode", S_IRUGO | S_IWUSR, ecm_nss_ipv4_dentry,
|
||||
NULL, &ecm_nss_ipv4_accel_limit_mode_fops)) {
|
||||
@@ -1074,11 +1056,8 @@ int ecm_nss_ipv4_init(struct dentry *dentry)
|
||||
@@ -1074,11 +1056,8 @@ int ecm_nss_ipv4_init(struct dentry *den
|
||||
goto task_cleanup;
|
||||
}
|
||||
|
||||
@ -477,11 +441,9 @@ index 0fee3e8..5b0ce29 100644
|
||||
|
||||
#ifdef ECM_NON_PORTED_SUPPORT_ENABLE
|
||||
if (!ecm_nss_non_ported_ipv4_debugfs_init(ecm_nss_ipv4_dentry)) {
|
||||
diff --git a/frontends/nss/ecm_nss_ipv6.c b/frontends/nss/ecm_nss_ipv6.c
|
||||
index ee6b434..8d13f68 100644
|
||||
--- a/frontends/nss/ecm_nss_ipv6.c
|
||||
+++ b/frontends/nss/ecm_nss_ipv6.c
|
||||
@@ -986,41 +986,23 @@ int ecm_nss_ipv6_init(struct dentry *dentry)
|
||||
@@ -986,41 +986,23 @@ int ecm_nss_ipv6_init(struct dentry *den
|
||||
return result;
|
||||
}
|
||||
|
||||
@ -535,7 +497,7 @@ index ee6b434..8d13f68 100644
|
||||
|
||||
if (!debugfs_create_file("accel_limit_mode", S_IRUGO | S_IWUSR, ecm_nss_ipv6_dentry,
|
||||
NULL, &ecm_nss_ipv6_accel_limit_mode_fops)) {
|
||||
@@ -1051,11 +1033,8 @@ int ecm_nss_ipv6_init(struct dentry *dentry)
|
||||
@@ -1051,11 +1033,8 @@ int ecm_nss_ipv6_init(struct dentry *den
|
||||
goto task_cleanup;
|
||||
}
|
||||
|
||||
@ -549,8 +511,6 @@ index ee6b434..8d13f68 100644
|
||||
|
||||
#ifdef ECM_NON_PORTED_SUPPORT_ENABLE
|
||||
if (!ecm_nss_non_ported_ipv6_debugfs_init(ecm_nss_ipv6_dentry)) {
|
||||
diff --git a/frontends/nss/ecm_nss_multicast_ipv4.c b/frontends/nss/ecm_nss_multicast_ipv4.c
|
||||
index a3dcb79..c9e92de 100644
|
||||
--- a/frontends/nss/ecm_nss_multicast_ipv4.c
|
||||
+++ b/frontends/nss/ecm_nss_multicast_ipv4.c
|
||||
@@ -2619,14 +2619,8 @@ find_next_tuple:
|
||||
@ -569,7 +529,7 @@ index a3dcb79..c9e92de 100644
|
||||
|
||||
return true;
|
||||
}
|
||||
@@ -2645,11 +2639,8 @@ void ecm_nss_multicast_ipv4_stop(int num)
|
||||
@@ -2645,11 +2639,8 @@ void ecm_nss_multicast_ipv4_stop(int num
|
||||
*/
|
||||
int ecm_nss_multicast_ipv4_init(struct dentry *dentry)
|
||||
{
|
||||
@ -585,7 +545,7 @@ index a3dcb79..c9e92de 100644
|
||||
* Register multicast update callback to MCS snooper
|
||||
--- a/frontends/nss/ecm_nss_multicast_ipv6.c
|
||||
+++ b/frontends/nss/ecm_nss_multicast_ipv6.c
|
||||
@@ -2554,14 +2554,8 @@ static void ecm_nss_multicast_ipv6_mfc_update_event_callback(struct in6_addr *gr
|
||||
@@ -2554,14 +2554,8 @@ static void ecm_nss_multicast_ipv6_mfc_u
|
||||
*/
|
||||
bool ecm_nss_multicast_ipv6_debugfs_init(struct dentry *dentry)
|
||||
{
|
||||
@ -601,7 +561,7 @@ index a3dcb79..c9e92de 100644
|
||||
|
||||
return true;
|
||||
}
|
||||
@@ -2580,11 +2574,8 @@ void ecm_nss_multicast_ipv6_stop(int num)
|
||||
@@ -2580,11 +2574,8 @@ void ecm_nss_multicast_ipv6_stop(int num
|
||||
*/
|
||||
int ecm_nss_multicast_ipv6_init(struct dentry *dentry)
|
||||
{
|
||||
@ -615,11 +575,9 @@ index a3dcb79..c9e92de 100644
|
||||
|
||||
/*
|
||||
* Register multicast update callback to MCS snooper
|
||||
diff --git a/frontends/nss/ecm_nss_non_ported_ipv4.c b/frontends/nss/ecm_nss_non_ported_ipv4.c
|
||||
index ec4f365..77de341 100644
|
||||
--- a/frontends/nss/ecm_nss_non_ported_ipv4.c
|
||||
+++ b/frontends/nss/ecm_nss_non_ported_ipv4.c
|
||||
@@ -1830,11 +1830,8 @@ struct ecm_front_end_connection_instance *ecm_nss_non_ported_ipv4_connection_ins
|
||||
@@ -1830,11 +1830,8 @@ struct ecm_front_end_connection_instance
|
||||
*/
|
||||
bool ecm_nss_non_ported_ipv4_debugfs_init(struct dentry *dentry)
|
||||
{
|
||||
@ -633,11 +591,9 @@ index ec4f365..77de341 100644
|
||||
|
||||
return true;
|
||||
}
|
||||
diff --git a/frontends/nss/ecm_nss_non_ported_ipv6.c b/frontends/nss/ecm_nss_non_ported_ipv6.c
|
||||
index 13e0cc5..91ad7aa 100644
|
||||
--- a/frontends/nss/ecm_nss_non_ported_ipv6.c
|
||||
+++ b/frontends/nss/ecm_nss_non_ported_ipv6.c
|
||||
@@ -1656,11 +1656,8 @@ struct ecm_front_end_connection_instance *ecm_nss_non_ported_ipv6_connection_ins
|
||||
@@ -1656,11 +1656,8 @@ struct ecm_front_end_connection_instance
|
||||
*/
|
||||
bool ecm_nss_non_ported_ipv6_debugfs_init(struct dentry *dentry)
|
||||
{
|
||||
@ -651,11 +607,9 @@ index 13e0cc5..91ad7aa 100644
|
||||
|
||||
return true;
|
||||
}
|
||||
diff --git a/frontends/nss/ecm_nss_ported_ipv4.c b/frontends/nss/ecm_nss_ported_ipv4.c
|
||||
index 6375b6b..ea997e3 100644
|
||||
--- a/frontends/nss/ecm_nss_ported_ipv4.c
|
||||
+++ b/frontends/nss/ecm_nss_ported_ipv4.c
|
||||
@@ -1896,21 +1896,11 @@ struct ecm_front_end_connection_instance *ecm_nss_ported_ipv4_connection_instanc
|
||||
@@ -1896,21 +1896,11 @@ struct ecm_front_end_connection_instance
|
||||
*/
|
||||
bool ecm_nss_ported_ipv4_debugfs_init(struct dentry *dentry)
|
||||
{
|
||||
@ -669,24 +623,22 @@ index 6375b6b..ea997e3 100644
|
||||
- DEBUG_ERROR("Failed to create ecm nss ipv4 udp_accelerated_count file in debugfs\n");
|
||||
- return false;
|
||||
- }
|
||||
-
|
||||
+ debugfs_create_u32("tcp_accelerated_count", S_IRUGO, dentry,
|
||||
+ &ecm_nss_ported_ipv4_accelerated_count[ECM_FRONT_END_PORTED_PROTO_TCP]);
|
||||
|
||||
- if (!debugfs_create_u32("tcp_accelerated_count", S_IRUGO, dentry,
|
||||
- &ecm_nss_ported_ipv4_accelerated_count[ECM_FRONT_END_PORTED_PROTO_TCP])) {
|
||||
- DEBUG_ERROR("Failed to create ecm nss ipv4 tcp_accelerated_count file in debugfs\n");
|
||||
- debugfs_remove(udp_dentry);
|
||||
- return false;
|
||||
- }
|
||||
+ debugfs_create_u32("tcp_accelerated_count", S_IRUGO, dentry,
|
||||
+ &ecm_nss_ported_ipv4_accelerated_count[ECM_FRONT_END_PORTED_PROTO_TCP]);
|
||||
|
||||
-
|
||||
- return true;
|
||||
+ return true;
|
||||
}
|
||||
diff --git a/frontends/nss/ecm_nss_ported_ipv6.c b/frontends/nss/ecm_nss_ported_ipv6.c
|
||||
index 1be8a58..451a557 100644
|
||||
--- a/frontends/nss/ecm_nss_ported_ipv6.c
|
||||
+++ b/frontends/nss/ecm_nss_ported_ipv6.c
|
||||
@@ -1809,21 +1809,11 @@ struct ecm_front_end_connection_instance *ecm_nss_ported_ipv6_connection_instanc
|
||||
@@ -1809,21 +1809,11 @@ struct ecm_front_end_connection_instance
|
||||
*/
|
||||
bool ecm_nss_ported_ipv6_debugfs_init(struct dentry *dentry)
|
||||
{
|
||||
@ -712,11 +664,9 @@ index 1be8a58..451a557 100644
|
||||
|
||||
return true;
|
||||
}
|
||||
diff --git a/frontends/sfe/ecm_sfe_ipv4.c b/frontends/sfe/ecm_sfe_ipv4.c
|
||||
index 2076bad..3f30821 100644
|
||||
--- a/frontends/sfe/ecm_sfe_ipv4.c
|
||||
+++ b/frontends/sfe/ecm_sfe_ipv4.c
|
||||
@@ -925,48 +925,27 @@ int ecm_sfe_ipv4_init(struct dentry *dentry)
|
||||
@@ -949,48 +949,27 @@ int ecm_sfe_ipv4_init(struct dentry *den
|
||||
}
|
||||
|
||||
#ifdef CONFIG_XFRM
|
||||
@ -779,11 +729,9 @@ index 2076bad..3f30821 100644
|
||||
|
||||
if (!debugfs_create_file("accel_limit_mode", S_IRUGO | S_IWUSR, ecm_sfe_ipv4_dentry,
|
||||
NULL, &ecm_sfe_ipv4_accel_limit_mode_fops)) {
|
||||
diff --git a/frontends/sfe/ecm_sfe_ipv6.c b/frontends/sfe/ecm_sfe_ipv6.c
|
||||
index e8981ee..54fdbf3 100644
|
||||
--- a/frontends/sfe/ecm_sfe_ipv6.c
|
||||
+++ b/frontends/sfe/ecm_sfe_ipv6.c
|
||||
@@ -917,48 +917,27 @@ int ecm_sfe_ipv6_init(struct dentry *dentry)
|
||||
@@ -944,48 +944,27 @@ int ecm_sfe_ipv6_init(struct dentry *den
|
||||
}
|
||||
|
||||
#ifdef CONFIG_XFRM
|
||||
@ -846,11 +794,9 @@ index e8981ee..54fdbf3 100644
|
||||
|
||||
if (!debugfs_create_file("accel_limit_mode", S_IRUGO | S_IWUSR, ecm_sfe_ipv6_dentry,
|
||||
NULL, &ecm_sfe_ipv6_accel_limit_mode_fops)) {
|
||||
diff --git a/frontends/sfe/ecm_sfe_non_ported_ipv4.c b/frontends/sfe/ecm_sfe_non_ported_ipv4.c
|
||||
index d7cad2a..696bd13 100644
|
||||
--- a/frontends/sfe/ecm_sfe_non_ported_ipv4.c
|
||||
+++ b/frontends/sfe/ecm_sfe_non_ported_ipv4.c
|
||||
@@ -1908,11 +1908,8 @@ struct ecm_front_end_connection_instance *ecm_sfe_non_ported_ipv4_connection_ins
|
||||
@@ -1908,11 +1908,8 @@ struct ecm_front_end_connection_instance
|
||||
*/
|
||||
bool ecm_sfe_non_ported_ipv4_debugfs_init(struct dentry *dentry)
|
||||
{
|
||||
@ -864,11 +810,9 @@ index d7cad2a..696bd13 100644
|
||||
|
||||
return true;
|
||||
}
|
||||
diff --git a/frontends/sfe/ecm_sfe_non_ported_ipv6.c b/frontends/sfe/ecm_sfe_non_ported_ipv6.c
|
||||
index a9fb637..fe06de4 100644
|
||||
--- a/frontends/sfe/ecm_sfe_non_ported_ipv6.c
|
||||
+++ b/frontends/sfe/ecm_sfe_non_ported_ipv6.c
|
||||
@@ -1726,11 +1726,8 @@ struct ecm_front_end_connection_instance *ecm_sfe_non_ported_ipv6_connection_ins
|
||||
@@ -1726,11 +1726,8 @@ struct ecm_front_end_connection_instance
|
||||
*/
|
||||
bool ecm_sfe_non_ported_ipv6_debugfs_init(struct dentry *dentry)
|
||||
{
|
||||
@ -882,11 +826,9 @@ index a9fb637..fe06de4 100644
|
||||
|
||||
return true;
|
||||
}
|
||||
diff --git a/frontends/sfe/ecm_sfe_ported_ipv4.c b/frontends/sfe/ecm_sfe_ported_ipv4.c
|
||||
index fc2c4ba..53f5b07 100644
|
||||
--- a/frontends/sfe/ecm_sfe_ported_ipv4.c
|
||||
+++ b/frontends/sfe/ecm_sfe_ported_ipv4.c
|
||||
@@ -2035,12 +2035,8 @@ bool ecm_sfe_ported_ipv4_debugfs_init(struct dentry *dentry)
|
||||
@@ -2070,12 +2070,8 @@ bool ecm_sfe_ported_ipv4_debugfs_init(st
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -901,11 +843,9 @@ index fc2c4ba..53f5b07 100644
|
||||
|
||||
return true;
|
||||
}
|
||||
diff --git a/frontends/sfe/ecm_sfe_ported_ipv6.c b/frontends/sfe/ecm_sfe_ported_ipv6.c
|
||||
index 90d642d..ae04cb4 100644
|
||||
--- a/frontends/sfe/ecm_sfe_ported_ipv6.c
|
||||
+++ b/frontends/sfe/ecm_sfe_ported_ipv6.c
|
||||
@@ -1982,12 +1982,8 @@ bool ecm_sfe_ported_ipv6_debugfs_init(struct dentry *dentry)
|
||||
@@ -2018,12 +2018,8 @@ bool ecm_sfe_ported_ipv6_debugfs_init(st
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
@ -13,11 +13,9 @@ Signed-off-by: Dirk Buchwalder buchwalder@posteo.de
|
||||
frontends/nss/ecm_nss_ipv6.c | 4 ++--
|
||||
2 files changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/frontends/nss/ecm_nss_ipv4.c b/frontends/nss/ecm_nss_ipv4.c
|
||||
index 5b0ce29..719a747 100644
|
||||
--- a/frontends/nss/ecm_nss_ipv4.c
|
||||
+++ b/frontends/nss/ecm_nss_ipv4.c
|
||||
@@ -700,7 +700,7 @@ static void ecm_nss_ipv4_stats_sync_req_work(struct work_struct *work)
|
||||
@@ -700,7 +700,7 @@ static void ecm_nss_ipv4_stats_sync_req_
|
||||
}
|
||||
spin_unlock_bh(&ecm_nss_ipv4_lock);
|
||||
|
||||
@ -26,7 +24,7 @@ index 5b0ce29..719a747 100644
|
||||
|
||||
/*
|
||||
* If index is 0, we are starting a new round, but if we still have time remain
|
||||
@@ -714,7 +714,7 @@ static void ecm_nss_ipv4_stats_sync_req_work(struct work_struct *work)
|
||||
@@ -714,7 +714,7 @@ static void ecm_nss_ipv4_stats_sync_req_
|
||||
}
|
||||
|
||||
if (time_after(ecm_nss_ipv4_next_req_time, current_jiffies)) {
|
||||
@ -35,11 +33,9 @@ index 5b0ce29..719a747 100644
|
||||
}
|
||||
ecm_nss_ipv4_roll_check_jiffies = jiffies;
|
||||
ecm_nss_ipv4_next_req_time = ecm_nss_ipv4_roll_check_jiffies + ECM_NSS_IPV4_STATS_SYNC_PERIOD;
|
||||
diff --git a/frontends/nss/ecm_nss_ipv6.c b/frontends/nss/ecm_nss_ipv6.c
|
||||
index 8d13f68..67ee364 100644
|
||||
--- a/frontends/nss/ecm_nss_ipv6.c
|
||||
+++ b/frontends/nss/ecm_nss_ipv6.c
|
||||
@@ -676,7 +676,7 @@ static void ecm_nss_ipv6_stats_sync_req_work(struct work_struct *work)
|
||||
@@ -676,7 +676,7 @@ static void ecm_nss_ipv6_stats_sync_req_
|
||||
}
|
||||
spin_unlock_bh(&ecm_nss_ipv6_lock);
|
||||
|
||||
@ -48,7 +44,7 @@ index 8d13f68..67ee364 100644
|
||||
|
||||
/*
|
||||
* If index is 0, we are starting a new round, but if we still have time remain
|
||||
@@ -690,7 +690,7 @@ static void ecm_nss_ipv6_stats_sync_req_work(struct work_struct *work)
|
||||
@@ -690,7 +690,7 @@ static void ecm_nss_ipv6_stats_sync_req_
|
||||
}
|
||||
|
||||
if (time_after(ecm_nss_ipv6_next_req_time, current_jiffies)) {
|
||||
|
||||
@ -11,11 +11,9 @@ Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
|
||||
ecm_interface.c | 9 +++++++++
|
||||
1 file changed, 9 insertions(+)
|
||||
|
||||
diff --git a/ecm_interface.c b/ecm_interface.c
|
||||
index b461456..6be872a 100644
|
||||
--- a/ecm_interface.c
|
||||
+++ b/ecm_interface.c
|
||||
@@ -7775,9 +7775,13 @@ static int ecm_interface_wifi_event_handler(unsigned char *buf, int len)
|
||||
@@ -8012,9 +8012,13 @@ static int ecm_interface_wifi_event_hand
|
||||
static int ecm_interface_wifi_event_rx(struct socket *sock, struct sockaddr_nl *addr, unsigned char *buf, int len)
|
||||
{
|
||||
struct msghdr msg;
|
||||
@ -30,7 +28,7 @@ index b461456..6be872a 100644
|
||||
|
||||
iov.iov_base = buf;
|
||||
iov.iov_len = len;
|
||||
@@ -7787,7 +7791,8 @@ static int ecm_interface_wifi_event_rx(struct socket *sock, struct sockaddr_nl *
|
||||
@@ -8024,7 +8028,8 @@ static int ecm_interface_wifi_event_rx(s
|
||||
msg.msg_namelen = sizeof(struct sockaddr_nl);
|
||||
msg.msg_control = NULL;
|
||||
msg.msg_controllen = 0;
|
||||
@ -40,7 +38,7 @@ index b461456..6be872a 100644
|
||||
set_fs(KERNEL_DS);
|
||||
iov_iter_init(&msg.msg_iter, READ, &iov, 1, len);
|
||||
#if (LINUX_VERSION_CODE < KERNEL_VERSION(4, 7, 0))
|
||||
@@ -7798,6 +7803,9 @@ static int ecm_interface_wifi_event_rx(struct socket *sock, struct sockaddr_nl *
|
||||
@@ -8035,6 +8040,9 @@ static int ecm_interface_wifi_event_rx(s
|
||||
set_fs(oldfs);
|
||||
|
||||
return size;
|
||||
|
||||
@ -7,8 +7,6 @@ Subject: [PATCH] treewide: rework notifier changes for 5.15
|
||||
ecm_conntrack_notifier.c | 35 +++++++++++++++--------------------
|
||||
1 file changed, 15 insertions(+), 20 deletions(-)
|
||||
|
||||
diff --git a/ecm_conntrack_notifier.c b/ecm_conntrack_notifier.c
|
||||
index 5f802b7..50e8566 100644
|
||||
--- a/ecm_conntrack_notifier.c
|
||||
+++ b/ecm_conntrack_notifier.c
|
||||
@@ -332,15 +332,8 @@ EXPORT_SYMBOL(ecm_conntrack_ipv4_event);
|
||||
@ -28,7 +26,7 @@ index 5f802b7..50e8566 100644
|
||||
struct nf_conn *ct = item->ct;
|
||||
|
||||
/*
|
||||
@@ -387,23 +380,17 @@ static int ecm_conntrack_event(unsigned int events, struct nf_ct_event *item)
|
||||
@@ -387,23 +380,17 @@ static int ecm_conntrack_event(unsigned
|
||||
return NOTIFY_DONE;
|
||||
}
|
||||
|
||||
@ -57,7 +55,7 @@ index 5f802b7..50e8566 100644
|
||||
#endif
|
||||
|
||||
/*
|
||||
@@ -436,12 +423,16 @@ int ecm_conntrack_notifier_init(struct dentry *dentry)
|
||||
@@ -436,12 +423,16 @@ int ecm_conntrack_notifier_init(struct d
|
||||
/*
|
||||
* Eventing subsystem is available so we register a notifier hook to get fast notifications of expired connections
|
||||
*/
|
||||
@ -72,13 +70,13 @@ index 5f802b7..50e8566 100644
|
||||
+#else
|
||||
+ nf_conntrack_register_notifier(&init_net, &ecm_conntrack_notifier);
|
||||
+#endif
|
||||
#endif
|
||||
|
||||
return 0;
|
||||
@@ -455,7 +446,11 @@ void ecm_conntrack_notifier_exit(void)
|
||||
{
|
||||
DEBUG_INFO("ECM Conntrack Notifier exit\n");
|
||||
#ifdef CONFIG_NF_CONNTRACK_EVENTS
|
||||
/*
|
||||
* Hold netns reference to keep the basic conntrack alive and
|
||||
@@ -483,7 +474,11 @@ void ecm_conntrack_notifier_exit(void)
|
||||
#ifdef ECM_IPV6_ENABLE
|
||||
nf_ct_netns_put(&init_net, NFPROTO_IPV6);
|
||||
#endif
|
||||
+#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 15, 0))
|
||||
nf_conntrack_unregister_notifier(&init_net, &ecm_conntrack_notifier);
|
||||
+#else
|
||||
|
||||
@ -10,15 +10,12 @@ Subject: [PATCH] frontends: drop use of static be_liberal and no_window_check
|
||||
frontends/sfe/ecm_sfe_ported_ipv6.c | 22 ++++++++--------------
|
||||
4 files changed, 31 insertions(+), 55 deletions(-)
|
||||
|
||||
diff --git a/frontends/nss/ecm_nss_ported_ipv4.c b/frontends/nss/ecm_nss_ported_ipv4.c
|
||||
index 6375b6b..ed9c10b 100644
|
||||
--- a/frontends/nss/ecm_nss_ported_ipv4.c
|
||||
+++ b/frontends/nss/ecm_nss_ported_ipv4.c
|
||||
@@ -99,14 +99,6 @@
|
||||
static int ecm_nss_ported_ipv4_accelerated_count[ECM_FRONT_END_PORTED_PROTO_MAX] = {0};
|
||||
@@ -100,14 +100,6 @@ static int ecm_nss_ported_ipv4_accelerat
|
||||
/* Array of Number of TCP and UDP connections currently offloaded */
|
||||
|
||||
-/*
|
||||
/*
|
||||
- * Expose what should be a static flag in the TCP connection tracker.
|
||||
- */
|
||||
-#ifdef ECM_OPENWRT_SUPPORT
|
||||
@ -26,10 +23,11 @@ index 6375b6b..ed9c10b 100644
|
||||
-#endif
|
||||
-extern int nf_ct_tcp_be_liberal;
|
||||
-
|
||||
/*
|
||||
-/*
|
||||
* ecm_nss_ported_ipv4_connection_callback()
|
||||
* Callback for handling create ack/nack calls.
|
||||
@@ -343,6 +335,12 @@ static void ecm_nss_ported_ipv4_connection_accelerate(struct ecm_front_end_conne
|
||||
*/
|
||||
@@ -343,6 +335,12 @@ static void ecm_nss_ported_ipv4_connecti
|
||||
uint8_t dest_mac_xlate[ETH_ALEN];
|
||||
ecm_db_direction_t ecm_dir;
|
||||
ecm_front_end_acceleration_mode_t result_mode;
|
||||
@ -42,7 +40,7 @@ index 6375b6b..ed9c10b 100644
|
||||
|
||||
DEBUG_CHECK_MAGIC(feci, ECM_FRONT_END_CONNECTION_INSTANCE_MAGIC, "%px: magic failed", feci);
|
||||
|
||||
@@ -1212,12 +1210,8 @@ static void ecm_nss_ported_ipv4_connection_accelerate(struct ecm_front_end_conne
|
||||
@@ -1212,12 +1210,8 @@ static void ecm_nss_ported_ipv4_connecti
|
||||
nircm->tcp_rule.return_max_window = ct->proto.tcp.seen[return_dir].td_maxwin;
|
||||
nircm->tcp_rule.return_end = ct->proto.tcp.seen[return_dir].td_end;
|
||||
nircm->tcp_rule.return_max_end = ct->proto.tcp.seen[return_dir].td_maxend;
|
||||
@ -57,15 +55,12 @@ index 6375b6b..ed9c10b 100644
|
||||
|| (ct->proto.tcp.seen[return_dir].flags & IP_CT_TCP_FLAG_BE_LIBERAL)) {
|
||||
nircm->rule_flags |= NSS_IPV4_RULE_CREATE_FLAG_NO_SEQ_CHECK;
|
||||
}
|
||||
diff --git a/frontends/nss/ecm_nss_ported_ipv6.c b/frontends/nss/ecm_nss_ported_ipv6.c
|
||||
index 1be8a58..3062c12 100644
|
||||
--- a/frontends/nss/ecm_nss_ported_ipv6.c
|
||||
+++ b/frontends/nss/ecm_nss_ported_ipv6.c
|
||||
@@ -100,14 +100,6 @@
|
||||
static int ecm_nss_ported_ipv6_accelerated_count[ECM_FRONT_END_PORTED_PROTO_MAX] = {0};
|
||||
@@ -101,14 +101,6 @@ static int ecm_nss_ported_ipv6_accelerat
|
||||
/* Array of Number of TCP and UDP connections currently offloaded */
|
||||
|
||||
-/*
|
||||
/*
|
||||
- * Expose what should be a static flag in the TCP connection tracker.
|
||||
- */
|
||||
-#ifdef ECM_OPENWRT_SUPPORT
|
||||
@ -73,10 +68,11 @@ index 1be8a58..3062c12 100644
|
||||
-#endif
|
||||
-extern int nf_ct_tcp_be_liberal;
|
||||
-
|
||||
/*
|
||||
-/*
|
||||
* ecm_nss_ported_ipv6_connection_callback()
|
||||
* Callback for handling create ack/nack calls.
|
||||
@@ -348,6 +340,12 @@ static void ecm_nss_ported_ipv6_connection_accelerate(struct ecm_front_end_conne
|
||||
*/
|
||||
@@ -348,6 +340,12 @@ static void ecm_nss_ported_ipv6_connecti
|
||||
ip_addr_t src_ip;
|
||||
ip_addr_t dest_ip;
|
||||
ecm_front_end_acceleration_mode_t result_mode;
|
||||
@ -89,7 +85,7 @@ index 1be8a58..3062c12 100644
|
||||
|
||||
DEBUG_CHECK_MAGIC(feci, ECM_FRONT_END_CONNECTION_INSTANCE_MAGIC, "%px: magic failed", feci);
|
||||
|
||||
@@ -1138,11 +1136,7 @@ static void ecm_nss_ported_ipv6_connection_accelerate(struct ecm_front_end_conne
|
||||
@@ -1138,11 +1136,7 @@ static void ecm_nss_ported_ipv6_connecti
|
||||
nircm->tcp_rule.return_max_window = ct->proto.tcp.seen[return_dir].td_maxwin;
|
||||
nircm->tcp_rule.return_end = ct->proto.tcp.seen[return_dir].td_end;
|
||||
nircm->tcp_rule.return_max_end = ct->proto.tcp.seen[return_dir].td_maxend;
|
||||
@ -102,15 +98,12 @@ index 1be8a58..3062c12 100644
|
||||
|| (ct->proto.tcp.seen[flow_dir].flags & IP_CT_TCP_FLAG_BE_LIBERAL)
|
||||
|| (ct->proto.tcp.seen[return_dir].flags & IP_CT_TCP_FLAG_BE_LIBERAL)) {
|
||||
nircm->rule_flags |= NSS_IPV6_RULE_CREATE_FLAG_NO_SEQ_CHECK;
|
||||
diff --git a/frontends/sfe/ecm_sfe_ported_ipv4.c b/frontends/sfe/ecm_sfe_ported_ipv4.c
|
||||
index 6e375f8..e5ae593 100644
|
||||
--- a/frontends/sfe/ecm_sfe_ported_ipv4.c
|
||||
+++ b/frontends/sfe/ecm_sfe_ported_ipv4.c
|
||||
@@ -92,14 +92,6 @@
|
||||
static int ecm_sfe_ported_ipv4_accelerated_count[ECM_FRONT_END_PORTED_PROTO_MAX] = {0};
|
||||
@@ -93,14 +93,6 @@ static int ecm_sfe_ported_ipv4_accelerat
|
||||
/* Array of Number of TCP and UDP connections currently offloaded */
|
||||
|
||||
-/*
|
||||
/*
|
||||
- * Expose what should be a static flag in the TCP connection tracker.
|
||||
- */
|
||||
-#ifdef ECM_OPENWRT_SUPPORT
|
||||
@ -118,10 +111,11 @@ index 6e375f8..e5ae593 100644
|
||||
-#endif
|
||||
-extern int nf_ct_tcp_be_liberal;
|
||||
-
|
||||
/*
|
||||
-/*
|
||||
* ecm_sfe_ported_ipv4_connection_callback()
|
||||
* Callback for handling create ack/nack calls.
|
||||
@@ -336,11 +328,17 @@ static void ecm_sfe_ported_ipv4_connection_accelerate(struct ecm_front_end_conne
|
||||
*/
|
||||
@@ -339,11 +331,17 @@ static void ecm_sfe_ported_ipv4_connecti
|
||||
uint8_t dest_mac_xlate[ETH_ALEN];
|
||||
ecm_db_direction_t ecm_dir;
|
||||
ecm_front_end_acceleration_mode_t result_mode;
|
||||
@ -139,7 +133,7 @@ index 6e375f8..e5ae593 100644
|
||||
DEBUG_CHECK_MAGIC(feci, ECM_FRONT_END_CONNECTION_INSTANCE_MAGIC, "%px: magic failed", feci);
|
||||
|
||||
/*
|
||||
@@ -1286,11 +1284,7 @@ static void ecm_sfe_ported_ipv4_connection_accelerate(struct ecm_front_end_conne
|
||||
@@ -1309,11 +1307,7 @@ static void ecm_sfe_ported_ipv4_connecti
|
||||
nircm->tcp_rule.return_max_window = ct->proto.tcp.seen[return_dir].td_maxwin;
|
||||
nircm->tcp_rule.return_end = ct->proto.tcp.seen[return_dir].td_end;
|
||||
nircm->tcp_rule.return_max_end = ct->proto.tcp.seen[return_dir].td_maxend;
|
||||
@ -152,15 +146,12 @@ index 6e375f8..e5ae593 100644
|
||||
|| (ct->proto.tcp.seen[flow_dir].flags & IP_CT_TCP_FLAG_BE_LIBERAL)
|
||||
|| (ct->proto.tcp.seen[return_dir].flags & IP_CT_TCP_FLAG_BE_LIBERAL)) {
|
||||
nircm->rule_flags |= SFE_RULE_CREATE_FLAG_NO_SEQ_CHECK;
|
||||
diff --git a/frontends/sfe/ecm_sfe_ported_ipv6.c b/frontends/sfe/ecm_sfe_ported_ipv6.c
|
||||
index f1885aa..4a6fdbd 100644
|
||||
--- a/frontends/sfe/ecm_sfe_ported_ipv6.c
|
||||
+++ b/frontends/sfe/ecm_sfe_ported_ipv6.c
|
||||
@@ -92,14 +92,6 @@
|
||||
static int ecm_sfe_ported_ipv6_accelerated_count[ECM_FRONT_END_PORTED_PROTO_MAX] = {0};
|
||||
@@ -93,14 +93,6 @@ static int ecm_sfe_ported_ipv6_accelerat
|
||||
/* Array of Number of TCP and UDP connections currently offloaded */
|
||||
|
||||
-/*
|
||||
/*
|
||||
- * Expose what should be a static flag in the TCP connection tracker.
|
||||
- */
|
||||
-#ifdef ECM_OPENWRT_SUPPORT
|
||||
@ -168,10 +159,11 @@ index f1885aa..4a6fdbd 100644
|
||||
-#endif
|
||||
-extern int nf_ct_tcp_be_liberal;
|
||||
-
|
||||
/*
|
||||
-/*
|
||||
* ecm_sfe_ported_ipv6_connection_callback()
|
||||
* Callback for handling create ack/nack calls.
|
||||
@@ -342,9 +334,15 @@ static void ecm_sfe_ported_ipv6_connection_accelerate(struct ecm_front_end_conne
|
||||
*/
|
||||
@@ -345,9 +337,15 @@ static void ecm_sfe_ported_ipv6_connecti
|
||||
struct ecm_classifier_instance *aci;
|
||||
struct ecm_classifier_rule_create ecrc;
|
||||
ecm_front_end_acceleration_mode_t result_mode;
|
||||
@ -188,7 +180,7 @@ index f1885aa..4a6fdbd 100644
|
||||
DEBUG_CHECK_MAGIC(feci, ECM_FRONT_END_CONNECTION_INSTANCE_MAGIC, "%px: magic failed", feci);
|
||||
|
||||
/*
|
||||
@@ -1247,11 +1245,7 @@ static void ecm_sfe_ported_ipv6_connection_accelerate(struct ecm_front_end_conne
|
||||
@@ -1271,11 +1269,7 @@ static void ecm_sfe_ported_ipv6_connecti
|
||||
nircm->tcp_rule.return_max_window = ct->proto.tcp.seen[return_dir].td_maxwin;
|
||||
nircm->tcp_rule.return_end = ct->proto.tcp.seen[return_dir].td_end;
|
||||
nircm->tcp_rule.return_max_end = ct->proto.tcp.seen[return_dir].td_maxend;
|
||||
|
||||
@ -10,11 +10,9 @@ Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
|
||||
ecm_tracker_datagram.c | 8 ++++----
|
||||
1 file changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/ecm_tracker_datagram.c b/ecm_tracker_datagram.c
|
||||
index 9c04d73..ae14146 100644
|
||||
--- a/ecm_tracker_datagram.c
|
||||
+++ b/ecm_tracker_datagram.c
|
||||
@@ -203,7 +203,7 @@ static void ecm_tracker_datagram_datagram_discard(struct ecm_tracker_datagram_in
|
||||
@@ -203,7 +203,7 @@ static void ecm_tracker_datagram_datagra
|
||||
* ecm_tracker_datagram_discard_all()
|
||||
* Discard all tracked data
|
||||
*/
|
||||
@ -23,7 +21,7 @@ index 9c04d73..ae14146 100644
|
||||
{
|
||||
int32_t src_count;
|
||||
int32_t dest_count;
|
||||
@@ -364,7 +364,7 @@ static void ecm_tracker_datagram_datagram_discard_callback(struct ecm_tracker_in
|
||||
@@ -364,7 +364,7 @@ static void ecm_tracker_datagram_datagra
|
||||
* ecm_tracker_datagram_datagram_size_get()
|
||||
* Return size in bytes of datagram at index i that was sent to the target
|
||||
*/
|
||||
@ -32,7 +30,7 @@ index 9c04d73..ae14146 100644
|
||||
{
|
||||
struct ecm_tracker_datagram_internal_instance *dtii = (struct ecm_tracker_datagram_internal_instance *)uti;
|
||||
|
||||
@@ -412,7 +412,7 @@ static int32_t ecm_tracker_datagram_datagram_size_get_callback(struct ecm_tracke
|
||||
@@ -412,7 +412,7 @@ static int32_t ecm_tracker_datagram_data
|
||||
* ecm_tracker_datagram_datagram_read()
|
||||
* Read size bytes from datagram at index i into the buffer
|
||||
*/
|
||||
@ -41,7 +39,7 @@ index 9c04d73..ae14146 100644
|
||||
{
|
||||
struct ecm_tracker_datagram_internal_instance *dtii = (struct ecm_tracker_datagram_internal_instance *)uti;
|
||||
int res;
|
||||
@@ -466,7 +466,7 @@ static int ecm_tracker_datagram_datagram_read_callback(struct ecm_tracker_instan
|
||||
@@ -466,7 +466,7 @@ static int ecm_tracker_datagram_datagram
|
||||
* ecm_tracker_datagram_datagram_add()
|
||||
* Append the datagram onto the tracker queue for the given target
|
||||
*/
|
||||
@ -50,6 +48,3 @@ index 9c04d73..ae14146 100644
|
||||
{
|
||||
struct ecm_tracker_datagram_internal_instance *dtii = (struct ecm_tracker_datagram_internal_instance *)uti;
|
||||
struct sk_buff *skbc;
|
||||
--
|
||||
2.34.1
|
||||
|
||||
|
||||
@ -13,8 +13,6 @@ instead or relying on a downstream api not present upstream.
|
||||
frontends/sfe/ecm_sfe_ipv6.c | 3 ++-
|
||||
4 files changed, 8 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/frontends/nss/ecm_nss_ipv4.c b/frontends/nss/ecm_nss_ipv4.c
|
||||
index 719a747..558819a 100644
|
||||
--- a/frontends/nss/ecm_nss_ipv4.c
|
||||
+++ b/frontends/nss/ecm_nss_ipv4.c
|
||||
@@ -610,7 +610,8 @@ sync_conntrack:
|
||||
@ -27,8 +25,6 @@ index 719a747..558819a 100644
|
||||
}
|
||||
|
||||
spin_lock_bh(&ct->lock);
|
||||
diff --git a/frontends/nss/ecm_nss_ipv6.c b/frontends/nss/ecm_nss_ipv6.c
|
||||
index 67ee364..51eb069 100644
|
||||
--- a/frontends/nss/ecm_nss_ipv6.c
|
||||
+++ b/frontends/nss/ecm_nss_ipv6.c
|
||||
@@ -587,7 +587,8 @@ sync_conntrack:
|
||||
@ -41,11 +37,9 @@ index 67ee364..51eb069 100644
|
||||
}
|
||||
|
||||
spin_lock_bh(&ct->lock);
|
||||
diff --git a/frontends/sfe/ecm_sfe_ipv4.c b/frontends/sfe/ecm_sfe_ipv4.c
|
||||
index 3f30821..931af5d 100644
|
||||
--- a/frontends/sfe/ecm_sfe_ipv4.c
|
||||
+++ b/frontends/sfe/ecm_sfe_ipv4.c
|
||||
@@ -538,7 +538,8 @@ sync_conntrack:
|
||||
@@ -562,7 +562,8 @@ sync_conntrack:
|
||||
#else
|
||||
timeouts = nf_ct_timeout_lookup(ct);
|
||||
if (!timeouts) {
|
||||
@ -55,11 +49,9 @@ index 3f30821..931af5d 100644
|
||||
}
|
||||
|
||||
spin_lock_bh(&ct->lock);
|
||||
diff --git a/frontends/sfe/ecm_sfe_ipv6.c b/frontends/sfe/ecm_sfe_ipv6.c
|
||||
index 54fdbf3..63d8888 100644
|
||||
--- a/frontends/sfe/ecm_sfe_ipv6.c
|
||||
+++ b/frontends/sfe/ecm_sfe_ipv6.c
|
||||
@@ -527,7 +527,8 @@ sync_conntrack:
|
||||
@@ -554,7 +554,8 @@ sync_conntrack:
|
||||
#else
|
||||
timeouts = nf_ct_timeout_lookup(ct);
|
||||
if (!timeouts) {
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
--- a/ecm_interface.c
|
||||
+++ b/ecm_interface.c
|
||||
@@ -3553,7 +3553,7 @@ identifier_update:
|
||||
@@ -3612,7 +3612,7 @@ identifier_update:
|
||||
if (skb && (skb->skb_iif == dev->ifindex)) {
|
||||
struct pppol2tp_common_addr info;
|
||||
|
||||
@ -9,7 +9,7 @@
|
||||
DEBUG_TRACE("%px: Net device: %px is MULTILINK PPP - Unknown to the ECM\n", feci, dev);
|
||||
type_info.unknown.os_specific_ident = dev_interface_num;
|
||||
|
||||
@@ -3563,7 +3563,7 @@ identifier_update:
|
||||
@@ -3622,7 +3622,7 @@ identifier_update:
|
||||
ii = ecm_interface_unknown_interface_establish(&type_info.unknown, dev_name, dev_interface_num, ae_interface_num, dev_mtu);
|
||||
return ii;
|
||||
}
|
||||
|
||||
@ -1,45 +0,0 @@
|
||||
diff --git a/ecm_conntrack_notifier.c b/ecm_conntrack_notifier.c
|
||||
index 50e8566..cf8bd33 100644
|
||||
--- a/ecm_conntrack_notifier.c
|
||||
+++ b/ecm_conntrack_notifier.c
|
||||
@@ -433,6 +433,26 @@ int ecm_conntrack_notifier_init(struct dentry *dentry)
|
||||
#else
|
||||
nf_conntrack_register_notifier(&init_net, &ecm_conntrack_notifier);
|
||||
#endif
|
||||
+
|
||||
+ /*
|
||||
+ * Hold netns reference to keep the basic conntrack alive and
|
||||
+ * track conntrack even when firewall stopped.
|
||||
+ */
|
||||
+ result = nf_ct_netns_get(&init_net, NFPROTO_IPV4);
|
||||
+ if (result < 0) {
|
||||
+ DEBUG_ERROR("Can't hold ipv4 netns.\n");
|
||||
+ debugfs_remove_recursive(ecm_conntrack_notifier_dentry);
|
||||
+ return result;
|
||||
+ }
|
||||
+#ifdef ECM_IPV6_ENABLE
|
||||
+ result = nf_ct_netns_get(&init_net, NFPROTO_IPV6);
|
||||
+ if (result < 0) {
|
||||
+ DEBUG_ERROR("Can't hold ipv6 netns.\n");
|
||||
+ nf_ct_netns_put(&init_net, NFPROTO_IPV4);
|
||||
+ debugfs_remove_recursive(ecm_conntrack_notifier_dentry);
|
||||
+ return result;
|
||||
+ }
|
||||
+#endif
|
||||
#endif
|
||||
|
||||
return 0;
|
||||
@@ -446,6 +466,13 @@ void ecm_conntrack_notifier_exit(void)
|
||||
{
|
||||
DEBUG_INFO("ECM Conntrack Notifier exit\n");
|
||||
#ifdef CONFIG_NF_CONNTRACK_EVENTS
|
||||
+ /*
|
||||
+ * Release netns reference.
|
||||
+ */
|
||||
+ nf_ct_netns_put(&init_net, NFPROTO_IPV4);
|
||||
+#ifdef ECM_IPV6_ENABLE
|
||||
+ nf_ct_netns_put(&init_net, NFPROTO_IPV6);
|
||||
+#endif
|
||||
#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 15, 0))
|
||||
nf_conntrack_unregister_notifier(&init_net, &ecm_conntrack_notifier);
|
||||
#else
|
||||
@ -1,6 +1,6 @@
|
||||
--- a/frontends/nss/ecm_nss_common.c
|
||||
+++ b/frontends/nss/ecm_nss_common.c
|
||||
@@ -67,6 +67,7 @@ bool ecm_nss_ipv6_is_conn_limit_reached(void)
|
||||
@@ -67,6 +67,7 @@ bool ecm_nss_ipv6_is_conn_limit_reached(
|
||||
|
||||
return false;
|
||||
}
|
||||
@ -8,14 +8,14 @@
|
||||
#endif
|
||||
|
||||
/*
|
||||
@@ -116,3 +117,4 @@ bool ecm_nss_ipv4_is_conn_limit_reached(void)
|
||||
@@ -116,3 +117,4 @@ bool ecm_nss_ipv4_is_conn_limit_reached(
|
||||
|
||||
return false;
|
||||
}
|
||||
+EXPORT_SYMBOL(ecm_nss_ipv4_is_conn_limit_reached);
|
||||
--- a/frontends/nss/ecm_nss_non_ported_ipv4.c
|
||||
+++ b/frontends/nss/ecm_nss_non_ported_ipv4.c
|
||||
@@ -1824,6 +1824,7 @@ struct ecm_front_end_connection_instance *ecm_nss_non_ported_ipv4_connection_ins
|
||||
@@ -1824,6 +1824,7 @@ struct ecm_front_end_connection_instance
|
||||
|
||||
return feci;
|
||||
}
|
||||
@ -36,7 +36,7 @@
|
||||
struct ecm_db_connection_instance **nci);
|
||||
--- a/frontends/nss/ecm_nss_non_ported_ipv6.c
|
||||
+++ b/frontends/nss/ecm_nss_non_ported_ipv6.c
|
||||
@@ -1650,6 +1650,7 @@ struct ecm_front_end_connection_instance *ecm_nss_non_ported_ipv6_connection_ins
|
||||
@@ -1650,6 +1650,7 @@ struct ecm_front_end_connection_instance
|
||||
|
||||
return feci;
|
||||
}
|
||||
@ -57,7 +57,7 @@
|
||||
struct ecm_db_connection_instance **nci);
|
||||
--- a/frontends/nss/ecm_nss_ported_ipv4.c
|
||||
+++ b/frontends/nss/ecm_nss_ported_ipv4.c
|
||||
@@ -1884,6 +1884,7 @@ struct ecm_front_end_connection_instance *ecm_nss_ported_ipv4_connection_instanc
|
||||
@@ -1884,6 +1884,7 @@ struct ecm_front_end_connection_instance
|
||||
|
||||
return feci;
|
||||
}
|
||||
@ -78,7 +78,7 @@
|
||||
struct ecm_db_connection_instance **nci);
|
||||
--- a/frontends/nss/ecm_nss_ported_ipv6.c
|
||||
+++ b/frontends/nss/ecm_nss_ported_ipv6.c
|
||||
@@ -1797,6 +1797,7 @@ struct ecm_front_end_connection_instance *ecm_nss_ported_ipv6_connection_instanc
|
||||
@@ -1797,6 +1797,7 @@ struct ecm_front_end_connection_instance
|
||||
|
||||
return feci;
|
||||
}
|
||||
|
||||
@ -40,11 +40,9 @@ Signed-off-By: Francis Le Bourse <francis.lebourse@sfr.fr>
|
||||
ecm_db/ecm_db.c | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/ecm_db/ecm_db.c b/ecm_db/ecm_db.c
|
||||
index c6f408d..df04afd 100644
|
||||
--- a/ecm_db/ecm_db.c
|
||||
+++ b/ecm_db/ecm_db.c
|
||||
@@ -298,7 +298,7 @@ static int ecm_db_ipv6_route_table_update_event(struct notifier_block *nb,
|
||||
@@ -298,7 +298,7 @@ static int ecm_db_ipv6_route_table_updat
|
||||
* Compute ECM connection's prefix destination address by masking it with the
|
||||
* route config's destination address prefix length.
|
||||
*/
|
||||
@ -53,7 +51,7 @@ index c6f408d..df04afd 100644
|
||||
|
||||
DEBUG_TRACE("dest addr prefix: %pI6 prefix_len: %d ecm_in6: %pI6\n", &prefix_addr, cfg->fc_dst_len, &ecm_in6);
|
||||
|
||||
@@ -326,7 +326,7 @@ static int ecm_db_ipv6_route_table_update_event(struct notifier_block *nb,
|
||||
@@ -326,7 +326,7 @@ static int ecm_db_ipv6_route_table_updat
|
||||
* Compute ECM connection's prefix source address by masking it with the
|
||||
* route config's destination address prefix length.
|
||||
*/
|
||||
@ -61,7 +59,3 @@ index c6f408d..df04afd 100644
|
||||
+ ipv6_addr_prefix(&prefix_addr, &ecm_in6, min(128, cfg->fc_dst_len));
|
||||
|
||||
DEBUG_TRACE("src addr prefix: %pI6 prefix_len: %d ecm_in6: %pI6\n", &prefix_addr, cfg->fc_dst_len, &ecm_in6);
|
||||
|
||||
--
|
||||
2.1.4
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user