153024Sguido#!/bin/csh -f
253024Sguido#
353024Sguidoset dir=`pwd`
453024Sguidoset karch=`uname -m`
553024Sguidoif ( -d /sys/arch/$karch ) set archdir="/sys/arch/$karch"
653024Sguidoif ( -d /sys/$karch ) set archdir="/sys/$karch"
753024Sguidoset confdir="$archdir/conf"
853024Sguido
953024Sguidoif ( $dir =~ */FreeBSD* ) cd ..
1053024Sguidoecho -n "Installing "
1153024Sguidoforeach i (ip_fil.[ch] ip_nat.[ch] ip_frag.[ch] ip_state.[ch] fil.c \
12145510Sdarrenr	   ip_proxy.[ch] ip_{ftp,rcmd,raudio}_pxy.c mlf_ipl.c ipl.h \
1353024Sguido	   ip_compat.h ip_auth.[ch] ip_log.c)
1453024Sguido	echo -n "$i ";
1553024Sguido	cp $i /sys/netinet
1653024Sguido	chmod 644 /sys/netinet/$i
17145510Sdarrenr	switch ($i)
1892686Sdarrenr	case *.h:
1992686Sdarrenr		/bin/cp $i /usr/include/netinet/$i
2092686Sdarrenr		chmod 644 /usr/include/netinet/$i
21145510Sdarrenr		breaksw 
22145510Sdarrenr	endsw   
2353024Sguidoend
2453024Sguidoecho ""
2553024Sguidoecho "Linking /usr/include/osreldate.h to /sys/sys/osreldate.h"
2653024Sguidoln -s /usr/include/osreldate.h /sys/sys/osreldate.h
2753024Sguido
2853024Sguidoset config=`(cd $confdir; /bin/ls -1t [0-9A-Z_]*) | head -1`
2953024Sguidoecho -n "Kernel configuration to update [$config] "
3053024Sguidoset newconfig=$<
3153024Sguidoif ( "$newconfig" != "" ) then
3253024Sguido	set config="$confdir/$newconfig"
3353024Sguidoelse
3453024Sguido	set newconfig=$config
3553024Sguidoendif
3653024Sguidoecho "Rewriting $newconfig..."
3753024Sguidoif ( -f $confdir/$newconfig ) then
3853024Sguido	mv $confdir/$newconfig $confdir/$newconfig.bak
3953024Sguidoendif
4053024Sguidoif ( -d $archdir/../compile/$newconfig ) then
4153024Sguido	set bak=".bak"
4253024Sguido	set dot=0
4353024Sguido	while ( -d $archdir/../compile/${newconfig}.${bak} )
4453024Sguido		set bak=".bak.$dot"
4553024Sguido		set dot=`expr 1 + $dot`
4653024Sguido	end
4753024Sguido	mv $archdir/../compile/$newconfig $archdir/../compile/${newconfig}.${bak}
4853024Sguidoendif
4953024Sguidoawk '{print $0;if($2=="INET"){print"options IPFILTER\noptions IPFILTER_LOG"}}'\
5053024Sguido	$confdir/$newconfig.bak > $confdir/$newconfig
5153024Sguidoecho "You will now need to run config on $newconfig and build a new kernel."
5253024Sguidoexit 0
53