summaryrefslogtreecommitdiff
path: root/net/3proxy
diff options
context:
space:
mode:
authorapb <apb@pkgsrc.org>2008-02-27 16:14:25 +0000
committerapb <apb@pkgsrc.org>2008-02-27 16:14:25 +0000
commitc8700fd62bd7a8ee199fa53b409caecfbb3b8cce (patch)
tree078f5c5961463e7cc221e7ad3daf6e2cac0f0b43 /net/3proxy
parent2b6ae3e7bc268041617b9a802546810cf22c58fe (diff)
downloadpkgsrc-c8700fd62bd7a8ee199fa53b409caecfbb3b8cce.tar.gz
Add net/3proxy version 0.5.3k. This is a multi-protocol proxy that
can be configured to chain to other proxies.
Diffstat (limited to 'net/3proxy')
-rw-r--r--net/3proxy/DESCR11
-rw-r--r--net/3proxy/Makefile34
-rw-r--r--net/3proxy/PLIST4
-rw-r--r--net/3proxy/distinfo8
-rw-r--r--net/3proxy/patches/patch-aa13
-rw-r--r--net/3proxy/patches/patch-ab13
-rw-r--r--net/3proxy/patches/patch-ac34
7 files changed, 117 insertions, 0 deletions
diff --git a/net/3proxy/DESCR b/net/3proxy/DESCR
new file mode 100644
index 00000000000..bf7e6639589
--- /dev/null
+++ b/net/3proxy/DESCR
@@ -0,0 +1,11 @@
+3Proxy tiny free proxy server previously known as 3[APA3A] tiny freeware
+proxy (pronounce it as "Zaraza tiny freeware proxy") is really tiny
+cross-platform (Win32/Win64&Unix) proxy servers set. It includes HTTP proxy
+with HTTPS and FTP support, SOCKSv4/SOCKSv4.5/SOCKSv5 proxy
+(socks/socks.exe), POP3 proxy, SMTP proxy, AIM/ICQ proxy (icqpr/icqpr.exe),
+MSN messenger / Live messenger proxy (msnpr/msnpr.exe), FTP proxy, caching
+DNS proxy, TCP and UDP portmappers. You can use every proxy as a standalone
+program (socks, proxy, tcppm, udppm, pop3p) or use combined program (3proxy).
+Combined proxy additionally supports features like access control, bandwidth
+limiting, limiting daily/weekly/monthly traffic amount, proxy chaining, log
+rotation, syslog and ODBC logging, etc.
diff --git a/net/3proxy/Makefile b/net/3proxy/Makefile
new file mode 100644
index 00000000000..2d543cbbca5
--- /dev/null
+++ b/net/3proxy/Makefile
@@ -0,0 +1,34 @@
+# $NetBSD: Makefile,v 1.1 2008/02/27 16:14:25 apb Exp $
+#
+
+DISTNAME= 3proxy-0.5.3k
+PKGNAME= ${DISTNAME:C/k$/.11/}
+CATEGORIES= net
+MASTER_SITES= http://3proxy.ru/${DISTNAME:S/3proxy-//}/
+EXTRACT_SUFX= .tgz
+
+MAINTAINER= pkgsrc-users@NetBSD.org
+HOMEPAGE= http://3proxy.ru/
+COMMENT= Multi-protocol proxy
+
+WRKSRC= ${WRKDIR}
+MAKE_FILE= Makefile.unix
+
+# 3proxy-0.5.* is dual-licenced under GPL or custom terms. It's not
+# clear exactly which version of the GPL is intended; ${WRKSRC}/License
+# says "current version of GNU GPL" without specifying a numeric version
+# number. 3proxy-0.6.* will have a different license.
+LICENSE= 3proxy-0.5-license
+
+# We install only 3proxy and its man pages. There are several other
+# binaries which we don't install, because the 3proxy executable
+# provides a superset of the functionality of the others. We also don't
+# install the HTML pages, because they provide no more information than
+# the man pages.
+do-install:
+ ${INSTALL_PROGRAM} ${WRKSRC}/src/3proxy ${PREFIX}/sbin/.
+ ${INSTALL_MAN} ${WRKSRC}/man/3proxy.8 ${PREFIX}/${PKGMANDIR}/man8/.
+ ${INSTALL_MAN} ${WRKSRC}/man/3proxy.cfg.3 \
+ ${PREFIX}/${PKGMANDIR}/man5/3proxy.cfg.5
+
+.include "../../mk/bsd.pkg.mk"
diff --git a/net/3proxy/PLIST b/net/3proxy/PLIST
new file mode 100644
index 00000000000..6f6dc03cb96
--- /dev/null
+++ b/net/3proxy/PLIST
@@ -0,0 +1,4 @@
+@comment $NetBSD: PLIST,v 1.1 2008/02/27 16:14:25 apb Exp $
+sbin/3proxy
+man/man8/3proxy.8
+man/man5/3proxy.cfg.5
diff --git a/net/3proxy/distinfo b/net/3proxy/distinfo
new file mode 100644
index 00000000000..64b15e47e93
--- /dev/null
+++ b/net/3proxy/distinfo
@@ -0,0 +1,8 @@
+$NetBSD: distinfo,v 1.1 2008/02/27 16:14:25 apb Exp $
+
+SHA1 (3proxy-0.5.3k.tgz) = 71befdaa94867e4b54a5b24e2a3b3b33debd5e67
+RMD160 (3proxy-0.5.3k.tgz) = 416d3c0d870a6aa450472f4ab060ce90e3362dea
+Size (3proxy-0.5.3k.tgz) = 190797 bytes
+SHA1 (patch-aa) = e84a56ce0ce1fc82c982fb0e78ea14986035e0a0
+SHA1 (patch-ab) = 681c7b0b29ad6fb652b3fa8bcecc2af563589c4f
+SHA1 (patch-ac) = caff37ccb6018152d11f6ce5c682f8cec4feff9b
diff --git a/net/3proxy/patches/patch-aa b/net/3proxy/patches/patch-aa
new file mode 100644
index 00000000000..ed4fd67948e
--- /dev/null
+++ b/net/3proxy/patches/patch-aa
@@ -0,0 +1,13 @@
+$NetBSD: patch-aa,v 1.1 2008/02/27 16:14:25 apb Exp $
+
+--- src/3proxy.c.orig 2007-04-20 13:05:10.000000000 +0200
++++ src/3proxy.c
+@@ -1276,7 +1276,7 @@ int readconfig(FILE * fp){
+
+
+ tl->comment = mystrdup((char *)ch->argv[1]);
+- while(isdigit(*tl->comment))tl->comment++;
++ while(isdigit((unsigned char)*tl->comment))tl->comment++;
+ if(*tl->comment== '/')tl->comment++;
+
+ sscanf((char *)ch->argv[1], "%u", &tl->number);
diff --git a/net/3proxy/patches/patch-ab b/net/3proxy/patches/patch-ab
new file mode 100644
index 00000000000..3b4863e3e89
--- /dev/null
+++ b/net/3proxy/patches/patch-ab
@@ -0,0 +1,13 @@
+$NetBSD: patch-ab,v 1.1 2008/02/27 16:14:25 apb Exp $
+
+--- src/ntlm.c.orig 2006-10-15 10:40:04.000000000 +0200
++++ src/ntlm.c
+@@ -43,7 +43,7 @@ int text2unicode(const char * text, char
+ buflen = ((buflen>>1)<<1);
+ if(!text || !buflen) return 0;
+ do {
+- buf[count++] = toupper(*text++);
++ buf[count++] = toupper((unsigned char)*text++);
+ buf[count++] = '\0';
+ } while (*text && count < buflen);
+ return count;
diff --git a/net/3proxy/patches/patch-ac b/net/3proxy/patches/patch-ac
new file mode 100644
index 00000000000..caef49b394f
--- /dev/null
+++ b/net/3proxy/patches/patch-ac
@@ -0,0 +1,34 @@
+$NetBSD: patch-ac,v 1.1 2008/02/27 16:14:25 apb Exp $
+
+--- src/webadmin.c.orig 2006-03-10 21:36:33.000000000 +0200
++++ src/webadmin.c
+@@ -311,12 +311,12 @@ void * adminchild(void * data) {
+ sb = strchr(buf, ':');
+ if(!sb)continue;
+ ++sb;
+- while(isspace(*sb))sb++;
++ while(isspace((unsigned char)*sb))sb++;
+ if(!*sb || strncasecmp(sb, "basic", 5)){
+ continue;
+ }
+ sb+=5;
+- while(isspace(*sb))sb++;
++ while(isspace((unsigned char)*sb))sb++;
+ i = de64((unsigned char *)sb, (unsigned char *)username, 255);
+ if(i<=0)continue;
+ username[i] = 0;
+@@ -332,12 +332,12 @@ void * adminchild(void * data) {
+ }
+ else if(i > 15 && (!strncasecmp(buf, "content-length:", 15))){
+ sb = buf + 15;
+- while(isspace(*sb))sb++;
++ while(isspace((unsigned char)*sb))sb++;
+ contentlen = atoi(sb);
+ }
+ else if(i > 13 && (!strncasecmp(buf, "content-type:", 13))){
+ sb = buf + 13;
+- while(isspace(*sb))sb++;
++ while(isspace((unsigned char)*sb))sb++;
+ if(!strncasecmp(sb, "x-www-form-urlencoded", 21)) isform = 1;
+ }
+ }