git: f001878b3e06 - main - net/sslh: update to 1.22c

From: Marius Strobl <marius_at_FreeBSD.org>
Date: Wed, 26 Jan 2022 07:37:02 UTC
The branch main has been updated by marius:

URL: https://cgit.FreeBSD.org/ports/commit/?id=f001878b3e063b2ceb70c31afeec232960fbc061

commit f001878b3e063b2ceb70c31afeec232960fbc061
Author:     Marius Strobl <marius@FreeBSD.org>
AuthorDate: 2022-01-09 19:12:21 +0000
Commit:     Marius Strobl <marius@FreeBSD.org>
CommitDate: 2022-01-26 07:36:39 +0000

    net/sslh: update to 1.22c
    
    Most notably, sslh now supports UDP and, thus, QUIC and Teamspeak.
    For the release announcement see:
    https://lists.rutschle.net/mailman/archives/sslh/2021-August/000744.html
    
    While at it:
    - Give the sample configuration file @sample treatment.
    - Install all remaining example configuration files as EXAMPLES.
    - Make the EXAMPLES knob actually work as intended by not installing
      corresponding files when it's off.
    - Refresh pkg-descr.
    
    PR:             261067
    Approved by:    maintainer timeout
---
 net/sslh/Makefile  | 27 +++++++++++----------------
 net/sslh/distinfo  |  6 +++---
 net/sslh/pkg-descr | 23 +++++++++++++++++++----
 3 files changed, 33 insertions(+), 23 deletions(-)

diff --git a/net/sslh/Makefile b/net/sslh/Makefile
index 7e4c91b526fd..7d5abec5527e 100644
--- a/net/sslh/Makefile
+++ b/net/sslh/Makefile
@@ -1,7 +1,7 @@
 # Created by: Jui-Nan Lin <jnlin@csie.nctu.edu.tw>
 
 PORTNAME=	sslh
-PORTVERSION=	1.21c
+PORTVERSION=	1.22c
 DISTVERSIONPREFIX=	v
 CATEGORIES=	net
 
@@ -12,36 +12,29 @@ LICENSE=	GPLv2
 LICENSE_FILE=	${WRKSRC}/COPYING
 
 LIB_DEPENDS=	libconfig.so:devel/libconfig \
-		libpcre.so:devel/pcre
-
-USES=		gmake perl5
-USE_PERL5=	build
+		libpcre2-8.so:devel/pcre2
 
+USES=		gmake
+USE_RC_SUBR=	sslh
 USE_GITHUB=	yes
 GH_ACCOUNT=	yrutschle
 
 OPTIONS_DEFINE=	EXAMPLES LIBWRAP
-OPTIONS_DEFAULT=	LIBWRAP
+OPTIONS_DEFAULT=LIBWRAP
+
+LIBWRAP_MAKE_ENV=	USELIBWRAP=1
 
 CFLAGS+=	-I${LOCALBASE}/include
 LDFLAGS+=	-L${LOCALBASE}/lib
 
 PLIST_FILES=	sbin/sslh-fork \
 		sbin/sslh-select \
-		etc/sslh.conf.sample \
+		"@sample etc/sslh.conf.sample" \
 		man/man8/sslh.8.gz
 
-USE_RC_SUBR=	sslh
-
-PORTEXAMPLES=	example.cfg
-
-MAKE_JOBS_UNSAFE=	yes
-
-LIBWRAP_MAKE_ENV=	USELIBWRAP=1
+PORTEXAMPLES=	example.cfg test.cfg udp.cfg
 
 post-patch:
-	@${REINPLACE_CMD} -Ee 's,^(release=)$$,\1${PORTVERSION},' \
-		${WRKSRC}/genver.sh
 	@${REINPLACE_CMD} -Ee 's,/etc/init.d/(sslh),${PREFIX}/etc/rc.d/\1,g; \
 		s,/etc/default/(sslh),${PREFIX}/etc/\1.conf,g' \
 		${WRKSRC}/sslh.pod
@@ -52,6 +45,8 @@ do-install:
 	${INSTALL_DATA} ${WRKSRC}/basic.cfg \
 		${STAGEDIR}${PREFIX}/etc/${PORTNAME}.conf.sample
 	${INSTALL_MAN} ${WRKSRC}/sslh.8.gz ${STAGEDIR}${MANPREFIX}/man/man8
+
+do-install-EXAMPLES-on:
 	@${MKDIR} ${STAGEDIR}${EXAMPLESDIR}
 	${INSTALL_DATA} ${PORTEXAMPLES:S,^,${WRKSRC}/,} \
 		${STAGEDIR}${EXAMPLESDIR}/
diff --git a/net/sslh/distinfo b/net/sslh/distinfo
index 79be7ae47d55..3916f5c1905b 100644
--- a/net/sslh/distinfo
+++ b/net/sslh/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1596492623
-SHA256 (yrutschle-sslh-v1.21c_GH0.tar.gz) = 2e457e59592f8e523cade8d9302b0fdc87f8ea0322beb674dd7f067547a93ea9
-SIZE (yrutschle-sslh-v1.21c_GH0.tar.gz) = 111895
+TIMESTAMP = 1641747765
+SHA256 (yrutschle-sslh-v1.22c_GH0.tar.gz) = ec5f6998f90b2849d113f2617db7ceca5281fbe4ef55fcd185789d390c09eb04
+SIZE (yrutschle-sslh-v1.22c_GH0.tar.gz) = 146954
diff --git a/net/sslh/pkg-descr b/net/sslh/pkg-descr
index dae85d1109a1..c7177fc38ccd 100644
--- a/net/sslh/pkg-descr
+++ b/net/sslh/pkg-descr
@@ -1,5 +1,20 @@
-sslh accepts HTTPS, SSH, OpenVPN, tinc and XMPP connections on the same port.
-This makes it possible to connect to any of these servers on port 443 while
-still serving HTTPS on that port.
+sslh accepts connections on specified ports, and forwards them further based
+on tests performed on the first data packet sent by the remote client.
 
-WWW: http://www.rutschle.net/tech/sslh.shtml
+Probes for HTTP, TLS/SSL (including SNI and ALPN), SSH, OpenVPN, tinc, XMPP,
+SOCKS5, are implemented, and any other protocol that can be tested using a
+regular expression, can be recognised. A typical use case is to allow serving
+several services on port 443 (e.g. to connect to SSH from inside a corporate
+firewall, which almost never block port 443) while still serving HTTPS on
+that port.
+
+Hence sslh acts as a protocol demultiplexer, or a switchboard. With the SNI
+and ALPN probe, it makes a good front-end to a virtual host farm hosted
+behind a single IP address.
+
+sslh has the bells and whistles expected from a mature daemon: privilege and
+capabilities dropping, inetd support, systemd support, transparent proxying,
+chroot, logging, IPv4 and IPv6, TCP and UDP, a fork-based and a select-based
+model, and more.
+
+WWW: https://www.rutschle.net/tech/sslh.shtml