You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
rtpengine/utils/patch-kernel

53 lines
1.3 KiB

#!/bin/sh
if test "$1" != magic; then
echo
echo "Don't run this script manually, instead run:"
echo " make patch KERNEL=/path/to/kernel/sources"
echo
exit 1
fi
if test -z "$3"; then
echo
echo "Usage:"
echo " make patch KERNEL=/path/to/kernel/sources"
echo
exit 1
fi
KERN=$3
for x in . include/linux/netfilter/ net/netfilter/Kconfig net/netfilter/Makefile; do
if ! test -e "$KERN"/"$x"; then
echo "I don't recognize $KERN as a kernel source tree"
exit 1
fi
done
set -e
cp -v xt_RTPENGINE.h "$KERN"/include/linux/netfilter/
cp -v xt_RTPENGINE.c "$KERN"/net/netfilter/
if ! grep -q CONFIG_NETFILTER_XT_TARGET_RTPENGINE "$KERN"/net/netfilter/Makefile; then
(
echo
echo "EXTRA_CFLAGS += -DRTPENGINE_VERSION=\"\\\"$4\\\"\""
echo "obj-\$(CONFIG_NETFILTER_XT_TARGET_RTPENGINE) += xt_RTPENGINE.o"
) >> "$KERN"/net/netfilter/Makefile
fi
if ! grep -q Kconfig\\.rtpengine "$KERN"/net/netfilter/Kconfig; then
cat >> "$KERN"/net/netfilter/Kconfig.rtpengine << \__EOF
config NETFILTER_XT_TARGET_RTPENGINE
tristate "Sipwise NGCP RTPENGINE target support"
depends on IP_NF_FILTER
help
Sipwise NGCP rtpengine kernel support
To compile it as a module, choose M here. If unsure, say N.
__EOF
echo 'source "net/netfilter/Kconfig.rtpengine"' >> "$KERN"/net/netfilter/Kconfig
fi