Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 2 Dec 2011 14:42:35 GMT
From:      Olivier Cochard-Labbe <olivier@cochard.me>
To:        freebsd-gnats-submit@FreeBSD.org
Subject:   ports/163019: [net/sslh] Upgrade to 1.10 and asking for maintenership
Message-ID:  <201112021442.pB2EgZ28056818@red.freebsd.org>
Resent-Message-ID: <201112021450.pB2Eo5Im084776@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         163019
>Category:       ports
>Synopsis:       [net/sslh] Upgrade to 1.10 and asking for maintenership
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Fri Dec 02 14:50:05 UTC 2011
>Closed-Date:
>Last-Modified:
>Originator:     Olivier Cochard-Labbe
>Release:        9.0-RC2
>Organization:
BSD Router Project
>Environment:
FreeBSD bigdev.bsdrp.net 9.0-RC2 FreeBSD 9.0-RC2 #0: Fri Nov 25 03:24:28 CET 2011     root@bigdev.bsdrp.net:/usr/obj/usr/src/sys/GENERIC  amd64
>Description:
Hi,
here is an update of net/sslh to latest 1.10 (add OpenVPN, tinc and XMPP connections multiplexing in SSL).
I would to take the maintenership of this port too.

Regards,

Olivier
>How-To-Repeat:

>Fix:


Patch attached with submission follows:

diff -ruN sslh.old/Makefile sslh/Makefile
--- sslh.old/Makefile	2011-12-02 11:55:40.000000000 +0100
+++ sslh/Makefile	2011-12-02 14:33:46.000000000 +0100
@@ -2,12 +2,11 @@
 # Date created:		2010-03-29
 # Whom:			Jui-Nan Lin <jnlin@csie.nctu.edu.tw>
 #
-# $FreeBSD: ports/net/sslh/Makefile,v 1.3 2010/11/15 16:20:06 sunpoet Exp $
+# $FreeBSD$
 #
 
 PORTNAME=	sslh
-PORTVERSION=	1.7a
-PORTREVISION=	1
+PORTVERSION=	1.10
 CATEGORIES=	net
 MASTER_SITES=	http://www.rutschle.net/tech/
 
@@ -20,15 +19,20 @@
 .if !defined(NO_INSTALL_MANPAGES)
 MAN8=		sslh.8
 .endif
-PLIST_FILES=	sbin/sslh
 
 USE_RC_SUBR=	sslh
 
+VARDIR=		/var
+PLIST_SUB=	VARDIR=${VARDIR}
+
 post-patch:
 	@${REINPLACE_CMD} -e 's|^PREFIX=/usr/local|PREFIX=${PREFIX}|g' ${WRKSRC}/Makefile
 
 do-install:
-	@${INSTALL_PROGRAM} ${WRKSRC}/sslh ${PREFIX}/sbin
+	@${INSTALL_PROGRAM} ${WRKSRC}/sslh-fork ${PREFIX}/sbin
+	@${INSTALL_PROGRAM} ${WRKSRC}/sslh-select ${PREFIX}/sbin
+	@${MKDIR} ${VARDIR}/run/${PORTNAME}
+	@${CHOWN} -R nobody:nobody ${VARDIR}/run/${PORTNAME}
 .if !defined(NO_INSTALL_MANPAGES)
 	@${INSTALL_MAN} ${WRKSRC}/sslh.8 ${MANPREFIX}/man/man8
 .endif
diff -ruN sslh.old/distinfo sslh/distinfo
--- sslh.old/distinfo	2011-12-02 11:55:40.000000000 +0100
+++ sslh/distinfo	2011-12-02 11:55:49.000000000 +0100
@@ -1,2 +1,2 @@
-SHA256 (sslh-1.7a.tar.gz) = add698342ea622e5085a26f05e4ec613763f71ff203202cadfa119a45659e13a
-SIZE (sslh-1.7a.tar.gz) = 9733
+SHA256 (sslh-1.10.tar.gz) = 5554e42969a00955048b45d3d269785bbd0211d4fb2b4cf5e79503b592695771
+SIZE (sslh-1.10.tar.gz) = 25293
diff -ruN sslh.old/files/patch-Makefile sslh/files/patch-Makefile
--- sslh.old/files/patch-Makefile	2011-12-02 11:55:40.000000000 +0100
+++ sslh/files/patch-Makefile	2011-12-02 11:55:49.000000000 +0100
@@ -1,7 +1,7 @@
---- Makefile	2010-02-01 19:18:23.000000000 +0800
-+++ Makefile.new	2010-03-29 00:43:42.198577686 +0800
-@@ -4,7 +4,7 @@
- USELIBWRAP=1	# Use libwrap?
+--- Makefile.old	2011-12-02 10:16:46.000000000 +0000
++++ Makefile	2011-12-02 10:18:04.000000000 +0000
+@@ -5,7 +5,7 @@
+ COV_TEST= 	# Perform test coverage?
  PREFIX=/usr/local
  
 -MAN=sslh.8.gz	# man page name
