blob: 5f97ca0cc24049401a08d323ce780c83b4dd7553 [file] [log] [blame] [raw]
#!/bin/csh -f
#
set dir=`pwd`
set karch=`uname -m`
set archdir="/sys/arch/$karch"
set confdir="$archdir/conf"
if ( $dir =~ *fil/4bsd ) cd ..
if ($0 =~ *kinstall) then
echo "Installing ip_fil.c and ip_fil.h"
cp ip_fil.{c,h} /sys/netinet
echo "Patching $archdir/$karch/conf.c"
cat conf.c.diffs | (cd $archdir/$karch; patch)
endif
echo "Patching ip_input.c and ip_output.c"
cat 4bsd/ip_{in,out}put.c.diffs | (cd /sys/netinet; patch)
if ( -f /sys/conf/files.newconf ) then
echo "Patching /sys/conf/files.newconf"
cat 4bsd/files.newconf.diffs | (cd /sys/conf; patch)
echo "Patching /sys/conf/files"
cat 4bsd/files.diffs | (cd /sys/conf; patch)
endif
if ( -f /sys/conf/files.oldconf ) then
echo "Patching /sys/conf/files.oldconf"
cat 4bsd/files.oldconf.diffs | (cd /sys/conf; patch)
echo "Patching /sys/conf/files"
cat 4bsd/filez.diffs | (cd /sys/conf; patch)
endif
set config=`/bin/ls -1t $confdir [0-9A-Z_]* | head -1`
echo -n "Kernel configuration to update [$config] "
set newconfig=$<
if ( "$newconfig" != "" ) then
set config="$confdir/$newconfig"
else
set newconfig=$config
endif
echo "Re-config'ing $newconfig..."
if ( -f $confdir/$newconfig ) then
mv $confdir/$newconfig $confdir/$newconfig.bak
endif
if ( -d $archdir/$newconfig ) then
mv $archdir/$newconfig $archdir/$newconfig.bak
endif
if ($0 =~ *kinstall) then
awk '{print $0;if($2=="INET"){print"options IPFILTER"}}}' \
$confdir/$newconfig.bak > $confdir/$newconfig
else
awk '{print $0;if($2=="INET"){print"options IPFILTER_LKM"}}' \
$confdir/$newconfig.bak > $confdir/$newconfig
endif
echo 'You will now need to run "config" and build a new kernel.'
exit 0