pkgsrc-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

pkg/48320: update net/sslh to version 1.15



>Number:         48320
>Category:       pkg
>Synopsis:       update net/sslh to version 1.15
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    pkg-manager
>State:          open
>Class:          change-request
>Submitter-Id:   net
>Arrival-Date:   Thu Oct 17 15:05:00 +0000 2013
>Originator:     Nils Ratusznik
>Release:        pkgsrc-2013Q3
>Organization:
>Environment:
NetBSD dev.anotherhomepage.org 6.1.2 NetBSD 6.1.2 (XEN3_DOMU) amd64
>Description:
Pkgsrc version of sslh is 1.7a in 2013Q3 and in current, but upstream is 1.15. 
Please note that recent versions of sslh depends on devel/libconfig. For this 
package, an update has been asked in pkg/48316.
>How-To-Repeat:
Look in package source. Look at web page. Note version discrepancy.
>Fix:
Patches are made against pkgsrc-2013Q3 :

Makefile : 
--- Makefile    23 Oct 2012 17:19:10 -0000      1.2
+++ Makefile    17 Oct 2013 14:50:44 -0000
@@ -1,7 +1,7 @@
 # $NetBSD: Makefile,v 1.2 2012/10/23 17:19:10 asau Exp $
 #
 
-DISTNAME=      sslh-1.7a
+DISTNAME=      sslh-1.15
 CATEGORIES=    net
 MASTER_SITES=  http://www.rutschle.net/tech/
 
@@ -10,14 +10,27 @@ HOMEPAGE=   http://www.rutschle.net/tech/s
 COMMENT=       Multiplex ssl and ssh connections on the same port
 LICENSE=       gnu-gpl-v2
 
-USE_TOOLS=     gmake pod2man
+USE_TOOLS+=    gmake pod2man
 USE_LANGUAGES= c
+WRKSRC=                ${WRKDIR}/sslh-1.15
 
-INSTALLATION_DIRS=     sbin ${PKGMANDIR}/man8
+EGDIR=                 ${PREFIX}/share/examples/sslh
+DOCDIR=                        share/doc/sslh
+CONF_FILES=            ${EGDIR}/basic.cfg ${PKG_SYSCONFDIR}/sslh.cfg
+RCD_SCRIPTS=   sslh
+AUTO_MKDIRS=           yes
+INSTALLATION_DIRS+=    sbin ${PKGMANDIR}/man8 ${EGDIR} ${EGDIR}/scripts 
${DOCDIR}
 
 do-install:
