unkinstall revision 225736
1#!/bin/csh -f
2#
3set dir=`pwd`
4set karch=`uname -m`
5if ( -d /sys/arch/$karch ) set archdir="/sys/arch/$karch"
6if ( -d /sys/$karch ) set archdir="/sys/$karch"
7set confdir="$archdir/conf"
8
9if ( $dir =~ */FreeBSD* ) cd ..
10echo -n "Uninstalling "
11foreach i (ip_fil.[ch] ip_nat.[ch] ip_frag.[ch] ip_state.[ch] fil.c \
12	   ip_auth.[ch] ip_proxy.[ch] ip_ftp_pxy.c ip_compat.h ip_log.c \
13	    mlf_ipl.c ipl.h)
14	echo -n "$i ";
15	/bin/rm -f /sys/netinet/$i
16end
17echo ""
18echo "Unpatching ip_input.c, ip_output.c and in_proto.c"
19cat FreeBSD-2.2/ip_{in,out}put.c.diffs FreeBSD-2.2/in_proto.c.diffs | \
20(cd /sys/netinet; patch -R)
21
22if ( -f /sys/conf/files.newconf ) then
23	echo "Unpatching /sys/conf/files.newconf"
24	cat FreeBSD-2.2/files.newconf.diffs | (cd /sys/conf; patch -R)
25	echo "Unpatching /sys/conf/files"
26	cat FreeBSD-2.2/files.diffs | (cd /sys/conf; patch -R)
27endif
28if ( -f /sys/conf/files.oldconf ) then
29	echo "Unpatching /sys/conf/files.oldconf"
30	cat FreeBSD-2.2/files.oldconf.diffs | (cd /sys/conf; patch -R)
31	echo "Unpatching /sys/conf/files"
32	cat FreeBSD-2.2/filez.diffs | (cd /sys/conf; patch -R)
33endif
34
35set config=`(cd $confdir; /bin/ls -1t [0-9A-Z_]*) | head -1`
36echo -n "Kernel configuration to update [$config] "
37set newconfig=$<
38if ( "$newconfig" != "" ) then
39	set config="$confdir/$newconfig"
40else
41	set newconfig=$config
42endif
43if ( -f $confdir/$newconfig ) then
44	mv $confdir/$newconfig $confdir/$newconfig.bak
45endif
46if ( -d $archdir/../compile/$newconfig ) then
47	set bak=".bak"
48	set dot=0
49	while ( -d $archdir/../compile/${newconfig}.${bak} )
50		set bak=".bak.$dot"
51		set dot=`expr 1 + $dot`
52	end
53	mv $archdir/../compile/$newconfig $archdir/../compile/${newconfig}.${bak}
54endif
55egrep -v IPFILTER $confdir/$newconfig.bak > $confdir/$newconfig
56echo 'You will now need to run "config" and build a new kernel.'
57exit 0
58