#
-# Copyright (C) 2009-2014 OpenWrt.org
+# Copyright (C) 2009-2017 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
include $(TOPDIR)/rules.mk
PKG_NAME:=sslh
-PKG_VERSION:=v1.17
-PKG_RELEASE:=2
+PKG_VERSION:=v1.18
+PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
-PKG_SOURCE_URL:=http://rutschle.net/tech/
-PKG_MD5SUM:=1fc3ada4bafaca5a9786cc1431f48ed4
+PKG_SOURCE_URL:=http://rutschle.net/tech/sslh/
+PKG_MD5SUM:=0e3568d5d234516c634d4df156473298
PKG_LICENSE:=GPL-2.0+
PKG_LICENSE_FILES:=COPYING
CC="$(TARGET_CC)" \
CFLAGS="$(TARGET_CFLAGS)" \
LDFLAGS="$(TARGET_LDFLAGS)" \
+ ENABLE_REGEX= \
USELIBCONFIG= \
USELIBWRAP= \
USELIBPCRE= \
+diff --git a/Makefile b/Makefile
+index b1cf9ce..28f90c3 100644
--- a/Makefile
+++ b/Makefile
-@@ -45,16 +45,12 @@ all: sslh $(MAN) echosrv
+@@ -65,16 +65,12 @@ all: sslh $(MAN) echosrv
version.h:
./genver.sh >version.h
- $(CC) $(CFLAGS) $(LDFLAGS) -o sslh-select sslh-select.o $(OBJS) $(LIBS)
- #strip sslh-select
-
- echosrv: $(OBJS) echosrv.o
- $(CC) $(CFLAGS) $(LDFLAGS) -o echosrv echosrv.o probe.o common.o $(LIBS)
+ systemd-sslh-generator: systemd-sslh-generator.o
+ $(CC) $(CFLAGS) $(LDFLAGS) -o systemd-sslh-generator systemd-sslh-generator.o -lconfig
-@@ -85,7 +81,7 @@ distclean: clean
+@@ -110,7 +106,7 @@ distclean: clean
rm -f tags cscope.*
clean:
-- rm -f sslh-fork sslh-select echosrv version.h $(MAN) *.o *.gcov *.gcno *.gcda *.png *.html *.css *.info
-+ rm -f sslh-fork echosrv version.h $(MAN) *.o *.gcov *.gcno *.gcda *.png *.html *.css *.info
+- rm -f sslh-fork sslh-select echosrv version.h $(MAN) systemd-sslh-generator *.o *.gcov *.gcno *.gcda *.png *.html *.css *.info
++ rm -f sslh-fork echosrv version.h $(MAN) systemd-sslh-generator *.o *.gcov *.gcno *.gcda *.png *.html *.css *.info
tags:
ctags --globals -T *.[ch]
+++ /dev/null
-From 3aefaf300478cd6fbc4892d5baaf70521ed323af Mon Sep 17 00:00:00 2001
-From: Yves Rutschle <git1@rutschle.net>
-Date: Thu, 9 Jul 2015 15:31:42 +0200
-Subject: [PATCH] Added Makefile option to build without libpcre
-
----
---- a/Makefile
-+++ b/Makefile
-@@ -2,6 +2,7 @@
-
- VERSION=$(shell ./genver.sh -r)
- USELIBCONFIG=1 # Use libconfig? (necessary to use configuration files)
-+USELIBPCRE=1 # Use libpcre? (necessary to use regex probe)
- USELIBWRAP?= # Use libwrap?
- USELIBCAP= # Use libcap?
- COV_TEST= # Perform test coverage?
-@@ -27,6 +28,10 @@ ifneq ($(strip $(USELIBWRAP)),)
- CPPFLAGS+=-DLIBWRAP
- endif
-
-+ifneq ($(strip $(USELIBPCRE)),)
-+ CPPFLAGS+=-DLIBPCRE
-+endif
-+
- ifneq ($(strip $(USELIBCONFIG)),)
- LIBS:=$(LIBS) -lconfig
- CPPFLAGS+=-DLIBCONFIG
---- a/probe.c
-+++ b/probe.c
-@@ -21,7 +21,9 @@
-
- #define _GNU_SOURCE
- #include <stdio.h>
-+#ifdef LIBPCRE
- #include <regex.h>
-+#endif
- #include <ctype.h>
- #include "probe.h"
-
-@@ -226,6 +228,7 @@ static int is_tls_protocol(const char *p
-
- static int regex_probe(const char *p, int len, struct proto *proto)
- {
-+#ifdef LIBPCRE
- regex_t **probe = proto->data;
- regmatch_t pos = { 0, len };
-
-@@ -233,6 +236,11 @@ static int regex_probe(const char *p, in
- /* try them all */;
-
- return (*probe != NULL);
-+#else
-+ /* Should never happen as we check when loading config file */
-+ fprintf(stderr, "FATAL: regex probe called but not built in\n");
-+ exit(5);
-+#endif
- }
-
- /*
---- a/sslh-main.c
-+++ b/sslh-main.c
-@@ -25,7 +25,9 @@
- #ifdef LIBCONFIG
- #include <libconfig.h>
- #endif
-+#ifdef LIBPCRE
- #include <regex.h>
-+#endif
-
- #include "common.h"
- #include "probe.h"
-@@ -174,6 +176,7 @@ static int config_listen(config_t *confi
- #ifdef LIBCONFIG
- static void setup_regex_probe(struct proto *p, config_setting_t* probes)
- {
-+#ifdef LIBPCRE
- int num_probes, errsize, i, res;
- char *err;
- const char * expr;
-@@ -201,6 +204,10 @@ static void setup_regex_probe(struct pro
- exit(1);
- }
- }
-+#else
-+ fprintf(stderr, "line %d: regex probe specified but not compiled in\n", config_setting_source_line(probes));
-+ exit(5);
-+#endif
- }
- #endif
-