mirror of
https://github.com/coolsnowwolf/lede.git
synced 2025-04-16 04:13:31 +00:00
73 lines
2.4 KiB
Diff
73 lines
2.4 KiB
Diff
From e9073363a50a25bddd96e808f04bcf56c45da4ac Mon Sep 17 00:00:00 2001
|
|
From: Ansuel Smith <ansuelsmth@gmail.com>
|
|
Date: Sun, 8 May 2022 18:19:47 +0200
|
|
Subject: [PATCH 07/12] treewide: rework notifier changes for 5.15
|
|
|
|
Rework notifier changes for 5.15 conntrack new implementation.
|
|
|
|
Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
|
|
---
|
|
ecm_conntrack_notifier.c | 16 +++++++++++++++-
|
|
1 file changed, 15 insertions(+), 1 deletion(-)
|
|
|
|
diff --git a/ecm_conntrack_notifier.c b/ecm_conntrack_notifier.c
|
|
index 9c8a45e..9f2cdae 100644
|
|
--- a/ecm_conntrack_notifier.c
|
|
+++ b/ecm_conntrack_notifier.c
|
|
@@ -322,7 +322,7 @@ EXPORT_SYMBOL(ecm_conntrack_ipv4_event);
|
|
#ifdef CONFIG_NF_CONNTRACK_CHAIN_EVENTS
|
|
static int ecm_conntrack_event(struct notifier_block *this, unsigned long events, void *ptr)
|
|
#else
|
|
-static int ecm_conntrack_event(unsigned int events, struct nf_ct_event *item)
|
|
+static int ecm_conntrack_event(unsigned int events, const struct nf_ct_event *item)
|
|
#endif
|
|
{
|
|
#ifdef CONFIG_NF_CONNTRACK_CHAIN_EVENTS
|
|
@@ -388,7 +388,11 @@ static struct notifier_block ecm_conntrack_notifier = {
|
|
* Netfilter conntrack event system to monitor connection tracking changes
|
|
*/
|
|
static struct nf_ct_event_notifier ecm_conntrack_notifier = {
|
|
+#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 15, 0))
|
|
.fcn = ecm_conntrack_event,
|
|
+#else
|
|
+ .ct_event = ecm_conntrack_event,
|
|
+#endif
|
|
};
|
|
#endif
|
|
#endif
|
|
@@ -426,13 +430,19 @@ int ecm_conntrack_notifier_init(struct dentry *dentry)
|
|
#ifdef CONFIG_NF_CONNTRACK_CHAIN_EVENTS
|
|
result = nf_conntrack_register_chain_notifier(&init_net, &ecm_conntrack_notifier);
|
|
#else
|
|
+#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 15, 0))
|
|
result = nf_conntrack_register_notifier(&init_net, &ecm_conntrack_notifier);
|
|
+#else
|
|
+ nf_conntrack_register_notifier(&init_net, &ecm_conntrack_notifier);
|
|
+#endif
|
|
#endif
|
|
+#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 15, 0))
|
|
if (result < 0) {
|
|
DEBUG_ERROR("Can't register nf notifier hook.\n");
|
|
debugfs_remove_recursive(ecm_conntrack_notifier_dentry);
|
|
return result;
|
|
}
|
|
+#endif
|
|
#endif
|
|
|
|
return 0;
|
|
@@ -448,7 +458,11 @@ void ecm_conntrack_notifier_exit(void)
|
|
#ifdef CONFIG_NF_CONNTRACK_CHAIN_EVENTS
|
|
nf_conntrack_unregister_chain_notifier(&init_net, &ecm_conntrack_notifier);
|
|
#else
|
|
+#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 15, 0))
|
|
nf_conntrack_unregister_notifier(&init_net, &ecm_conntrack_notifier);
|
|
+#else
|
|
+ nf_conntrack_unregister_notifier(&init_net);
|
|
+#endif
|
|
#endif
|
|
/*
|
|
* Remove the debugfs files recursively.
|
|
--
|
|
2.34.1
|
|
|