From d4b48afd7912e072f1fd9d26c43a4c75a677decf Mon Sep 17 00:00:00 2001 From: Jan Beich Date: Wed, 13 May 2015 16:14:46 +0000 Subject: [PATCH] net/hanstunnel: update to 0.4.4 [1] and improve - Revert r326014 as nothing to substitute in pkg-message [1] - Clarify server works only on Linux [1] - Unbreak build on DragonFly [2] - Drop poorly maintained CLANG option [3] - Simplify patching via MAKE_ARGS - Respect LOCALBASE != PREFIX - Pet portlint (makepatch) - Clarify LICENSE PR: 195313 Reported by: DPorts [2] Requested by: many [3] Submitted by: vsityz@gmail.com (maintainer [1], based on) Reviewed by: marino [2] Approved by: maintainer timeout (~3 weeks) --- net/hanstunnel/Makefile | 40 ++++------ net/hanstunnel/distinfo | 4 +- net/hanstunnel/files/patch-Makefile | 73 ------------------- net/hanstunnel/files/patch-client.cpp | 11 --- net/hanstunnel/files/patch-main.cpp | 10 --- .../{patch-echo.cpp => patch-src_echo.cpp} | 9 ++- net/hanstunnel/files/patch-src_tun.cpp | 11 +++ .../files/patch-src_tun__dev__freebsd.c | 14 ++++ net/hanstunnel/files/patch-tun.cpp | 45 ------------ net/hanstunnel/files/patch-utility.cpp | 10 --- net/hanstunnel/pkg-descr | 3 + .../{files/pkg-message.in => pkg-message} | 0 12 files changed, 49 insertions(+), 181 deletions(-) delete mode 100644 net/hanstunnel/files/patch-Makefile delete mode 100644 net/hanstunnel/files/patch-client.cpp delete mode 100644 net/hanstunnel/files/patch-main.cpp rename net/hanstunnel/files/{patch-echo.cpp => patch-src_echo.cpp} (55%) create mode 100644 net/hanstunnel/files/patch-src_tun.cpp create mode 100644 net/hanstunnel/files/patch-src_tun__dev__freebsd.c delete mode 100644 net/hanstunnel/files/patch-tun.cpp delete mode 100644 net/hanstunnel/files/patch-utility.cpp rename net/hanstunnel/{files/pkg-message.in => pkg-message} (100%) diff --git a/net/hanstunnel/Makefile b/net/hanstunnel/Makefile index 1b97527b550d..e6db93c5b306 100644 --- a/net/hanstunnel/Makefile +++ b/net/hanstunnel/Makefile @@ -2,42 +2,30 @@ # $FreeBSD$ PORTNAME= hans -PORTVERSION= 0.4.1 -PORTREVISION= 1 +PORTVERSION= 0.4.4 CATEGORIES= net security MASTER_SITES= SF/hanstunnel/source MAINTAINER= vsityz@gmail.com COMMENT= Hans makes it possible to tunnel IPv4 through ICMP -LICENSE= GPLv3 - -OPTIONS_DEFINE= CLANG - -CLANG_DESC= Build with Clang instead of GCC - -OPTIONS_DEFAULT= CLANG +LICENSE= FPL GPLv3 # or any later version +LICENSE_COMB= multi +LICENSE_NAME_FPL=Freeware Public License +LICENSE_FILE_FPL=${WRKSRC}/src/sha1_license.txt +LICENSE_PERMS_FPL=dist-mirror dist-sell pkg-mirror pkg-sell auto-accept +USES= dos2unix +DOS2UNIX_FILES= ${LICENSE_FILE_FPL} +MAKE_ARGS= GCC="${CC}" GPP="${CXX}" \ + CFLAGS="${CFLAGS} -c" LDFLAGS="${LDFLAGS}" \ + TUN_DEV_FILE="src/tun_dev_freebsd.c" PLIST_FILES= bin/hans -SUB_FILES= pkg-message - -.include - -.if ${PORT_OPTIONS:MCLANG} -.if ${OSVERSION} >= 900033 && exists(/usr/bin/clang) -CC= clang -CXX= clang++ -.else -BUILD_DEPENDS+= clang33:${PORTSDIR}/lang/clang33 -CC= clang33 -CXX= clang++33 -.endif -.else -USE_GCC= any -.endif +# Remove CRs before ask-license to fix formatting in dialog(1) +post-extract: dos2unix do-install: - ${INSTALL_PROGRAM} ${WRKSRC}/hans ${STAGEDIR}${LOCALBASE}/bin + ${INSTALL_PROGRAM} ${WRKSRC}/hans ${STAGEDIR}${PREFIX}/bin .include diff --git a/net/hanstunnel/distinfo b/net/hanstunnel/distinfo index 639a5ccbbbd4..32c7a8a7103a 100644 --- a/net/hanstunnel/distinfo +++ b/net/hanstunnel/distinfo @@ -1,2 +1,2 @@ -SHA256 (hans-0.4.1.tar.gz) = 8e4df005bcf6a877ffd0810cc9b31aa3ae04f23d798bea6cc2893a3f26cac29c -SIZE (hans-0.4.1.tar.gz) = 32860 +SHA256 (hans-0.4.4.tar.gz) = 81378258b8c9510ac01ad4d69f191e2927b9304daae033ee097f6ba4d39f6bb3 +SIZE (hans-0.4.4.tar.gz) = 33992 diff --git a/net/hanstunnel/files/patch-Makefile b/net/hanstunnel/files/patch-Makefile deleted file mode 100644 index 747d9e5d4b7f..000000000000 --- a/net/hanstunnel/files/patch-Makefile +++ /dev/null @@ -1,73 +0,0 @@ ---- Makefile.orig 2010-02-17 17:30:21.000000000 +0200 -+++ Makefile 2013-04-04 15:18:50.818219413 +0300 -@@ -1,53 +1,51 @@ --LDFLAGS = `sh osflags ld $(MODE)` --CFLAGS = -c -g `sh osflags c $(MODE)` --TUN_DEV_FILE = `sh osflags dev $(MODE)` --GCC = gcc --GPP = g++ -+TUN_DEV_FILE = tun_dev_freebsd.c -+GCC = ${CC} -+GPP = ${CXX} - - all: hans - - hans: tun.o sha1.o main.o client.o server.o auth.o worker.o time.o tun_dev.o echo.o exception.o utility.o -- $(GPP) -o hans tun.o sha1.o main.o client.o server.o auth.o worker.o time.o tun_dev.o echo.o exception.o utility.o $(LDFLAGS) -+ ${GPP} -o hans tun.o sha1.o main.o client.o server.o auth.o worker.o time.o tun_dev.o echo.o exception.o utility.o ${LDFLAGS} - - utility.o: utility.cpp utility.h -- $(GPP) -c utility.cpp $(CFLAGS) -+ ${GPP} -c utility.cpp ${CFLAGS} - - exception.o: exception.cpp exception.h -- $(GPP) -c exception.cpp $(CFLAGS) -+ ${GPP} -c exception.cpp ${CFLAGS} - - echo.o: echo.cpp echo.h exception.h -- $(GPP) -c echo.cpp $(CFLAGS) -+ ${GPP} -c echo.cpp ${CFLAGS} - - tun.o: tun.cpp tun.h exception.h utility.h tun_dev.h -- $(GPP) -c tun.cpp $(CFLAGS) -+ ${GPP} -c tun.cpp ${CFLAGS} - - tun_dev.o: -- $(GCC) -c $(TUN_DEV_FILE) -o tun_dev.o $(CFLAGS) -+ ${GCC} -c ${TUN_DEV_FILE} -o tun_dev.o ${CFLAGS} - - sha1.o: sha1.cpp sha1.h -- $(GPP) -c sha1.cpp $(CFLAGS) -+ ${GPP} -c sha1.cpp ${CFLAGS} - - main.o: main.cpp client.h server.h exception.h worker.h auth.h time.h echo.h tun.h tun_dev.h -- $(GPP) -c main.cpp $(CFLAGS) -+ ${GPP} -c main.cpp ${CFLAGS} - - client.o: client.cpp client.h server.h exception.h config.h worker.h auth.h time.h echo.h tun.h tun_dev.h -- $(GPP) -c client.cpp $(CFLAGS) -+ ${GPP} -c client.cpp ${CFLAGS} - - server.o: server.cpp server.h client.h utility.h config.h worker.h auth.h time.h echo.h tun.h tun_dev.h -- $(GPP) -c server.cpp $(CFLAGS) -+ ${GPP} -c server.cpp ${CFLAGS} - - auth.o: auth.cpp auth.h sha1.h utility.h -- $(GPP) -c auth.cpp $(CFLAGS) -+ ${GPP} -c auth.cpp ${CFLAGS} - - worker.o: worker.cpp worker.h tun.h exception.h time.h echo.h tun_dev.h config.h -- $(GPP) -c worker.cpp $(CFLAGS) -+ ${GPP} -c worker.cpp ${CFLAGS} - - time.o: time.cpp time.h -- $(GPP) -c time.cpp $(CFLAGS) -+ ${GPP} -c time.cpp ${CFLAGS} - - clean: - rm -f tun.o sha1.o main.o client.o server.o auth.o worker.o time.o tun_dev.o echo.o exception.o utility.o tunemu.o hans - - - tunemu.o: tunemu.h tunemu.c -- $(GCC) -c tunemu.c -o tunemu.o -+ ${GCC} -c tunemu.c -o tunemu.o diff --git a/net/hanstunnel/files/patch-client.cpp b/net/hanstunnel/files/patch-client.cpp deleted file mode 100644 index 16a57a6261ae..000000000000 --- a/net/hanstunnel/files/patch-client.cpp +++ /dev/null @@ -1,11 +0,0 @@ ---- client.cpp.orig 2010-02-17 17:30:21.000000000 +0200 -+++ client.cpp 2013-04-03 16:05:10.000000000 +0300 -@@ -27,6 +27,8 @@ - #include - #include - -+#include -+ - using namespace std; - - const Worker::TunnelHeader::Magic Client::magic("hanc"); diff --git a/net/hanstunnel/files/patch-main.cpp b/net/hanstunnel/files/patch-main.cpp deleted file mode 100644 index fe816c05b86e..000000000000 --- a/net/hanstunnel/files/patch-main.cpp +++ /dev/null @@ -1,10 +0,0 @@ ---- main.cpp.orig 2014-08-06 10:11:00.000000000 -0400 -+++ main.cpp 2014-08-06 10:11:12.000000000 -0400 -@@ -30,6 +30,7 @@ - #include - #include - #include -+#include - - void usage() - { diff --git a/net/hanstunnel/files/patch-echo.cpp b/net/hanstunnel/files/patch-src_echo.cpp similarity index 55% rename from net/hanstunnel/files/patch-echo.cpp rename to net/hanstunnel/files/patch-src_echo.cpp index 302833f9ea88..0d4be34e7844 100644 --- a/net/hanstunnel/files/patch-echo.cpp +++ b/net/hanstunnel/files/patch-src_echo.cpp @@ -1,9 +1,10 @@ ---- echo.cpp.orig 2014-08-06 10:11:40.000000000 -0400 -+++ echo.cpp 2014-08-06 10:11:56.000000000 -0400 -@@ -20,6 +20,7 @@ +--- src/echo.cpp.orig 2014-02-07 03:36:31 UTC ++++ src/echo.cpp +@@ -19,7 +19,7 @@ + #include "echo.h" #include "exception.h" - +- +#include #include #include diff --git a/net/hanstunnel/files/patch-src_tun.cpp b/net/hanstunnel/files/patch-src_tun.cpp new file mode 100644 index 000000000000..60ff6d58d6a9 --- /dev/null +++ b/net/hanstunnel/files/patch-src_tun.cpp @@ -0,0 +1,11 @@ +--- src/tun.cpp.orig 2014-02-07 03:36:31 UTC ++++ src/tun.cpp +@@ -20,7 +20,7 @@ + #include "tun.h" + #include "exception.h" + #include "utility.h" +- ++#include + #include + #include + #include diff --git a/net/hanstunnel/files/patch-src_tun__dev__freebsd.c b/net/hanstunnel/files/patch-src_tun__dev__freebsd.c new file mode 100644 index 000000000000..5f223b322b47 --- /dev/null +++ b/net/hanstunnel/files/patch-src_tun__dev__freebsd.c @@ -0,0 +1,14 @@ +--- src/tun_dev_freebsd.c.orig 2014-02-07 03:36:31 UTC ++++ src/tun_dev_freebsd.c +@@ -31,7 +31,11 @@ + #include + + #include ++#ifdef __DragonFly__ ++#include ++#else + #include ++#endif + + /* #include "vtun.h" + #include "lib.h" */ diff --git a/net/hanstunnel/files/patch-tun.cpp b/net/hanstunnel/files/patch-tun.cpp deleted file mode 100644 index d60be6846d90..000000000000 --- a/net/hanstunnel/files/patch-tun.cpp +++ /dev/null @@ -1,45 +0,0 @@ ---- tun.cpp.orig 2010-02-17 10:30:21.000000000 -0500 -+++ tun.cpp 2014-08-06 10:10:51.000000000 -0400 -@@ -21,6 +21,7 @@ - #include "exception.h" - #include "utility.h" - -+#include - #include - #include - #include -@@ -41,8 +42,7 @@ - - if (device != NULL) - { -- strncpy(this->device, device, VTUN_DEV_LEN); -- this->device[VTUN_DEV_LEN] = 0; -+ strlcpy(this->device, device, VTUN_DEV_LEN); - } - else - this->device[0] = 0; -@@ -68,23 +68,17 @@ - string ips = Utility::formatIp(ip); - string destIps = Utility::formatIp(destIp); - --#ifdef LINUX -- snprintf(cmdline, sizeof(cmdline), "/sbin/ifconfig %s %s netmask 255.255.255.0", device, ips.c_str()); --#else -- snprintf(cmdline, sizeof(cmdline), "/sbin/ifconfig %s %s %s netmask 255.255.255.255", device, ips.c_str(), destIps.c_str()); --#endif -+ snprintf(cmdline, sizeof(cmdline), "/sbin/ifconfig %s %s %s netmask 255.255.255.0", device, ips.c_str(), destIps.c_str()); - - if (system(cmdline) != 0) - syslog(LOG_ERR, "could not set tun device ip address"); - --#ifndef LINUX - if (includeSubnet) - { - snprintf(cmdline, sizeof(cmdline), "/sbin/route add %s/24 %s", destIps.c_str(), destIps.c_str()); - if (system(cmdline) != 0) - syslog(LOG_ERR, "could not add route"); - } --#endif - } - - void Tun::write(const char *buffer, int length) diff --git a/net/hanstunnel/files/patch-utility.cpp b/net/hanstunnel/files/patch-utility.cpp deleted file mode 100644 index 40b65b5d5457..000000000000 --- a/net/hanstunnel/files/patch-utility.cpp +++ /dev/null @@ -1,10 +0,0 @@ ---- utility.cpp.orig 2014-08-06 10:12:15.000000000 -0400 -+++ utility.cpp 2014-08-06 10:12:30.000000000 -0400 -@@ -21,6 +21,7 @@ - - #include - #include -+#include - - using namespace std; - diff --git a/net/hanstunnel/pkg-descr b/net/hanstunnel/pkg-descr index 74316b5f115f..a3e2014699c5 100644 --- a/net/hanstunnel/pkg-descr +++ b/net/hanstunnel/pkg-descr @@ -3,4 +3,7 @@ could call it a ping tunnel. This can be useful when you find yourself in the situation that your Internet access is firewalled, but pings are allowed. +Hans runs on Linux as a client and a server. It runs on Mac OS X, +iPhone/iPod touch, FreeBSD and OpenBSD as a client only. + WWW: http://code.gerade.org/hans/ diff --git a/net/hanstunnel/files/pkg-message.in b/net/hanstunnel/pkg-message similarity index 100% rename from net/hanstunnel/files/pkg-message.in rename to net/hanstunnel/pkg-message