@@ -9,8 +9,8 @@
  
  # End of configuration -- the rest should take care of
  # itself
-@@ -27,7 +27,7 @@
- 	strip sslh
+@@ -46,7 +46,7 @@
+ 	$(CC) $(CFLAGS) -o echosrv echosrv.o common.o $(LIBS)
  
  $(MAN): sslh.pod Makefile
 -	pod2man --section=8 --release=$(VERSION) --center=" " sslh.pod | gzip -9 - > $(MAN)
diff -ruN sslh.old/files/sslh.in sslh/files/sslh.in
--- sslh.old/files/sslh.in	2011-12-02 11:55:40.000000000 +0100
+++ sslh/files/sslh.in	2011-12-02 15:32:40.000000000 +0100
@@ -1,6 +1,6 @@
 #!/bin/sh
 
-# $FreeBSD: ports/net/sslh/files/sslh.in,v 1.2 2011/05/15 02:49:11 dougb Exp $
+# $FreeBSD$
 #
 # sslh startup script
 #
@@ -14,6 +14,9 @@
 # sslh_enable="YES"
 #
 # You can fine tune others variables too:
+# sslh_mode="fork | select"
+# fork: stable but slow performance
+# select: new but high performance
 # sslh_fib="NONE"
 # sslh_pidfile="/var/run/sslh.pid"
 # sslh_ssltarget="localhost:443"
@@ -40,24 +43,32 @@
 name="sslh"
 rcvar=`set_rcvar`
 
-command="%%PREFIX%%/sbin/${name}"
 start_precmd="sslh_setfib"
+stop_postcmd="sslh_postcmd"
 
 load_rc_config $name
 
 sslh_enable=${sslh_enable:-"NO"}
+sslh_mode=${sslh_mode:-"fork"}
 sslh_fib=${sslh_fib:-"NONE"}
 sslh_listening=${sslh_listening:-"0.0.0.0:443"}
 sslh_sshtarget=${sslh_sshtarget:-"localhost:22"}
 sslh_ssltarget=${sslh_ssltarget:-"localhost:8443"}
-sslh_uid=${sslh_uid:-"nobody"}
 sslh_sshtimeout=${sslh_sshtimeout:-"2"}
-sslh_ssltarget=${sslh_ssltarget:-"localhost:8443"}
-
-pidfile=${sslh_pidfile:-"/var/run/sslh.pid"}
+sslh_openvpntarget=${sslh_openvpntarget:-"localhost:1193"}
+sslh_xmpptarget=${sslh_xmpptarget:-"localhost:5222"}
+sslh_tinctarget=${sslh_tinctarget:-"localhost:655"}
 
+pidfile=${sslh_pidfile:-"/var/run/sslh/sslh.pid"}
+command="%%PREFIX%%/sbin/${name}-${sslh_mode}"
 command_args="-t ${sslh_sshtimeout} -p ${sslh_listening} \
-	-l ${sslh_ssltarget} -s ${sslh_sshtarget} -P ${pidfile} \
-	-u ${sslh_uid}"
+	--ssl ${sslh_ssltarget} --ssh ${sslh_sshtarget} -P ${pidfile} \
+	--user nobody --openvpn ${sslh_openvpntarget} \
+	--xmpp ${sslh_xmpptarget} --tinc ${sslh_tinctarget}"
+
+sslh_postcmd()
+{
+    rm -f ${pidfile}
+}
 
 run_rc_command "$1"
diff -ruN sslh.old/pkg-descr sslh/pkg-descr
--- sslh.old/pkg-descr	2011-12-02 11:55:40.000000000 +0100
+++ sslh/pkg-descr	2011-12-02 11:55:49.000000000 +0100
@@ -1,5 +1,3 @@
-sslh lets one accept both HTTPS and SSH connections on the same port. It makes
-it possible to connect to an SSH server on port 443 (e.g. from inside a
-corporate firewall) while still serving HTTPS on that port.
+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.
 
 WWW:	http://www.rutschle.net/tech/sslh.shtml
diff -ruN sslh.old/pkg-plist sslh/pkg-plist
--- sslh.old/pkg-plist	1970-01-01 01:00:00.000000000 +0100
+++ sslh/pkg-plist	2011-12-02 14:53:18.000000000 +0100
@@ -0,0 +1,5 @@
+sbin/sslh-fork
+sbin/sslh-select
+@exec mkdir -p %%VARDIR%%/run/sslh
+@exec chown nobody:nobody %%VARDIR%%/run/sslh
+@unexec rmdir %%VARDIR%%/run/sslh


>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201112021442.pB2EgZ28056818>