Update to 0.8.11
Remove patches/patch-aa: code no longer used Fix Makefile.unix: from FreeBSD ports Add documentation to package Add rcd script Changes: -------- 19.10.2017 Releasing as 0.8.11 Minor bugfixes / improvements: ! Fixed: deadlock on insufficient resources ! Fixed: race condition in ssl_plugin ! Fixed: minor memory leak on configuration reload ! Fixed: recursion detection was not working ! Fixed: %n for IPv6 in logging terminates log record ! Fixed: reverse PTR validation (required for dnsauth) ! Fixed: error on external 0.0.0.0 for NOIPV6 (light version) + Better support for IPv6 in ftppr 25.06.2017 Releasing as 0.8.10 !Fix: parent proxy can be used in some cases where it shouldn't !Fix: bandlimiters may not work for older connections on configuration reload 01.02.2017 Releasing as 0.8.9 !Fix: tcppm may fail if used with parent proxy 16.12.2016 Releasing as 0.8.8 !! Fix resolver for non-compressed reply parsing (on mixed-case sensitive resolvers) ! Fix plugins export on OpenWatcom compiler (light version) ! Fix SOCKSv5 parent over IPv6 network 04.09.2016 Releasing as 0.8.7 ! Fix 'daemon' command for Linux ! Fix 'extip' redirections 00009 errors ! Fix counters for older Win platforms ! Resolve logging race conditions ! attempt to fix pam_auth race conditions ! FTP proxy workaround for broken gethostname() on some libc limplementations ! authcache IP matching corrected ! fix SOCKSv5 BIND/UDP ASSOC ! use setreuid/setregid instead of setuid / setgid - OpenWatcom makefiles for Windows - -u2 support for proxy - support %i in logformat - force/noforce configuration commands to disconnect / do not disconnect clients if nolonger match ACL after configuration change - support longer external passwords Lite version of Windows binaries is switched to OpenWatcom. It will hopefully remove int64-related msvcrt.dll issues on old Windows versions. 07.03.2016 Releasing as 0.8.6 ! Fix: random 00012 errors in some configurations 02.03.2016 Releasing as 0.8.5 !Fix: mutex was used prior to initialization on 'log' command processing 28.02.2016 Releasing as 0.8.4 + Build PamPlugin on *nix - stacksize and -S options, stacksize defaults changed for FreeBSD - extip redirection type added ! SSL plugin fix to correct handling of certificates path ! fixed random errors on IPv6 connect 26.01.2016 Releasing as 0.8.3 ! fixed: use SASIZE() instead of sizeof() in connect() for FreeBSD compatibility 3proxy-0.8.3-lite.zip - Windows binaries, Lite version compatible with old Windows versions 3proxy-0.8.3.zip / 3proxy-0.8.3-x64.zip - 32/64 Windows binraries, compatible with Windows Vista / 2008 server and above 23.01.2016 Releasing as 0.8.2 !! Fix transparent flag not reset after keep-alive connection, can lead to DoS by authenticated user. ! Do not use SO_REUSEADDR by default (leads to random 00013 errors under some glibc versions) ! Use SASIZE() instead of sizeof() in bind() for FreeBSD compatibility 23.01.2016 Releasing as 0.7.1.4 !! Fix transparent flag not reset after keep-alive connection, can lead to DoS from authenticated user. 21.01.2016 Releasing as 0.8.1 !!Fix: destination IP may be not checked against ACL 19.01.2016 Releasing as 0.8.0 + IPv6 support - back connect support - name resolution over TCP, parent proxy support for dnspr ! multiple race conditions fixed ! reduced memory usage ! Generate Forwarded: header instead of X-Forwarded-For: ! Default name resolution is non-blocking in *nix Read HowTo for new functionality description Update from 0.7 is recommended if you use 3proxy under high load 12.01.2016 Releasing as 0.8-pre + IPv6 support - Connect back (reverse connect) proxy - DNS requests redirection via parent proxy over TCP (including UDP->TCP mapping) - SSLPlugin for TLS/SSL traffic decryption - multiple race conditions fixed on configuration reload 15.09.2015 Releasing as 0.7.1.3 ! traffic displayed incorrectly ! archiver doesn't add suffix if logname contains macro ! fix potential race condition on configuration reload ! fix FTP over HTTP authentication15.09.2015 Releasing as 0.7.1.3 ! traffic displayed incorrectly ! archiver doesn't add suffix if logname contains macro ! fix potential race condition on configuration reload ! fix FTP over HTTP authentication15.09.2015 Releasing as 0.7.1.3 ! traffic displayed incorrectly ! archiver doesn't add suffix if logname contains macro ! fix potential race condition on configuration reload ! fix FTP over HTTP authentication15.09.2015 Releasing as 0.7.1.3 ! traffic displayed incorrectly ! archiver doesn't add suffix if logname contains macro ! fix potential race condition on configuration reload ! fix FTP over HTTP authentication15.09.2015 Releasing as 0.7.1.3 ! traffic displayed incorrectly ! archiver doesn't add suffix if logname contains macro ! fix potential race condition on configuration reload ! fix FTP over HTTP authentication15.09.2015 Releasing as 0.7.1.3 ! traffic displayed incorrectly ! archiver doesn't add suffix if logname contains macro ! fix potential race condition on configuration reload ! fix FTP over HTTP authentication15.09.2015 Releasing as 0.7.1.3 ! traffic displayed incorrectly ! archiver doesn't add suffix if logname contains macro ! fix potential race condition on configuration reload ! fix FTP over HTTP authentication15.09.2015 Releasing as 0.7.1.3 ! traffic displayed incorrectly ! archiver doesn't add suffix if logname contains macro ! fix potential race condition on configuration reload ! fix FTP over HTTP authentication15.09.2015 Releasing as 0.7.1.3 ! traffic displayed incorrectly ! archiver doesn't add suffix if logname contains macro ! fix potential race condition on configuration reload ! fix FTP over HTTP authentication
This commit is contained in:
parent
61f32f86b2
commit
08a12ff279
10 changed files with 156 additions and 27 deletions
|
@ -1,7 +1,7 @@
|
|||
# $NetBSD: Makefile,v 1.10 2017/08/01 14:59:02 wiz Exp $
|
||||
# $NetBSD: Makefile,v 1.11 2018/02/19 21:25:46 triaxx Exp $
|
||||
#
|
||||
|
||||
DISTNAME= 3proxy-0.7.1.2
|
||||
DISTNAME= 3proxy-0.8.11
|
||||
CATEGORIES= net
|
||||
MASTER_SITES= https://3proxy.ru/${DISTNAME:S/3proxy-//}/
|
||||
EXTRACT_SUFX= .tgz
|
||||
|
@ -13,13 +13,27 @@ COMMENT= Multi-protocol proxy
|
|||
# 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
|
||||
# 3proxy-0.7-license is now inspired by BSD license.
|
||||
LICENSE= 3proxy-0.7-license
|
||||
|
||||
EGDIR= ${PREFIX}/share/examples/${PKGBASE}
|
||||
REQD_FILES= ${EGDIR}/3proxy.cfg.sample \
|
||||
${PKG_SYSCONFDIR}/${PKGBASE}/3proxy.cfg
|
||||
OWN_DIRS+= ${PKG_SYSCONFDIR}/${PKGBASE} ${VARBASE}/log/${PKGBASE}
|
||||
RCD_SCRIPTS= threeproxy
|
||||
WRKSRC= ${WRKDIR}/${PKGBASE}
|
||||
MAKE_FILE= Makefile.unix
|
||||
MAKE_FLAGS+= LIBS=${BUILDLINK_LDADD.dl:Q}
|
||||
|
||||
INSTALLATION_DIRS= sbin ${PKGMANDIR}/man5 ${PKGMANDIR}/man8
|
||||
INSTALLATION_DIRS= sbin ${PKGMANDIR}/man5 ${PKGMANDIR}/man8 ${EGDIR}
|
||||
|
||||
SUBST_CLASSES+= cfg
|
||||
SUBST_STAGE.cfg= pre-install
|
||||
SUBST_MESSAGE.cfg= Adjusting config sample file.
|
||||
SUBST_FILES.cfg= cfg/3proxy.cfg.sample
|
||||
SUBST_SED.cfg= -e "s|@PREFIX@|${PREFIX}|g"
|
||||
SUBST_SED.cfg+= -e "s|@PKG_SYSCONFDIR@|${PKG_SYSCONFDIR}|g"
|
||||
SUBST_SED.cfg+= -e "s|@VARBASE@|${VARBASE}|g"
|
||||
|
||||
# We install only 3proxy and its man pages. There are several other
|
||||
# binaries which we don't install, because the 3proxy executable
|
||||
|
@ -30,7 +44,9 @@ do-install:
|
|||
${INSTALL_PROGRAM} ${WRKSRC}/src/3proxy ${DESTDIR}${PREFIX}/sbin/.
|
||||
${INSTALL_MAN} ${WRKSRC}/man/3proxy.8 ${DESTDIR}${PREFIX}/${PKGMANDIR}/man8/.
|
||||
${INSTALL_MAN} ${WRKSRC}/man/3proxy.cfg.3 \
|
||||
${DESTDIR}${PREFIX}/${PKGMANDIR}/man5/3proxy.cfg.5
|
||||
${DESTDIR}${PREFIX}/${PKGMANDIR}/man5/3proxy.cfg.5
|
||||
${INSTALL_DATA} ${WRKSRC}/cfg/3proxy.cfg.sample \
|
||||
${DESTDIR}${EGDIR}/3proxy.cfg.sample
|
||||
|
||||
.include "../../mk/dlopen.buildlink3.mk"
|
||||
.include "../../mk/pthread.buildlink3.mk"
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
@comment $NetBSD: PLIST,v 1.2 2016/07/08 15:55:24 rillig Exp $
|
||||
@comment $NetBSD: PLIST,v 1.3 2018/02/19 21:25:46 triaxx Exp $
|
||||
man/man5/3proxy.cfg.5
|
||||
man/man8/3proxy.8
|
||||
sbin/3proxy
|
||||
share/examples/3proxy/3proxy.cfg.sample
|
||||
|
|
|
@ -1,11 +1,12 @@
|
|||
$NetBSD: distinfo,v 1.5 2016/07/08 15:55:24 rillig Exp $
|
||||
$NetBSD: distinfo,v 1.6 2018/02/19 21:25:46 triaxx Exp $
|
||||
|
||||
SHA1 (3proxy-0.7.1.2.tgz) = 58d92a3b61767c83a16f2cfd784458972083c63b
|
||||
RMD160 (3proxy-0.7.1.2.tgz) = a3be3d2c786cc52bfde46b7f9630a79eaf7b983c
|
||||
SHA512 (3proxy-0.7.1.2.tgz) = c7f4e25d2630e8c6c25bbc09a5f9f201448d57a85d404cd1f6304946d9a31083845bd8d481f610fe1cd1f56be349eb774cdae135430efcfdd1952a0403d01735
|
||||
Size (3proxy-0.7.1.2.tgz) = 478532 bytes
|
||||
SHA1 (patch-aa) = ac13f04cff2fa0b0adea6306d9f645ff26452daa
|
||||
SHA1 (patch-ab) = de12687ae56ed8107259a4bc3ca04705b97b7bc8
|
||||
SHA1 (patch-ac) = 3b8479dd2cf736a87e618128e91f402611178236
|
||||
SHA1 (patch-ad) = bce24c6e2e071196d8fd0715e11f4c68144150c5
|
||||
SHA1 (patch-ae) = 1f3b07a3c2a1d9729043bcee7b359c98644e8257
|
||||
SHA1 (3proxy-0.8.11.tgz) = 0bef5462e558db2d86cce92f8dc916b494dd7bde
|
||||
RMD160 (3proxy-0.8.11.tgz) = 19f0d2903dcad680f5442a49d962cac1f874cae4
|
||||
SHA512 (3proxy-0.8.11.tgz) = 4160684892292a0c4666f8b8f3bdba0c0846842816ef4f6d0ce7286b520a3cda2ceee76580d2e61942afb9404a8ad93aa0260043acd4ffbfc1c38b3e31857c67
|
||||
Size (3proxy-0.8.11.tgz) = 511157 bytes
|
||||
SHA1 (patch-ab) = 3ad025c8577f1494d6949efcd5bf104672027a0d
|
||||
SHA1 (patch-ac) = e4e4a005e815c7cd353103bbcbbfdb849d637517
|
||||
SHA1 (patch-ad) = 8081f363dbf0232e5d1db1bc5e09f93ac7cfe95b
|
||||
SHA1 (patch-ae) = 467ad84a16ee806da1bbc3d297434bd31a25bb27
|
||||
SHA1 (patch-cfg_3proxy.cfg.sample) = c8db82b11704547ec26c67059e71231c5b667135
|
||||
SHA1 (patch-Makefile.unix) = bcaf278e55d954ecc758a0f01c7e35f8d7a7fca2
|
||||
|
|
18
net/3proxy/files/threeproxy.sh
Normal file
18
net/3proxy/files/threeproxy.sh
Normal file
|
@ -0,0 +1,18 @@
|
|||
#!@RCD_SCRIPTS_SHELL@
|
||||
#
|
||||
# $NetBSD: threeproxy.sh,v 1.1 2018/02/19 21:25:46 triaxx Exp $
|
||||
#
|
||||
|
||||
# PROVIDE: threeproxy
|
||||
# REQUIRE: DAEMON LOGIN
|
||||
|
||||
. /etc/rc.subr
|
||||
|
||||
name="threeproxy"
|
||||
rcvar=$name
|
||||
command="@PREFIX@/sbin/3proxy"
|
||||
command_args="@PKG_SYSCONFDIR@/3proxy/3proxy.cfg"
|
||||
required_files="@PKG_SYSCONFDIR@/3proxy/3proxy.cfg"
|
||||
|
||||
load_rc_config $name
|
||||
run_rc_command "$1"
|
32
net/3proxy/patches/patch-Makefile.unix
Normal file
32
net/3proxy/patches/patch-Makefile.unix
Normal file
|
@ -0,0 +1,32 @@
|
|||
$NetBSD: patch-Makefile.unix,v 1.1 2018/02/19 21:25:46 triaxx Exp $
|
||||
|
||||
Fix Makefile inconsistency
|
||||
|
||||
From FreeBSD ports
|
||||
|
||||
--- Makefile.unix.orig 2017-10-19 14:25:42.000000000 +0000
|
||||
+++ Makefile.unix
|
||||
@@ -8,18 +8,18 @@
|
||||
# library support. Add -DSAFESQL for poorely written ODBC library / drivers.
|
||||
|
||||
BUILDDIR =
|
||||
-CC = gcc
|
||||
+CC ?= gcc
|
||||
|
||||
# you may need -L/usr/pkg/lib for older NetBSD versions
|
||||
-CFLAGS = -g -O2 -c -pthread -D_THREAD_SAFE -D_REENTRANT -DNOODBC -DWITH_STD_MALLOC -DFD_SETSIZE=4096 -DWITH_POLL
|
||||
+CFLAGS = -c -O2 -pipe -fstack-protector -fno-strict-aliasing -DNOODBC -DWITH_STD_MALLOC -DFD_SETSIZE=4096 -DWITH_POLL
|
||||
COUT = -o
|
||||
-LN = gcc
|
||||
-LDFLAGS = -O2 -pthread
|
||||
+LN = ${CC}
|
||||
+LDFLAGS = -pthread
|
||||
# -lpthreads may be reuqired on some platforms instead of -pthreads
|
||||
# -ldl or -lld may be required for some platforms
|
||||
DCFLAGS = -fpic
|
||||
DLFLAGS = -shared
|
||||
-DLSUFFICS = .ld.so
|
||||
+DLSUFFICS = .so
|
||||
LIBS =
|
||||
LIBSPREFIX = -l
|
||||
LIBSSUFFIX =
|
|
@ -1,4 +1,6 @@
|
|||
$NetBSD: patch-ab,v 1.2 2015/04/06 02:26:53 rodent Exp $
|
||||
$NetBSD: patch-ab,v 1.3 2018/02/19 21:25:46 triaxx Exp $
|
||||
|
||||
Compliance with toupper() documentation.
|
||||
|
||||
--- src/ntlm.c.orig 2015-02-17 13:07:21.000000000 +0000
|
||||
+++ src/ntlm.c
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
$NetBSD: patch-ac,v 1.2 2015/04/06 02:26:53 rodent Exp $
|
||||
$NetBSD: patch-ac,v 1.3 2018/02/19 21:25:46 triaxx Exp $
|
||||
|
||||
Compliance with isspace() documentation.
|
||||
|
||||
--- src/webadmin.c.orig 2015-02-17 13:07:21.000000000 +0000
|
||||
+++ src/webadmin.c
|
||||
|
|
|
@ -1,10 +1,13 @@
|
|||
$NetBSD: patch-ad,v 1.2 2015/04/06 02:26:53 rodent Exp $
|
||||
$NetBSD: patch-ad,v 1.3 2018/02/19 21:25:46 triaxx Exp $
|
||||
|
||||
--- src/common.c.orig 2015-02-17 13:07:20.000000000 +0000
|
||||
Calling usleep for 1000000 microseconds or more is not allowed, so add a
|
||||
myusleep() wrapper to DTRT.
|
||||
|
||||
--- src/common.c.orig 2017-10-19 14:31:30.000000000 +0000
|
||||
+++ src/common.c
|
||||
@@ -719,3 +719,21 @@ unsigned long getip(unsigned char *name)
|
||||
@@ -881,3 +881,21 @@ unsigned long getip46(int family, unsign
|
||||
return 0;
|
||||
#endif
|
||||
return retval;
|
||||
}
|
||||
+
|
||||
+/*
|
||||
|
|
|
@ -1,8 +1,12 @@
|
|||
$NetBSD: patch-ae,v 1.3 2016/07/08 15:55:24 rillig Exp $
|
||||
$NetBSD: patch-ae,v 1.4 2018/02/19 21:25:46 triaxx Exp $
|
||||
|
||||
--- src/proxy.h.orig 2015-02-17 13:07:21.000000000 +0000
|
||||
Fix build on OpenBSD and Bitrig.
|
||||
Calling usleep for 1000000 microseconds or more is not allowed, so add a
|
||||
myusleep() wrapper to DTRT.
|
||||
|
||||
--- src/proxy.h.orig 2017-10-19 14:25:44.000000000 +0000
|
||||
+++ src/proxy.h
|
||||
@@ -22,7 +22,9 @@
|
||||
@@ -21,7 +21,9 @@
|
||||
#include <ctype.h>
|
||||
#include <sys/types.h>
|
||||
#include <sys/stat.h>
|
||||
|
@ -12,9 +16,9 @@ $NetBSD: patch-ae,v 1.3 2016/07/08 15:55:24 rillig Exp $
|
|||
#include <fcntl.h>
|
||||
#include <time.h>
|
||||
|
||||
@@ -101,6 +103,8 @@
|
||||
@@ -107,6 +109,8 @@
|
||||
#endif
|
||||
#define daemonize() daemon(1,1)
|
||||
void daemonize(void);
|
||||
#define SLEEPTIME 1000
|
||||
+#define usleep(usecs) myusleep(usecs)
|
||||
+int myusleep(useconds_t);
|
||||
|
|
50
net/3proxy/patches/patch-cfg_3proxy.cfg.sample
Normal file
50
net/3proxy/patches/patch-cfg_3proxy.cfg.sample
Normal file
|
@ -0,0 +1,50 @@
|
|||
$NetBSD: patch-cfg_3proxy.cfg.sample,v 1.1 2018/02/19 21:25:46 triaxx Exp $
|
||||
|
||||
Adjust PATH according to pkgsrc defined directories.
|
||||
|
||||
--- cfg/3proxy.cfg.sample.orig 2017-10-19 14:53:32.000000000 +0000
|
||||
+++ cfg/3proxy.cfg.sample
|
||||
@@ -1,7 +1,7 @@
|
||||
-#!/usr/local/bin/3proxy
|
||||
+#!@PREFIX@/bin/3proxy
|
||||
# Yes, 3proxy.cfg can be executable, in this case you should place
|
||||
# something like
|
||||
-#config /usr/local/3proxy/3proxy.cfg
|
||||
+#config @PKG_SYSCONFDIR@/3proxy/3proxy.cfg
|
||||
# to show which configuration 3proxy should re-read on realod.
|
||||
|
||||
#system "echo Hello world!"
|
||||
@@ -26,19 +26,19 @@ timeouts 1 5 30 60 180 1800 15 60
|
||||
users 3APA3A:CL:3apa3a "test:CR:$1$qwer$CHFTUFGqkjue9HyhcMHEe1"
|
||||
# note that "" required, overvise $... is treated as include file name.
|
||||
# $1$qwer$CHFTUFGqkjue9HyhcMHEe1 is 'test' in MD5 crypt format.
|
||||
-#users $/usr/local/etc/3proxy/passwd
|
||||
+#users $@PKG_SYSCONFDIR@/etc/3proxy/passwd
|
||||
# this example shows you how to include passwd file. For included files
|
||||
# <CR> and <LF> are treated as field separators.
|
||||
|
||||
-#daemon
|
||||
+daemon
|
||||
# now we will not depend on any console (daemonize). daemon must be given
|
||||
# before any significant command on *nix.
|
||||
|
||||
-service
|
||||
+#service
|
||||
# service is required under NT if you want 3proxy to start as service
|
||||
|
||||
-#log /var/log/3proxy/log D
|
||||
-log c:\3proxy\logs\3proxy.log D
|
||||
+log @VARBASE@/log/3proxy/log D
|
||||
+#log c:\3proxy\logs\3proxy.log D
|
||||
# log allows to specify log file location and rotation, D means logfile
|
||||
# is created daily
|
||||
|
||||
@@ -193,7 +193,7 @@ admin
|
||||
#tcppm 443 websrv 443
|
||||
|
||||
|
||||
-#chroot /usr/local/jail
|
||||
+#chroot @VARBASE@/chroot/3proxy
|
||||
#setgid 65535
|
||||
#setuid 65535
|
||||
# now we needn't any root rights. We can chroot and setgid/setuid.
|
Loading…
Reference in a new issue