-       ${INSTALL_PROGRAM} ${WRKSRC}/sslh ${DESTDIR}${PREFIX}/sbin/.
-       ${INSTALL_MAN} ${WRKSRC}/sslh.8.gz \
-               ${DESTDIR}${PREFIX}/${PKGMANDIR}/man8/.
+       ${INSTALL_PROGRAM} ${WRKSRC}/sslh-fork ${DESTDIR}${PREFIX}/sbin/sslh
+       ${INSTALL_PROGRAM} ${WRKSRC}/sslh-select ${DESTDIR}${PREFIX}/sbin/
+       ${INSTALL_MAN} ${WRKSRC}/sslh.8.gz 
${DESTDIR}${PREFIX}/${PKGMANDIR}/man8/
+       ${INSTALL_DATA} ${WRKSRC}/scripts/* ${DESTDIR}/${EGDIR}/scripts/
+       ${INSTALL_DATA} ${WRKSRC}/example.cfg ${DESTDIR}/${EGDIR}/
+       ${INSTALL_DATA} ${WRKSRC}/basic.cfg ${DESTDIR}/${EGDIR}/
+       ${INSTALL_DATA} ${WRKSRC}/README ${DESTDIR}${PREFIX}/${DOCDIR}
+       ${INSTALL_DATA} ${WRKSRC}/README.MacOSX ${DESTDIR}${PREFIX}/${DOCDIR}
+       ${INSTALL_DATA} ${WRKSRC}/ChangeLog ${DESTDIR}${PREFIX}/${DOCDIR}
 
+.include "../../devel/libconfig/buildlink3.mk"
 .include "../../mk/bsd.pkg.mk"

--- PLIST       31 Jul 2010 17:04:47 -0000      1.1
+++ PLIST       17 Oct 2013 14:51:17 -0000
@@ -1,3 +1,14 @@
-@comment $NetBSD: PLIST,v 1.1 2010/07/31 17:04:47 apb Exp $
-sbin/sslh
+@comment $NetBSD$
 man/man8/sslh.8
+sbin/sslh
+sbin/sslh-select
+share/doc/sslh/ChangeLog
+share/doc/sslh/README
+share/doc/sslh/README.MacOSX
+share/examples/rc.d/sslh
+share/examples/sslh/basic.cfg
+share/examples/sslh/example.cfg
+share/examples/sslh/scripts/etc.default.sslh
+share/examples/sslh/scripts/etc.init.d.sslh
+share/examples/sslh/scripts/etc.rc.d.init.d.sslh.centos
+share/examples/sslh/scripts/systemd.sslh.service

distinfo : 
--- distinfo    31 Jul 2010 17:04:47 -0000      1.1
+++ distinfo    17 Oct 2013 14:51:37 -0000
@@ -1,5 +1,8 @@
 $NetBSD: distinfo,v 1.1 2010/07/31 17:04:47 apb Exp $
 
-SHA1 (sslh-1.7a.tar.gz) = 11bcb9fd4285b06819d16db638ca111d8d43577a
-RMD160 (sslh-1.7a.tar.gz) = 79a156469ba4b10c493851be28d15898eaef4731
-Size (sslh-1.7a.tar.gz) = 9733 bytes
+SHA1 (sslh-1.15.tar.gz) = eaf255fcbc0aa35f1274240e619636ad3af2e3b2
+RMD160 (sslh-1.15.tar.gz) = 03fb637fe06c5b1e4010547017ef39d7265ae503
+Size (sslh-1.15.tar.gz) = 33241 bytes
+SHA1 (patch-Makefile) = 7b853315a6951bed8006ca7c0bc852eb5fbe2e0b
+SHA1 (patch-echosrv.c) = 9fda5a328a25fef0b63c2ce9c19747293132b704
+SHA1 (patch-sslh-main.c) = 1487e35c88b472f8fe9f1311b60c7d957a5bf22e

files/ssl.sh :
$ cat files/sslh.sh
#!@RCD_SCRIPTS_SHELL@
#
# PROVIDE: sslh
# REQUIRE: DAEMON

if [ -f /etc/rc.subr ]; then
        . /etc/rc.subr
fi

name="sslh"
rcvar=$name
command="@PREFIX@/sbin/${name}"
pidfile="/var/run/${name}.pid"
command_args="-P ${pidfile}"

if [ -f @PKG_SYSCONFDIR@/sslh.cfg ]; then
        command_args="${command_args} -F @PKG_SYSCONFDIR@/sslh.cfg"
fi

if [ -f /etc/rc.subr -a -f /etc/rc.conf -a -f /etc/rc.d/DAEMON ]; then
        load_rc_config $name
        run_rc_command "$1"
else
        echo -n " ${name}"
        ${command} ${command_args}
fi

patches/patch-Makefile : 
$ cat patches/patch-Makefile 
$NetBSD$

# NetBSD does have libwrap
--- Makefile.orig       2013-07-27 14:25:04.000000000 +0000
+++ Makefile
@@ -2,7 +2,7 @@
 
 VERSION="1.15"
 USELIBCONFIG=1 # Use libconfig? (necessary to use configuration files)
-USELIBWRAP=    # Use libwrap?
+USELIBWRAP=1   # Use libwrap?
 COV_TEST=      # Perform test coverage?
 PREFIX=/usr/local

patches/patch-echosrv.c : 
$ cat patches/patch-echosrv.c 
$NetBSD$

# getopt_long_only is not available on NetBSD

--- echosrv.c.orig      2013-07-27 14:25:04.000000000 +0000
+++ echosrv.c
@@ -64,7 +64,7 @@ void parse_cmdline(int argc, char* argv[
     };
     struct addrinfo **a;
 
-    while ((c = getopt_long_only(argc, argv, "l:p:", options, NULL)) != -1) {
+    while ((c = getopt_long(argc, argv, "l:p:", options, NULL)) != -1) {
         if (c == 0) continue;
 
         switch (c) {

patches/patch-sslh-main.c : 
$ cat patches/patch-sslh-main.c 
$NetBSD$

#getopt_long_only is not available on NetBSD

--- sslh-main.c.orig    2013-07-27 14:25:04.000000000 +0000
+++ sslh-main.c
@@ -337,7 +337,7 @@ static void cmdline_config(int argc, cha
 #ifdef LIBCONFIG
     optind = 1;
     opterr = 0; /* we're missing protocol options at this stage so don't 
output errors */
-    while ((c = getopt_long_only(argc, argv, optstr, all_options, NULL)) != 
-1) {
+    while ((c = getopt_long(argc, argv, optstr, all_options, NULL)) != -1) {
         if (c == 'F') {
             config_filename = optarg;
             /* find the end of the listen list */
@@ -362,7 +362,7 @@ static void parse_cmdline(int argc, char
     optind = 1;
     opterr = 1;
 next_arg:
-    while ((c = getopt_long_only(argc, argv, optstr, all_options, NULL)) != 
-1) {
+    while ((c = getopt_long(argc, argv, optstr, all_options, NULL)) != -1) {
         if (c == 0) continue;
 
         if (c >= PROT_SHIFT) {


The changelog is quite long, but the main evolutions are : 
- support for config file ;
- support for OpenVPN ;
- support for IPv6 throughout (both on listening and forwarding) ;
- support for XMPP ;
- HTTP probe ;
- an actual TLS/SSL probe ;
- added --transparent option for transparent proxying.



Home | Main Index | Thread Index | Old Index