pkgsrc-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[pkgsrc/trunk]: pkgsrc/net/3proxy 3proxy: Update to 0.9.4
details: https://anonhg.NetBSD.org/pkgsrc/rev/a46f4578577a
branches: trunk
changeset: 388891:a46f4578577a
user: triaxx <triaxx%pkgsrc.org@localhost>
date: Sun Nov 27 13:14:00 2022 +0000
description:
3proxy: Update to 0.9.4
pkgsrc changes:
---------------
* Update the license to 3proxy-0.9-license.
* Remove outdated comments about the old licenses.
upstream changes:
-----------------
3proxy-0.9.4 Latest
! Fix: invalid handling of '-' character in ACL hostname
! Fix: minor bugfixes and improvements
+ parentretry command added (defaults to 2) to retry connections to parent
proxies
- icqpr related code (OSCAR proxy) removed, due to drop of OSCAR support by
messengers
3proxy-0.9.3
Bugfixes:
Fixed: systemd description file (proxy may fail to start after reboot or via
systemctl)
Fixed: group/account creation in installation scripts
Fixed: countall/nocounall do not work in some configurations
Fixed: counters do not work if counter file is not specified
Fixed: counters without rotation (type N) are incorrectly shown in web admin
interface
Fixed: %n may be incomplete or missed in long log records
Fixed: connect back functionality does not work
Improvements:
+ Docker builds
3proxy-0.9.2
Bugfixes:
Fixed: bandwidth limiters (once again)
Fixed: data filtering plugins (PCREPlugin, SSLPlugin). SSLPlugin use on Linux
requires to disable splice (-s0)
FIxed: standalone proxies do not react on HUP (Ctrl+C) in Linux/Unix
Fixed: few minor bugs
Improvements:
+ deb for arm platforms (experimental)
+ Openssl 1.1 support for SSLPlugin
3proxy-0.9.1
Bugfixes:
Fixed: socket may be closed before all data received/sent
Fixed: bandlimin non-working
Fixed: countall/nocountall
Fixed: few race conditions
Improvements:
deb/rpm build, systemd support (experimental)
3proxy-0.9.0
o Socket options, interface binding
o Connection limiting / connection rate limiting
o RADIUS support (beta)
o Zero copy (splice) support for Linux
o Possibility to limit user to single IP (via authentication cache)
bugfixes, improvements
3proxy-0.8.13
Bugfixes:
!! Fixed out-of-bound write and few minor bugs on configuration saving in admin
! fixed: $ is not correctly handled in the beginning of quoted line on configuration parsing
3proxy-0.8.12
Bugfixes:
! Fixed hostname support in SOCKSv5 UDP portmapping
! -fno-strict-aliasing added to gcc options (compiling without this option
can lead to unpredictable issues under Debian with gcc 6 and potentially
others)
! Fixed LDAP plugin compilation issues (LDAP plugin is still listed as
unsupported though) and some minor fixes and improvements.
diffstat:
net/3proxy/Makefile | 18 +-
net/3proxy/distinfo | 27 +-
net/3proxy/patches/patch-Makefile.unix | 49 ++--
net/3proxy/patches/patch-ab | 22 +-
net/3proxy/patches/patch-ac | 65 +++---
net/3proxy/patches/patch-ad | 48 ++--
net/3proxy/patches/patch-ae | 42 ++--
net/3proxy/patches/patch-cfg_3proxy.cfg.sample | 86 +++++-----
net/3proxy/patches/patch-man_3proxy.8 | 36 ++--
net/3proxy/patches/patch-man_3proxy.cfg.3 | 20 +-
net/3proxy/patches/patch-src_plugins_PamAuth_pamauth.c | 15 +
net/3proxy/patches/patch-src_plugins_TransparentPlugin_transparent__plugin.c | 15 +
net/3proxy/patches/patch-src_version.h | 22 ++
13 files changed, 256 insertions(+), 209 deletions(-)
diffs (truncated from 584 to 300 lines):
diff -r c294cd58ae9f -r a46f4578577a net/3proxy/Makefile
--- a/net/3proxy/Makefile Sun Nov 27 12:09:52 2022 +0000
+++ b/net/3proxy/Makefile Sun Nov 27 13:14:00 2022 +0000
@@ -1,27 +1,19 @@
-# $NetBSD: Makefile,v 1.13 2018/02/21 15:20:04 triaxx Exp $
-#
+# $NetBSD: Makefile,v 1.14 2022/11/27 13:14:00 triaxx Exp $
-DISTNAME= 3proxy-0.8.11
+DISTNAME= 3proxy-0.9.4
CATEGORIES= net
-MASTER_SITES= https://3proxy.ru/${DISTNAME:S/3proxy-//}/
-EXTRACT_SUFX= .tgz
+MASTER_SITES= ${MASTER_SITE_GITHUB:=3proxy/}
MAINTAINER= pkgsrc-users%NetBSD.org@localhost
HOMEPAGE= https://3proxy.ru/
COMMENT= Multi-protocol proxy
-# 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.
-# 3proxy-0.7-license is now inspired by BSD license.
-LICENSE= 3proxy-0.7-license
+LICENSE= 3proxy-0.9-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}
@@ -42,7 +34,7 @@
# install the HTML pages, because they provide no more information than
# the man pages.
do-install:
- ${INSTALL_PROGRAM} ${WRKSRC}/src/3proxy ${DESTDIR}${PREFIX}/sbin/.
+ ${INSTALL_PROGRAM} ${WRKSRC}/bin/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
diff -r c294cd58ae9f -r a46f4578577a net/3proxy/distinfo
--- a/net/3proxy/distinfo Sun Nov 27 12:09:52 2022 +0000
+++ b/net/3proxy/distinfo Sun Nov 27 13:14:00 2022 +0000
@@ -1,13 +1,16 @@
-$NetBSD: distinfo,v 1.10 2021/10/26 11:05:20 nia Exp $
+$NetBSD: distinfo,v 1.11 2022/11/27 13:14:00 triaxx Exp $
-BLAKE2s (3proxy-0.8.11.tgz) = 21fc38274deb19257b08a6b67bc3d2711567b2d728416c5d6f3ea73009b4e72e
-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) = 841eb478bd5ca09bd19364d61dcd963b7a15c790
-SHA1 (patch-Makefile.unix) = bcaf278e55d954ecc758a0f01c7e35f8d7a7fca2
-SHA1 (patch-man_3proxy.8) = ea00a3c99c201fc87efb1270bfaab13a4e2f9c75
-SHA1 (patch-man_3proxy.cfg.3) = 52fb754e7241c10612e13bca66127072732b56f1
+BLAKE2s (3proxy-0.9.4.tar.gz) = e207319dbc7b88cac0779ab51f177bfa098392c261ab6594417e03fced40c657
+SHA512 (3proxy-0.9.4.tar.gz) = d3316f6ee1217e580ce593a7bfd9d76672487a89862f247373b0acf3ea207887c758168e33b25db9fc974063deab0826c20d455cab2536d03eee49d8bddda6b5
+Size (3proxy-0.9.4.tar.gz) = 610340 bytes
+SHA1 (patch-Makefile.unix) = aabfa5ad7985ddf8b1240e65bc00c86837d844b0
+SHA1 (patch-ab) = 097103e06e576d6e4ad1830122ab6f4d9ed32a3b
+SHA1 (patch-ac) = a68b7949b22a250b7ed223c7790d420fa7ab624c
+SHA1 (patch-ad) = 625c35af17d4d23203e550f8f7e293175b11813f
+SHA1 (patch-ae) = 9ef8ce232d10603527fcc77cc266a2557e8ec2a3
+SHA1 (patch-cfg_3proxy.cfg.sample) = 7b113b9494ca80d613fb53bde02df0b9e3a40584
+SHA1 (patch-man_3proxy.8) = 69a64574e4b1f543ccd4e90bead39740a638b0f4
+SHA1 (patch-man_3proxy.cfg.3) = 3b650436821b1c0cab72a94c1ca245295c5bfba6
+SHA1 (patch-src_plugins_PamAuth_pamauth.c) = 97674438898ddc9ea7cce9a7da303e378d50bcdf
+SHA1 (patch-src_plugins_TransparentPlugin_transparent__plugin.c) = 1176f14c05443c5bcaaa8a36f68701d8446c6997
+SHA1 (patch-src_version.h) = 774543930f3d64240907a1b1dd798372a09e6362
diff -r c294cd58ae9f -r a46f4578577a net/3proxy/patches/patch-Makefile.unix
--- a/net/3proxy/patches/patch-Makefile.unix Sun Nov 27 12:09:52 2022 +0000
+++ b/net/3proxy/patches/patch-Makefile.unix Sun Nov 27 13:14:00 2022 +0000
@@ -1,32 +1,31 @@
-$NetBSD: patch-Makefile.unix,v 1.1 2018/02/19 21:25:46 triaxx Exp $
+$NetBSD: patch-Makefile.unix,v 1.2 2022/11/27 13:14:00 triaxx Exp $
Fix Makefile inconsistency
From FreeBSD ports
---- Makefile.unix.orig 2017-10-19 14:25:42.000000000 +0000
+--- Makefile.unix.orig 2021-07-01 16:59:57.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 =
+ # library support. Add -DSAFESQL for poorely written ODBC library / drivers.
+
+ BUILDDIR = ../bin/
+-CC = gcc
++CC ?= gcc
+
+ # you may need -L/usr/pkg/lib for older NetBSD versions
+-CFLAGS = -g -O2 -fno-strict-aliasing -c -pthread -D_THREAD_SAFE -D_REENTRANT -DNOODBC -DWITH_STD_MALLOC -DFD_SETSIZE=4096 -DWITH_POLL
++CFLAGS = -c -O2 -fstack-protector -fno-strict-aliasing -c -pthread -D_THREAD_SAFE -D_REENTRANT -DNOODBC -DWITH_STD_MALLOC -DFD_SETSIZE=4096 -DWITH_POLL
+ COUT = -o
+ LN = $(CC)
+-LDFLAGS = -O2 -fno-strict-aliasing -pthread
++LDFLAGS = -fstack-protector -fno-strict-aliasing -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 =
diff -r c294cd58ae9f -r a46f4578577a net/3proxy/patches/patch-ab
--- a/net/3proxy/patches/patch-ab Sun Nov 27 12:09:52 2022 +0000
+++ b/net/3proxy/patches/patch-ab Sun Nov 27 13:14:00 2022 +0000
@@ -1,15 +1,15 @@
-$NetBSD: patch-ab,v 1.3 2018/02/19 21:25:46 triaxx Exp $
+$NetBSD: patch-ab,v 1.4 2022/11/27 13:14:00 triaxx Exp $
Compliance with toupper() documentation.
---- src/ntlm.c.orig 2015-02-17 13:07:21.000000000 +0000
+--- src/ntlm.c.orig 2021-07-01 16:59:57.000000000 +0000
+++ 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;
+@@ -42,7 +42,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 -r c294cd58ae9f -r a46f4578577a net/3proxy/patches/patch-ac
--- a/net/3proxy/patches/patch-ac Sun Nov 27 12:09:52 2022 +0000
+++ b/net/3proxy/patches/patch-ac Sun Nov 27 13:14:00 2022 +0000
@@ -1,36 +1,37 @@
-$NetBSD: patch-ac,v 1.3 2018/02/19 21:25:46 triaxx Exp $
+$NetBSD: patch-ac,v 1.4 2022/11/27 13:14:00 triaxx Exp $
Compliance with isspace() documentation.
---- src/webadmin.c.orig 2015-02-17 13:07:21.000000000 +0000
+--- src/webadmin.c.orig 2021-07-01 16:59:57.000000000 +0000
+++ src/webadmin.c
-@@ -375,12 +375,12 @@ void * adminchild(struct clientparam* pa
- 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;
-@@ -396,12 +396,12 @@ void * adminchild(struct clientparam* pa
- }
- 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;
- }
- }
+@@ -403,12 +403,12 @@ void * adminchild(struct clientparam* pa
+ 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;
+@@ -424,13 +424,13 @@ void * adminchild(struct clientparam* pa
+ }
+ else if(i > 15 && (!strncasecmp(buf, "content-length:", 15))){
+ sb = buf + 15;
+- while(isspace(*sb))sb++;
++ while(isspace((unsigned char)*sb))sb++;
+ sscanf(sb, "%u", &contentlen);
+ if(contentlen > LINESIZE*1024) contentlen = 0;
+ }
+ 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;
+ }
+ }
diff -r c294cd58ae9f -r a46f4578577a net/3proxy/patches/patch-ad
--- a/net/3proxy/patches/patch-ad Sun Nov 27 12:09:52 2022 +0000
+++ b/net/3proxy/patches/patch-ad Sun Nov 27 13:14:00 2022 +0000
@@ -1,29 +1,29 @@
-$NetBSD: patch-ad,v 1.3 2018/02/19 21:25:46 triaxx Exp $
+$NetBSD: patch-ad,v 1.4 2022/11/27 13:14:00 triaxx Exp $
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.orig 2021-07-01 16:59:57.000000000 +0000
+++ src/common.c
-@@ -881,3 +881,21 @@ unsigned long getip46(int family, unsign
- return 0;
- #endif
- }
-+
-+/*
-+ * POSIX says:
-+ * The usleep() function may fail if:
-+ * [EINVAL] The time interval specified one million or more microseconds.
-+ *
-+ * Other code in 3proxy calls usleep with much larger arguments, but
-+ * that gets redirected here via "#define usleep(usecs) myusleep(usecs)"
-+ * in proxy.h. We call sleep() for any whole number of seconds, and
-+ * the real usleep() for any left over microseconds.
-+ */
-+int myusleep(useconds_t useconds)
-+{
-+ unsigned int secs = useconds / 1000000;
-+ useconds = useconds % 1000000;
-+ if (secs > 0) sleep(secs);
-+ return (usleep)(useconds);
-+}
+@@ -632,3 +632,21 @@ unsigned long getip46(int family, unsign
+ return 0;
+ #endif
+ }
++
++/*
++ * POSIX says:
++ * The usleep() function may fail if:
++ * [EINVAL] The time interval specified one million or more microseconds.
++ *
++ * Other code in 3proxy calls usleep with much larger arguments, but
++ * that gets redirected here via "#define usleep(usecs) myusleep(usecs)"
++ * in proxy.h. We call sleep() for any whole number of seconds, and
++ * the real usleep() for any left over microseconds.
++ */
++int myusleep(useconds_t useconds)
++{
++ unsigned int secs = useconds / 1000000;
++ useconds = useconds % 1000000;
++ if (secs > 0) sleep(secs);
++ return (usleep)(useconds);
++}
diff -r c294cd58ae9f -r a46f4578577a net/3proxy/patches/patch-ae
--- a/net/3proxy/patches/patch-ae Sun Nov 27 12:09:52 2022 +0000
+++ b/net/3proxy/patches/patch-ae Sun Nov 27 13:14:00 2022 +0000
@@ -1,27 +1,27 @@
Home |
Main Index |
Thread Index |
Old Index