summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--www/transproxy/Makefile20
-rw-r--r--www/transproxy/distinfo2
-rw-r--r--www/transproxy/files/patch-aa59
-rw-r--r--www/transproxy/pkg-comment2
-rw-r--r--www/transproxy/pkg-descr26
-rw-r--r--www/transproxy/pkg-plist2
6 files changed, 62 insertions, 49 deletions
diff --git a/www/transproxy/Makefile b/www/transproxy/Makefile
index ece349ac9d60..71110645c64b 100644
--- a/www/transproxy/Makefile
+++ b/www/transproxy/Makefile
@@ -1,30 +1,28 @@
# New ports collection makefile for: transproxy
-# Version required: 0.3
+# Version required: 1.0
# Date created: Fri Mar 27 21:24:13 WST 1998
# Whom: Peter Wemm <peter@netplex.com.au>
#
# $FreeBSD$
#
-DISTNAME= transproxy-0.3
+DISTNAME= transproxy-1.0
CATEGORIES= www net
-MASTER_SITES= ftp://ftp.nlc.net.au/pub/linux/www/
+MASTER_SITES= ftp://ftp.nlc.net.au/pub/unix/transproxy/
EXTRACT_SUFX= .tgz
MAINTAINER= peter@FreeBSD.org
-ALL_TARGET= tproxy
+MAN8= tproxy.8
.include <bsd.port.pre.mk>
-# This has only been tested with -current, although it might work if you
-# can get the ipfilter package to build on a 2.2.x system. YMMV.
-# ftp://cheops.anu.edu.au/pub/net/firewall/ip-filter/
+# Requires FreeBSD-3.0 or higher because of a feature it uses to ignore
+# the death of child processes. Also later versions of FreeBSD have the
+# ipfw fwd rule, and IPFILTER ipnat command, which is needed for this
+# sort of program anyway.
.if ${OSVERSION} < 300000
-BROKEN= "transproxy requires ipfilter, available in 3.0 or later"
+BROKEN= "transproxy requires SA_NOCLDWAIT, available in 3.x or later"
.endif
-do-install:
- cd ${WRKSRC}; ${INSTALL_PROGRAM} ${WRKSRC}/tproxy ${PREFIX}/sbin
-
.include <bsd.port.post.mk>
diff --git a/www/transproxy/distinfo b/www/transproxy/distinfo
index 7b543eec6049..32d95234d5e6 100644
--- a/www/transproxy/distinfo
+++ b/www/transproxy/distinfo
@@ -1 +1 @@
-MD5 (transproxy-0.3.tgz) = 12e38e77223f5c697fc2a1a5dc0cac36
+MD5 (transproxy-1.0.tgz) = 81ebbe417f6d56345b29ef7edd3d725e
diff --git a/www/transproxy/files/patch-aa b/www/transproxy/files/patch-aa
index 7756ab3bb1ad..4a8e6b89f229 100644
--- a/www/transproxy/files/patch-aa
+++ b/www/transproxy/files/patch-aa
@@ -1,25 +1,40 @@
---- Makefile.dist Mon Feb 17 22:41:07 1997
-+++ Makefile Fri Mar 27 21:57:17 1998
-@@ -11,15 +11,15 @@
- # PAY_THE_PENALTY Slow down if they don't use proxy directly.
- #
+--- Makefile.orig Mon Jul 12 11:55:33 1999
++++ Makefile Mon Jul 12 12:55:57 1999
+@@ -56,15 +56,16 @@
+ #OPTIONS += -DHAVE_GETOPT_H
--OPTIONS=-DDNS_LOOKUPS #-DUSELESS_DNS_LOOKUPS
-+CFLAGS+=-DIPFILTER -DDNS_LOOKUPS #-DUSELESS_DNS_LOOKUPS
+ # You may need to touch PREFIX, CC and CFLAGS.
+-PREFIX = /usr/local
+-INSTALL_PROGRAM = install -c -m 555 -o bin -g bin
+-INSTALL_MAN = install -c -m 444 -o bin -g bin
+-
+-RM = rm -f
+-CC = gcc
+-CFLAGS = -O2 -Wall $(OPTIONS)
+-LDFLAGS = -s
+-LIBS += #-lresolv
++#PREFIX = /usr/local
++#INSTALL_PROGRAM = install -c -m 555 -o bin -g bin
++#INSTALL_MAN = install -c -m 444 -o bin -g bin
++
++#RM = rm -f
++#CC = gcc
++#CFLAGS = -O2 -Wall $(OPTIONS)
++CFLAGS += $(OPTIONS)
++#LDFLAGS = -s
++#LIBS += #-lresolv
--CC=gcc
--CFLAGS=-O2 -m486 -Wall $(OPTIONS)
--LDFLAGS=-s
--LIBS= #-lresolv
-+#CC=gcc
-+#CFLAGS=-O2 -m486 -Wall $(OPTIONS)
-+#LDFLAGS=-s
-+#LIBS= #-lresolv
-
--RM=rm -f
--INSTALL=install
-+#RM=rm -f
-+#INSTALL=install
-
- TARGETNAME=in.tproxyd
+ # You shouldn't need to touch anything below this.
+ all: tproxy
+@@ -85,7 +86,7 @@
+ $(RM) tproxy
+ install: tproxy
+- $(INSTALL_PROGRAM) tproxy $(PREFIX)/sbin
+- $(INSTALL_PROGRAM) tproxyrun $(PREFIX)/sbin
+- $(INSTALL_PROGRAM) tproxywatch $(PREFIX)/sbin
+- $(INSTALL_MAN) tproxy.8 $(PREFIX)/man/man8
++ $(BSD_INSTALL_PROGRAM) tproxy $(PREFIX)/sbin
++ $(BSD_INSTALL_SCRIPT) tproxyrun $(PREFIX)/sbin
++ $(BSD_INSTALL_SCRIPT) tproxywatch $(PREFIX)/sbin
++ $(BSD_INSTALL_MAN) tproxy.8 $(PREFIX)/man/man8
diff --git a/www/transproxy/pkg-comment b/www/transproxy/pkg-comment
index 254962609889..b60d479685de 100644
--- a/www/transproxy/pkg-comment
+++ b/www/transproxy/pkg-comment
@@ -1 +1 @@
-Transparent www proxy driver for IPFILTER (NOT ipfw!!)
+Transparent HTTP proxy for ipfw's fwd rule (or IPFILTER's ipnat command)
diff --git a/www/transproxy/pkg-descr b/www/transproxy/pkg-descr
index 3831ae967ae7..e82688c1aedf 100644
--- a/www/transproxy/pkg-descr
+++ b/www/transproxy/pkg-descr
@@ -1,20 +1,18 @@
-transproxy - transparently proxy HTTP and other requests.
+transproxy - transparently proxy HTTP requests.
-This program is used with Darren Reed's IPFILTER package and used
-to intercept things like http requests and divert them to a www proxy
-server (eg: squid), without requiring user intervention or configuration.
+This program is used with ipfw's fwd rules or Darren Reed's IPFILTER
+package, and is used to intercept HTTP requests and divert them to a
+HTTP proxy server (eg: squid), without requiring user intervention or
+configuration.
It accepts connections on the redirected port, connects to the real proxy
-server and transports data between the two sockets.
+server, and transports data between the two sockets. The original HTTP
+request is modified to allow the HTTP proxy server to fetch the correct
+document. In most cases this doesn't cause any DNS activity.
Unlike some other transparent proxy solutions, this does not require the
-proxy run on the machine itself.
+HTTP proxy server to run on the machine itself.
-Use something like:
-/usr/local/sbin/tproxy -b 127.0.0.1 -s 8081 [squidip] [squidport]
-
-(bind to localhost for safety), and the following ipnat rules:
-
-rdr ppp0 0.0.0.0/0 port 80 -> 127.0.0.1 port 8081
-rdr ppp1 0.0.0.0/0 port 80 -> 127.0.0.1 port 8081
-[..etc..]
+See /usr/local/sbin/tproxyrun for an example of how to add filter rules
+and start tproxy. Also see /usr/local/sbin/tproxywatch for an example of
+how to ensure that tproxy keeps running regardless of faults.
diff --git a/www/transproxy/pkg-plist b/www/transproxy/pkg-plist
index c1f8490791f9..8bb54d878e2e 100644
--- a/www/transproxy/pkg-plist
+++ b/www/transproxy/pkg-plist
@@ -1 +1,3 @@
sbin/tproxy
+sbin/tproxyrun
+sbin/tproxywatch