diff --git a/qca/qca-nss-clients/files/qca-nss-ipsec b/qca/qca-nss-clients/files/qca-nss-ipsec index 5f682c8..21eea7c 100755 --- a/qca/qca-nss-clients/files/qca-nss-ipsec +++ b/qca/qca-nss-clients/files/qca-nss-ipsec @@ -1,4 +1,4 @@ -#!/bin/sh /etc/rc.common +#!/bin/sh /etc/rc.common # # Copyright (c) 2018-2019, 2021 The Linux Foundation. All rights reserved. # @@ -38,7 +38,6 @@ ecm_unload () { } ecm_disable() { - if [ ! -d /sys/module/ecm ]; then return; fi @@ -62,7 +61,17 @@ ecm_enable() { kernel_version_check_5_4() { major_ver=$(uname -r | awk -F '.' '{print $1}') minor_ver=$(uname -r | awk -F '.' '{print $2}') - if [ $major_ver -lt 5 ] || ([ $major_ver -eq 5 ] && [ $minor_ver -lt 4 ] ) ; then + if [ $major_ver -lt 5 ] || ([ $major_ver -eq 5 ] && [ $minor_ver -lt 4 ] ); then + return 1 + else + return 0 + fi +} + +kernel_version_check_5_15() { + major_ver=$(uname -r | awk -F '.' '{print $1}') + minor_ver=$(uname -r | awk -F '.' '{print $2}') + if [ $major_ver -lt 5 ] || ([ $major_ver -eq 5 ] && [ $minor_ver -lt 15 ] ); then return 1 else return 0 @@ -70,12 +79,16 @@ kernel_version_check_5_4() { } start_klips() { - if kernel_version_check_5_4 - then + if kernel_version_check_5_4; then echo "Kernel 5.4 doesn't support klips stack." return $? fi + if kernel_version_check_5_15; then + echo "Kernel 5.15 doesn't support klips stack." + return $? + fi + touch $NSS_IPSEC_OL_FILE ecm_load @@ -97,12 +110,16 @@ start_klips() { } stop_klips() { - if kernel_version_check_5_4 - then + if kernel_version_check_5_4; then echo "Kernel 5.4 doesn't support klips stack." return $? fi + if kernel_version_check_5_15; then + echo "Kernel 5.15 doesn't support klips stack." + return $? + fi + ecm_disable /etc/init.d/ipsec stop diff --git a/qca/qca-nss-clients/files/qca-nss-mirred.init b/qca/qca-nss-clients/files/qca-nss-mirred.init index 1f931f0..259aaa0 100644 --- a/qca/qca-nss-clients/files/qca-nss-mirred.init +++ b/qca/qca-nss-clients/files/qca-nss-mirred.init @@ -14,11 +14,6 @@ # OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ########################################################################### -restart() { - rmmod act_nssmirred.ko - insmod act_nssmirred.ko -} - start() { insmod act_nssmirred.ko } @@ -26,3 +21,8 @@ start() { stop() { rmmod act_nssmirred.ko } + +restart() { + stop + start +} diff --git a/qca/qca-nss-clients/files/qca-nss-netlink.init b/qca/qca-nss-clients/files/qca-nss-netlink.init index df20775..8d38ad3 100644 --- a/qca/qca-nss-clients/files/qca-nss-netlink.init +++ b/qca/qca-nss-clients/files/qca-nss-netlink.init @@ -14,11 +14,6 @@ # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT # OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. -restart() { - rmmod qca-nss-netlink.ko - modprobe qca-nss-netlink -} - start() { modprobe qca-nss-netlink @@ -29,3 +24,8 @@ start() { stop() { rmmod qca-nss-netlink.ko } + +restart() { + stop + start +}