From 404aa7e10c6be4f95eb0703cd835469abf137037 Mon Sep 17 00:00:00 2001 From: Indrek Ardel Date: Sun, 10 Mar 2024 03:53:43 +0200 Subject: Kernel: T4022: add RTSP netfilter helper kernel module --- packages/linux-kernel/.gitignore | 1 + packages/linux-kernel/Jenkinsfile | 5 +++++ packages/linux-kernel/build-nat-rtsp.sh | 38 +++++++++++++++++++++++++++++++++ 3 files changed, 44 insertions(+) create mode 100755 packages/linux-kernel/build-nat-rtsp.sh (limited to 'packages') diff --git a/packages/linux-kernel/.gitignore b/packages/linux-kernel/.gitignore index d61cc4da..97e392e3 100644 --- a/packages/linux-kernel/.gitignore +++ b/packages/linux-kernel/.gitignore @@ -7,6 +7,7 @@ /vyos-drivers-intel* /vyos-drivers-realtek* /ovpn-dco +/nat-rtsp /jool* /qat* /QAT* diff --git a/packages/linux-kernel/Jenkinsfile b/packages/linux-kernel/Jenkinsfile index 50943eca..a4c9f274 100644 --- a/packages/linux-kernel/Jenkinsfile +++ b/packages/linux-kernel/Jenkinsfile @@ -69,6 +69,11 @@ def pkgList = [ ['name': 'ovpn-dco','scmCommit': 'v0.2.20231117', 'scmUrl': 'https://github.com/OpenVPN/ovpn-dco', 'buildCmd': 'cd ..; ./build-openvpn-dco.sh'], + + // RTSP netfilter helper + ['name': 'nat-rtsp', 'scmCommit': '475af0a', + 'scmUrl': 'https://github.com/maru-sama/rtsp-linux.git', + 'buildCmd': 'cd ..; ./build-nat-rtsp.sh'], ] // Start package build using library function from https://github.com/vyos/vyos-build diff --git a/packages/linux-kernel/build-nat-rtsp.sh b/packages/linux-kernel/build-nat-rtsp.sh new file mode 100755 index 00000000..ec7d19a6 --- /dev/null +++ b/packages/linux-kernel/build-nat-rtsp.sh @@ -0,0 +1,38 @@ +#!/bin/sh +CWD=$(pwd) +KERNEL_VAR_FILE=${CWD}/kernel-vars + +SRC=${CWD}/nat-rtsp +if [ ! -d ${SRC} ]; then + echo "nat-rtsp source not found" + exit 1 +fi + +if [ ! -f ${KERNEL_VAR_FILE} ]; then + echo "Kernel variable file '${KERNEL_VAR_FILE}' does not exist, run ./build_kernel.sh first" + exit 1 +fi + +. ${KERNEL_VAR_FILE} + +cd ${SRC} && make KERNELDIR=$KERNEL_DIR + +# Copy binary to package directory +DEBIAN_DIR=tmp/lib/modules/${KERNEL_VERSION}${KERNEL_SUFFIX}/extra +mkdir -p ${DEBIAN_DIR} +cp nf_conntrack_rtsp.ko nf_nat_rtsp.ko ${DEBIAN_DIR} + +DEBIAN_POSTINST="${CWD}/vyos-nat-rtsp.postinst" +echo "#!/bin/sh" > ${DEBIAN_POSTINST} +echo "/sbin/depmod -a ${KERNEL_VERSION}${KERNEL_SUFFIX}" >> ${DEBIAN_POSTINST} + +# Build Debian Package +fpm --input-type dir --output-type deb --name nat-rtsp \ + --version $(git describe --tags --always) --deb-compression gz \ + --maintainer "VyOS Package Maintainers " \ + --description "Connection tracking and NAT support for RTSP" \ + --depends linux-image-${KERNEL_VERSION}${KERNEL_SUFFIX} \ + --after-install ${DEBIAN_POSTINST} \ + --license "GPL2" --chdir tmp + +mv *.deb .. -- cgit v1.2.3