Cutter was marked as broken a long time ago, cutter is utility used for disconnecting ongoing TCP connections. Problem was that it didn't support nf_conntrack. Here's a patch that changes it to use nf_conntrack instead of ip_conntrack..
Signed-off-by: Oskari Rauta <oskari.ra...@gmail.com> Patch begins: diff --git a/net/cutter/Makefile b/net/cutter/Makefile index f9830b4..16d0a53 100644 --- a/net/cutter/Makefile +++ b/net/cutter/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=cutter PKG_VERSION:=1.03 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tgz PKG_SOURCE_URL:=http://www.lowth.com/cutter/software/ @@ -22,7 +22,6 @@ define Package/cutter CATEGORY:=Network TITLE:=allows an user to abort TCP/IP connections URL:=http://www.lowth.com/cutter/ - DEPENDS:=@BROKEN endef define Package/cutter/description diff --git a/net/cutter/patches/001-nf_conntrack.patch b/net/cutter/patches/001-nf_conntrack.patch new file mode 100644 index 0000000..06febe7 --- /dev/null +++ b/net/cutter/patches/001-nf_conntrack.patch @@ -0,0 +1,39 @@ +--- a/cutter.c.orig 2005-04-30 09:01:03.000000000 +0200 ++++ b/cutter.c 2007-10-26 16:10:04.000000000 +0200 +@@ -476,7 +476,7 @@ + + int scan_conntrack(in_addr_t ip1, int port1, in_addr_t ip2, int port2) + { +- FILE *id = fopen( "/proc/net/ip_conntrack", "r" ); ++ FILE *id = fopen( "/proc/net/nf_conntrack", "r" ); + char src1[32], dst1[32], src2[32], dst2[32]; + int sport1, dport1, sport2, dport2, i; + int packets1, packets2, bytes1, bytes2; +@@ -486,12 +486,12 @@ + int ok = TRUE; + + if (id == NULL) { +- perror( "openning /proc/net/ip_conntrack" ); ++ perror( "openning /proc/net/nf_conntrack" ); + return FALSE; + } + + while (fgets(buff, sizeof(buff), id) != NULL) { +- if (memcmp(buff, "tcp ", 4) != 0 || strstr(buff, " ESTABLISHED ") == NULL) ++ if (memcmp(buff, "ipv4 2 tcp ", 15) != 0 || strstr(buff, " ESTABLISHED ") == NULL) + continue; + + p = buff; +@@ -537,6 +537,12 @@ + ok = send_rst(dst1,dport1,src1,sport1) && ok; + ok = send_rst(dst2,dport2,src2,sport2) && ok; + } ++ else { ++ found ++; ++ printf("For connection %s:%d -> %s:%d\n", dst2, dport2, src2, sport2); ++ ok = send_rst(dst1,dport1,src1,sport1) && ok; ++ ok = send_rst(dst2,dport2,src2,sport2) && ok; ++ } + } + } + _______________________________________________ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel