debian/0000755000000000000000000000000012234770272007174 5ustar debian/compat0000644000000000000000000000000212234767232010374 0ustar 9 debian/copyright0000644000000000000000000001137612234767456011151 0ustar Format: http://svn.debian.org/wsvn/dep/web/deps/dep5.mdwn?op=file&rev=166 Upstream-Name: west-chamber Upstream-Contact: yingyingcui.scholarzhang Source: http://code.google.com/p/scholarzhang/ Files: * Copyright: 2006-2008 Jan Engelhardt 2010 Klzgrad License: GPL-2 Files: extensions/lib*.c Copyright: 2006-2008 Jan Engelhardt 2010 Klzgrad License: GPL-2+ Files: extensions/xt_CUI.c extensions/xt_ZHANG.c Copyright: 2007-2008 Jan Engelhardt 2010 Klzgrad 1999-2001 Paul `Rusty' Russell 2002-2004 Netfilter Core Team License: GPL-2 Files: extensions/xt_gfw.c Copyright: 2010 Klzgrad License: GPL-2 or GPL-3 Files: extensions/compat_xtables.c Copyright: 2008 Jan Engelhardt License: GPL-2+ Files: extensions/ipset/* Copyright: 2004 Jozsef Kadlecsik License: GPL-2 Files: extensions/ipset/ipset.c extensions/ipset/ipset.h Copyright: 2000-2002 Joakim Axelsson 2000-2002 Patrick Schaaf 2003-2004 Jozsef Kadlecsik License: GPL-2 Files: extensions/ipset/ipset_iphash.c extensions/ipset/ipset_ipporthash.c extensions/ipset/ipset_nethash.c extensions/ipset/ipset_portmap.c Copyright: 2004 Jozsef Kadlecsik License: GPL-2+ Files: extensions/ipset/ipset_ipportiphash.c extensions/ipset/ipset_ipportnethash.c extensions/ipset/ipset_setlist.c Copyright: 2008 Jozsef Kadlecsik License: GPL-2+ Files: extensions/ipset/ipset_iptree.c Copyright: 2005 Jozsef Kadlecsik License: GPL-2+ Files: extensions/ipset/ipset_iptreemap.c Copyright: 2007 Sven Wegener License: GPL-2+ Files: extensions/ipset/ipt_SET.c extensions/ipset/ipt_set.c Copyright: 2000-2002 Joakim Axelsson 2000-2002 Patrick Schaaf 2000-2002 Martin Josefsson 2003-2004 Jozsef Kadlecsik License: GPL-2 Files: extensions/ipset/ipset_ipmap.c Copyright: 2000-2004 Joakim Axelsson 2000-2004 Patrick Schaaf 2000-2004 Jozsef Kadlecsik License: GPL-2+ Files: extensions/ipset Copyright: 2000-2002 Joakim Axelsson 2000-2002 Patrick Schaaf 2000-2002 Martin Josefsson License: GPL-2+ Files: debian/* Copyright: 2011 Ying-Chun Liu (PaulLiu) License: GPL-2 License: GPL-2+ This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. . This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. . You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. . On Debian systems, the full text of the GNU General Public License version 2 can be found in the file `/usr/share/common-licenses/GPL-2'. License: GPL-2 This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License version 2 as published by the Free Software Foundation. License: GPL-3+ This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. . This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. . You should have received a copy of the GNU General Public License along with this program. If not, see . . On Debian systems, the full text of the GNU General Public License version 3 can be found in the file `/usr/share/common-licenses/GPL-3'. License: GPL-2 or GPL-3 This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License; either version 2 or 3 of the License, as published by the Free Software Foundation. debian/control0000644000000000000000000000472512234767526010617 0ustar Source: west-chamber Section: admin Priority: extra Maintainer: Ying-Chun Liu (PaulLiu) Build-Depends: autoconf, automake, autotools-dev, bzip2, debhelper (>= 9), iptables-dev (>= 1.4.3), libtool, pkg-config Standards-Version: 3.9.4 Homepage: http://code.google.com/p/scholarzhang/ Package: west-chamber-common Architecture: any Depends: xtables-addons-common, ${misc:Depends}, ${shlibs:Depends} Description: iptable extension for bypassing content filtering firewall West-chamber is an iptable extension named after the famous Chinese ancient fiction - Romance of the West Chamber. It is based on the idea of T. Ptacek's paper in 1998 which allows users go through some content-filtered firewall without 3rd-party proxies. . This package contains the extension for iptables. It needs corresponding kernel modules to work properly. Package: west-chamber-source Architecture: all Depends: bzip2, debhelper (>= 7), iptables-dev (>= 1.4.3), make, module-assistant, xtables-addons-source (>= 1.32), ${misc:Depends} Description: iptable extension for bypassing content filtering firewall (module source) West-chamber is an iptable extension named after the famous Chinese ancient fiction - Romance of the West Chamber. It is based on the idea of T. Ptacek's paper in 1998 which allows users go through some content-filtered firewall without 3rd-party proxies. . This package provides the source code for the west-chamber kernel modules. The west-chamber-common package is also required in order to make use of these modules. Kernel source or headers are required to compile these modules. Package: west-chamber-dkms Architecture: all Depends: bzip2, dkms, iptables-dev (>= 1.4.3), make, xtables-addons-dkms (>= 1.35), ${misc:Depends} Recommends: linux-headers-686-pae | linux-headers-amd64 | linux-headers-generic, west-chamber-common Description: iptable extension for bypassing content filtering firewall (dkms) West-chamber is an iptable extension named after the famous Chinese ancient fiction - Romance of the West Chamber. It is based on the idea of T. Ptacek's paper in 1998 which allows users go through some content-filtered firewall without 3rd-party proxies. . The dkms package will automatically compile the driver for your current kernel version. debian/west-chamber-dkms.postinst0000644000000000000000000000225011566412702014313 0ustar #!/bin/sh # Copyright (C) 2002-2005 Flavio Stanchina # Copyright (C) 2005-2006 Aric Cyr # Copyright (C) 2007 Mario Limonciello # Copyright (C) 2009 Alberto Milone set -e NAME=west-chamber PACKAGE_NAME=$NAME-dkms CVERSION=`dpkg-query -W -f='${Version}' $PACKAGE_NAME | awk -F "-" '{print $1}' | cut -d\: -f2` ARCH=`dpkg --print-architecture` dkms_configure () { for POSTINST in /usr/lib/dkms/common.postinst "/usr/share/$PACKAGE_NAME/postinst"; do if [ -f "$POSTINST" ]; then "$POSTINST" "$NAME" "$CVERSION" "/usr/share/$PACKAGE_NAME" "$ARCH" "$2" return $? fi echo "WARNING: $POSTINST does not exist." >&2 done echo "ERROR: DKMS version is too old and $PACKAGE_NAME was not" >&2 echo "built with legacy DKMS support." >&2 echo "You must either rebuild $PACKAGE_NAME with legacy postinst" >&2 echo "support or upgrade DKMS to a more current version." >&2 return 1 } case "$1" in configure) dkms_configure ;; abort-upgrade|abort-remove|abort-deconfigure) ;; *) echo "postinst called with unknown argument \`$1'" >&2 exit 1 ;; esac # dh_installdeb will replace this with shell code automatically # generated by other debhelper scripts. #DEBHELPER# exit 0 debian/patches/0000755000000000000000000000000011751027037010620 5ustar debian/patches/series0000644000000000000000000000002211751026417012030 0ustar 01_fix_OOPS.patch debian/patches/01_fix_OOPS.patch0000644000000000000000000000276411751027037013600 0ustar Description: Fix kernel OOPS on dst_metric() Change dst_metric() to dst_metric_raw() Author: Ying-Chun Liu (PaulLiu) Index: west-chamber-20100405+svn20111107.r124/extensions/xt_CUI.c =================================================================== --- west-chamber-20100405+svn20111107.r124.orig/extensions/xt_CUI.c 2012-05-05 02:56:30.000000000 +0800 +++ west-chamber-20100405+svn20111107.r124/extensions/xt_CUI.c 2012-05-05 03:26:01.889206581 +0800 @@ -108,7 +108,7 @@ else iph = ip_hdr(skb); - iph->ttl = dst_metric(skb_dst(skb), RTAX_HOPLIMIT); + iph->ttl = dst_metric_raw(skb_dst(skb), RTAX_HOPLIMIT); skb->ip_summed = CHECKSUM_NONE; /* "Never happens" */ @@ -208,7 +208,7 @@ else iph = ip_hdr(skb); - iph->ttl = dst_metric(skb_dst(skb), RTAX_HOPLIMIT); + iph->ttl = dst_metric_raw(skb_dst(skb), RTAX_HOPLIMIT); skb->ip_summed = CHECKSUM_NONE; /* "Never happens" */ Index: west-chamber-20100405+svn20111107.r124/extensions/xt_ZHANG.c =================================================================== --- west-chamber-20100405+svn20111107.r124.orig/extensions/xt_ZHANG.c 2012-05-05 02:56:30.000000000 +0800 +++ west-chamber-20100405+svn20111107.r124/extensions/xt_ZHANG.c 2012-05-05 03:25:43.881534591 +0800 @@ -115,7 +115,7 @@ else iph = ip_hdr(skb); - iph->ttl = dst_metric(skb_dst(skb), RTAX_HOPLIMIT); + iph->ttl = dst_metric_raw(skb_dst(skb), RTAX_HOPLIMIT); skb->ip_summed = CHECKSUM_NONE; /* "Never happens" */ debian/source/0000755000000000000000000000000011515277744010503 5ustar debian/source/format0000644000000000000000000000001411515277744011711 0ustar 3.0 (quilt) debian/clean0000644000000000000000000000064611525241403010176 0ustar config.sub depcomp install-sh xtables-addons.8 .manpages.lst targets.man missing config.guess compile Makefile.in config.h.in ltmain.sh matches.man aclocal.m4 configure m4/* extensions/Makefile.in extensions/ipset/Makefile.in extensions/ipset/Makefile extensions/ipset/modules.order extensions/compat_nfinetaddr.h extensions/compat_skbuff.h extensions/compat_xtables.c extensions/compat_xtables.h extensions/compat_xtnu.h debian/west-chamber-common.install0000644000000000000000000000015612234767456014447 0ustar extensions/libxt_CUI.so lib/xtables extensions/libxt_ZHANG.so lib/xtables extensions/libxt_gfw.so lib/xtables debian/west-chamber-dkms.conf0000644000000000000000000000210511751022676013357 0ustar PACKAGE_VERSION="20100405+svn20111107.r124" # Items below here should not have to change with each driver version PACKAGE_NAME="west-chamber" PSRC="/usr/src/${PACKAGE_NAME}-${PACKAGE_VERSION}" PDEST="/var/lib/dkms/${PACKAGE_NAME}/${PACKAGE_VERSION}/build" XTABLESDIR=`find /usr/src -maxdepth 1 -type d -name 'xtables-addons-*' -print | sort | tail -1` XTABLESBUILDDIR=`find /var/lib/dkms/xtables-addons -maxdepth 1 -type d -name '*.*' -print | sort | tail -1` KSRC="/lib/modules/$kernelver/build" CLEAN="make -C ${KSRC} M=${PSRC} XA_ABSTOPSRCDIR=${PSRC} clean; rm -f ${PSRC}/compat_xtables.c" MAKE="ln -s -f ${XTABLESDIR}/compat_xtables.c ${PSRC}; make -C ${KSRC} M=${PSRC} XA_ABSTOPSRCDIR=${PSRC} XTABLESDIR=${XTABLESDIR} modules ; find ${PSRC} -name 'xt_*.ko' -exec mv {} ${PDEST} \;" BUILT_MODULE_LOCATION[0]="" BUILT_MODULE_NAME[0]="xt_CUI" DEST_MODULE_LOCATION[0]="/updates" BUILT_MODULE_LOCATION[1]="" BUILT_MODULE_NAME[1]="xt_ZHANG" DEST_MODULE_LOCATION[1]="/updates" BUILT_MODULE_LOCATION[2]="" BUILT_MODULE_NAME[2]="xt_gfw" DEST_MODULE_LOCATION[2]="/updates" AUTOINSTALL=yes debian/changelog0000644000000000000000000000335112234767225011054 0ustar west-chamber (20100405+svn20111107.r124-2) unstable; urgency=low * Don't depends on obsolete linux-header packages (Closes: #728269) * Bump debhelper compat to 9 * Bump Standards-Version to 3.9.4: Nothing needs to be changed. -- Ying-Chun Liu (PaulLiu) Sat, 02 Nov 2013 02:10:26 +0800 west-chamber (20100405+svn20111107.r124-1) unstable; urgency=low * New upstream release * Fix dkms.conf for build error * Add 01_fix_OOPS.patch to fix kernel oops when using west-chamber * Bump Standards-Version to 3.9.3: Nothing needs to be changed -- Ying-Chun Liu (PaulLiu) Sat, 05 May 2012 03:34:10 +0800 west-chamber (20100405+svn20110916.r119-1) unstable; urgency=low * New upstream release * Update debian/copyright to comply latest format. * Drop debian/patches/001-dont_build_unnecessary_part.patch: upstreamed * Drop debian/patches/002-port_to_xtables-1.32.patch: upstreamed * Install more docs * Refresh README.Debian for examples * Update dkms package to fix FTBFS (Closes: #651782) - Don't use static links. Build the links dynamically. * debian/rules: make get-orig-source for generating source tarball from svn -- Ying-Chun Liu (PaulLiu) Fri, 16 Dec 2011 02:39:21 +0800 west-chamber (20100405-2) unstable; urgency=low * Add west-chamber-dkms package: use dkms to automatically build modules * Fix description typos (Closes: #620752) * Bump Standards-Version to 3.9.2: Nothing needs to be changed -- Ying-Chun Liu (PaulLiu) Mon, 23 May 2011 16:57:16 +0800 west-chamber (20100405-1) unstable; urgency=low * Initial release (Closes: #606990) -- Ying-Chun Liu (PaulLiu) Tue, 18 Jan 2011 19:56:11 +0800 debian/west-chamber-dkms.prerm0000644000000000000000000000061411751022755013560 0ustar #!/bin/sh set -e NAME=west-chamber PACKAGE_NAME=$NAME-dkms VERSION=20100405+svn20111107.r124 case "$1" in remove|upgrade|deconfigure) if [ "`dkms status -m $NAME`" ]; then dkms remove -m $NAME -v $VERSION --all fi ;; failed-upgrade) ;; *) echo "prerm called with unknown argument \`$1'" >&2 exit 1 ;; esac #DEBHELPER# exit 0 debian/rules0000755000000000000000000002051711672451712010261 0ustar #!/usr/bin/make -f # -*- makefile -*- # Uncomment this to turn on verbose mode. #export DH_VERBOSE=1 DEB_SOURCE := $(shell dpkg-parsechangelog | grep Source: | sed -e 's/Source: //') DEB_VERSION := $(shell dpkg-parsechangelog | grep Version: | sed -e 's/Version: //') DEB_UPSTREAM_VERSION := $(shell echo $(DEB_VERSION) | sed -e 's/-[^-]*$$//') SVN_URL = http://scholarzhang.googlecode.com/svn/trunk/west-chamber # package version pver:=$(shell dpkg-parsechangelog | grep Version: | sed -e 's/Version: //' | sed -e 's/-[^-]*$$//') # The short upstream name, used for the module source directory dkmssname := west-chamber-$(pver) # Name of the DKMS package dkmssource:=west-chamber-dkms # some default definitions, important! # Name of the source package psource:=west-chamber-source # The short upstream name, used for the module source directory sname:=west-chamber # The name of the common userspace package cname:=west-chamber-common ### KERNEL SETUP ### Setup the stuff needed for making kernel module packages ### taken from /usr/share/kernel-package/sample.module.rules # prefix of the target package name PACKAGE=west-chamber-modules # modifieable for experiments or debugging m-a MA_DIR ?= /usr/share/modass # load generic variable handling -include $(MA_DIR)/include/generic.make # load default rules, including kdist, kdist_image, ... -include $(MA_DIR)/include/common-rules.make # module assistant calculates all needed things for us and sets # following variables: # KSRC (kernel source directory), KVERS (kernel version string), KDREV # (revision of the Debian kernel-image package), CC (the correct # compiler), VERSION (the final package version string), PKGNAME (full # package name with KVERS included), DEB_DESTDIR (path to store DEBs) # The kdist_config target is called by make-kpkg modules_config and # by kdist* rules by dependency. It should configure the module so it is # ready for compilation (mostly useful for calling configure). # prep-deb-files from module-assistant creates the neccessary debian/ files kdist_config: prep-deb-files get-xtables-headers ./autogen.sh dh_auto_configure # the kdist_clean target is called by make-kpkg modules_clean and from # kdist* rules. It is responsible for cleaning up any changes that have # been made by the other kdist_commands (except for the .deb files created) kdist_clean: clean dh_testdir dh_clean [ ! -f Makefile ] || $(MAKE) $(MFLAGS) clean # ### end KERNEL SETUP configure: configure-stamp configure-stamp: dh_testdir # Add here commands to configure the package. ./autogen.sh dh_auto_configure touch configure-stamp build-arch: configure-stamp build-arch-stamp build-arch-stamp: dh_testdir # Add here command to compile/build the package. $(MAKE) -C extensions user-all-local touch $@ #k = $(shell echo $(KVERS) | grep -q ^2.6 && echo k) # the binary-modules rule is invoked by module-assistant while processing the # kdist* targets. It is called by module-assistant or make-kpkg and *not* # during a normal build binary-modules: dh_testroot dh_prep dh_installdirs lib/modules/$(KVERS)/extra/xtables-addons # Build the module $(MAKE) -C $(KSRC) M=$(CURDIR)/extensions XA_ABSTOPSRCDIR=$(CURDIR) KERNEL_DIR=$(KSRC) KVERS=$(KVERS) modules # Install the module cp extensions/xt_CUI.ko extensions/xt_ZHANG.ko extensions/xt_gfw.ko debian/$(PKGNAME)/lib/modules/$(KVERS)/extra/xtables-addons dh_installdocs dh_installchangelogs dh_compress dh_fixperms dh_installmodules dh_installdeb dh_gencontrol -- -v$(VERSION) dh_md5sums dh_builddeb --destdir=$(DEB_DESTDIR) dh_prep build-indep: configure-stamp build-indep-stamp build-indep-stamp: dh_testdir # Add here command to compile/build the arch indep package. # It's ok not to do anything here, if you don't need to build # anything for this package. #docbook-to-man debian/west-chamber.sgml > west-chamber.1 touch $@ build: build-arch build-indep clean: dh_testdir #dh_testroot rm -f build-arch-stamp build-indep-stamp configure-stamp # Add here commands to clean up after the build process. [ ! -f Makefile ] || $(MAKE) clean [ ! -f Makefile ] || $(MAKE) distclean dh_clean install: DH_OPTIONS= install: build dh_testdir dh_testroot dh_prep dh_installdirs # Create the directories to install the source into dh_installdirs -p$(psource) usr/src/modules/$(sname)/debian dh_installdirs -p$(psource) usr/src/modules/$(sname)/extensions dh_installdirs -p$(psource) usr/src/modules/$(sname)/m4 # Copy only the driver source to the proper location cp extensions/*.c extensions/Makefile.am \ extensions/?build \ debian/$(psource)/usr/src/modules/$(sname)/extensions cp Makefile.am Makefile.extra Makefile.iptrules.in Makefile.mans.in \ autogen.sh configure.ac mconfig west-chamber.8.in \ debian/$(psource)/usr/src/modules/$(sname) # Copy the needed debian/ pieces to the proper location cp debian/*modules.in* \ debian/$(psource)/usr/src/modules/$(sname)/debian cp debian/rules debian/changelog debian/copyright debian/clean \ debian/compat debian/control \ debian/$(psource)/usr/src/modules/$(sname)/debian/ cd debian/$(psource)/usr/src && tar c modules | bzip2 -9 > $(sname).tar.bz2 && rm -rf modules # DKMS # DKMS: Create the directories to install the source into dh_installdirs -p$(dkmssource) usr/src/$(dkmssname) # DKMS: Copy only the driver source to the proper location cp extensions/*.c debian/$(dkmssource)/usr/src/$(dkmssname)/ cp extensions/Kbuild extensions/Makefile extensions/Makefile.in debian/$(dkmssource)/usr/src/$(dkmssname)/ find debian/$(dkmssource)/usr/src -name ".gitignore" -delete cp Makefile.extra Makefile.iptrules \ mconfig \ debian/$(dkmssource)/usr/src/$(dkmssname) #sed 's/compat_xtables.o//' extensions/Kbuild > debian/$(dkmssource)/usr/src/$(dkmssname)/Kbuild echo 'EXTRA_CFLAGS += -I$${XTABLESDIR} -I.' >> debian/$(dkmssource)/usr/src/$(dkmssname)/Kbuild # DKMS: Copy the dkms configuration file cp $(CURDIR)/debian/$(dkmssource).conf \ debian/$(dkmssource)/usr/src/$(dkmssname)/dkms.conf # Add here commands to install the package into debian/west-chamber. dh_install get-xtables-headers: tar --extract --to-stdout --file=/usr/src/xtables-addons.tar.bz2 \ modules/xtables-addons/compat_xtables.c > \ $(CURDIR)/extensions/compat_xtables.c tar --extract --to-stdout --file=/usr/src/xtables-addons.tar.bz2 \ modules/xtables-addons/compat_xtables.h > \ $(CURDIR)/extensions/compat_xtables.h tar --extract --to-stdout --file=/usr/src/xtables-addons.tar.bz2 \ modules/xtables-addons/compat_nfinetaddr.h > \ $(CURDIR)/extensions/compat_nfinetaddr.h tar --extract --to-stdout --file=/usr/src/xtables-addons.tar.bz2 \ modules/xtables-addons/compat_skbuff.h > \ $(CURDIR)/extensions/compat_skbuff.h tar --extract --to-stdout --file=/usr/src/xtables-addons.tar.bz2 \ modules/xtables-addons/compat_xtnu.h > \ $(CURDIR)/extensions/compat_xtnu.h # Build architecture-independent files here. # Pass -i to all debhelper commands in this target to reduce clutter. binary-indep: build install dh_testdir -i dh_testroot -i dh_installchangelogs ChangeLog -i dh_installdocs -i dh_installexamples -i dh_install -i dh_installman -i dh_link -i dh_compress -i dh_fixperms -i dh_installdeb -i dh_installdeb -i dh_shlibdeps -i dh_gencontrol -i dh_md5sums -i dh_builddeb -i # Build architecture-dependent files here. binary-arch: build install dh_testdir -s dh_testroot -s dh_installdocs -s dh_installexamples -s dh_installmenu -s dh_installcron -s dh_installman -s dh_installinfo -s dh_installchangelogs ChangeLog -s dh_strip -s dh_link -s dh_compress -s dh_fixperms -s dh_installdeb -s dh_shlibdeps -s dh_gencontrol -s dh_md5sums -s dh_builddeb -s binary: binary-indep binary-arch get-orig-source: set -e; if echo $(DEB_VERSION) | grep -c "svn"; \ then \ svn_version=`echo $(DEB_VERSION) | sed -e 's/^.*svn\([0-9]*\)*\.\(.*\)-.*$$/\2/g'`; \ else \ svn_version=$(DEB_UPSTREAM_VERSION); \ fi; \ tmpdir=`mktemp -d -t`; \ cd $$tmpdir; \ echo "checkout upstream repository ..."; \ svn checkout -r $$svn_version $(SVN_URL) west-chamber; echo "getting specific upstream revision/tag: $$svn_version"; \ tar --exclude=.svn -cjvf $(CURDIR)/$(DEB_SOURCE)_$(DEB_UPSTREAM_VERSION).orig.tar.bz2 `ls | head -n 1`; \ cd $(CURDIR); \ rm -rf $$tmpdir .PHONY: build clean binary-indep binary-arch binary install configure binary-modules kdist kdist_configure kdist_image kdist_clean debian/README.Debian0000644000000000000000000000457211672437140011244 0ustar west-chamber for Debian ----------------------- = Install = There are 2 ways to install west-chamber. By DKMS or by module-assistant. == DKMS == # execute the following command: sudo apt-get install west-chamber-dkms west-chamber-common == module-assistant == # execute the following commands: sudo apt-get install west-chamber-source west-chamber-common sudo m-a auto-install xtables-addons sudo m-a auto-install west-chamber = Quick Usage = # execute the following commands: sudo ipset -R < /usr/share/doc/west-chamber-common/examples/ipsets/YOUTUBE sudo ipset -R < /usr/share/doc/west-chamber-common/examples/ipsets/GOOGLE sudo ipset -R < /usr/share/doc/west-chamber-common/examples/ipsets/NOCLIP sudo iptables -A INPUT -p tcp --sport 80 --tcp-flags \ FIN,SYN,RST,ACK SYN,ACK -m state --state ESTABLISHED \ -m set --match-set NOCLIP src -j ZHANG sudo iptables -A INPUT -p tcp --sport 80 -m state --state \ ESTABLISHED -m gfw -j LOG --log-level info --log-prefix "gfw: " sudo iptables -A INPUT -p udp --sport 53 -m state --state \ ESTABLISHED -m gfw -j DROP # enjoy = About module-assistant package = Please see ./README for a description of the west-chamber software. The Debian west-chamber source package provides two packages, 1) west-chamber-common, which the provides the userspace addons for xtables 2) west-chamber-source, which provides the source for the kernel modules The west-chamber-source package can be used in several ways, - Using the module-assistant command provided by module-assistant package in Debian. This will produce a corresponding west-chamber-modules package for the Debian kernel-image package that you are using very quickly. - Using the make-kpkg(1) command provided by the kernel-package Debian package. This will produce a corresponding west-chamber-modules package for the Debian kernel-image package that you are using. This is "the Debian way". See the "modules_image" section of the make-kpkg(1) man page. - Changing to the /usr/src/modules/west-chamber/ directory and building as the README file instructs using "make; make install". This will build and install a module specific to the system you are building on and is not under control of the packaging system. = More Info = * http://code.google.com/p/scholarzhang/wiki/USAGE -- Ying-Chun Liu (PaulLiu) , Fri, 16 Dec 2011 02:37:20 +0800 debian/west-chamber-common.docs0000644000000000000000000000001711672440067013714 0ustar HOWTO* README* debian/west-chamber-common.examples0000644000000000000000000000001311515336105014567 0ustar examples/* debian/control.modules.in0000644000000000000000000000240212234767456012663 0ustar Source: west-chamber Section: kernel Priority: extra Maintainer: Ying-Chun Liu (PaulLiu) Build-Depends: autoconf, automake, autotools-dev, bzip2, debhelper (>= 7), iptables-dev (>= 1.4.3), kbuild, libtool, pkg-config, xtables-addons-source (>= 1.32) Standards-Version: 3.9.1 Package: west-chamber-modules-_KVERS_ Architecture: any Provides: west-chamber-modules Description: west-chamber modules for Linux (kernel _KVERS_). This package contains the set of loadable kernel modules for west-chamber. . West-chamber is an iptable extensions named after the famous Chinese ancient friction - Romance of the West Chamber. It is based on the idea of T. Ptacek's paper in 1998 which allows users go through some content-filtered firewall without 3rd-party proxies. . This package contains the compiled kernel modules for _KVERS_ . If you have compiled your own kernel, you will most likely need to build your own west-chamber-modules. The west-chamber-source package has been provided for use with the Debian's module-assistant or kernel-package utilities to produce a version of west-chamber-modules for your kernel.