I imported this port when I actively used it, but circumstances have
changed and I have no longer any use for this TLS proxy, so I won't put
any more effort into sending fixes upstream as well as maintaining our
port.

1.6.0 was recently released, contains a few of my fixes merged upstream,
but also brings new fixes and even features that seem to cause trouble
on OpenBSD, namely support for client certificate validation.

Below is a diff for starters to update hitch to 1.6.0 which already
takes care of the fact that upstream now ships manuals in their dist
tarballs such that we don't have to build them with rst2man (which
upstream now again just looks for as "rst2man";  I used to fix this such
that "rst2man-3" was preferred and picked up...).

"make build" fails for 1.6.0 with

        cc -g -O2    -fno-strict-aliasing   -O2 -pipe   -L/usr/local/lib -o 
hitch hitch-configuration.o hitch-hitch.o  hitch-hssl_locks.o hitch-logging.o  
hitch-ocsp.o hitch-ringbuffer.o   -lssl -lcrypto -lcrypto    -lev   libcfg.a 
libforeign.a  
        ld: error: undefined symbol: SSL_CTX_set1_verify_cert_store
        >>> referenced by hitch.c:949 
(/usr/ports/pobj/hitch-1.6.0/hitch-1.6.0/src/hitch.c:949)
        >>>               hitch-hitch.o:(make_ctx_fr)
        cc: error: linker command failed with exit code 1 (use -v to see 
invocation)

There might be more in the new release, both build and runtime, but as
mentioned above, I'll leave it here.

Given that it's a TLS proxy and its history of bugs/fixes, I very much
prefer to provide a well maintained port or none at all to either
sticking to 1.5.2 or rolling best-effort future updates.

So unless someone steps up to maintain this: is anyone actually using
it/would anyone object to removing the port in case it stays unmaintained?



Index: Makefile
===================================================================
RCS file: /cvs/ports/security/hitch/Makefile,v
retrieving revision 1.8
diff -u -p -r1.8 Makefile
--- Makefile    26 Jun 2020 17:41:14 -0000      1.8
+++ Makefile    26 Jun 2020 17:54:28 -0000
@@ -2,9 +2,8 @@
 
 COMMENT =              libev-based high performance TLS proxy
 
-V =                    1.5.2
+V =                    1.6.0
 DISTNAME =             hitch-${V}
-REVISION =             0
 
 CATEGORIES =           security
 
@@ -17,25 +16,19 @@ MASTER_SITES =              https://hitch-tls.org/so
 
 WANTLIB =              c crypto ev ssl
 
-MODULES =              lang/python
-MODPY_VERSION =                ${MODPY_DEFAULT_VERSION_3}
-MODPY_RUNDEP =         No
-
-BUILD_DEPENDS =                textproc/py-docutils${MODPY_FLAVOR}
 LIB_DEPENDS =          devel/libev>=4
 TEST_DEPENDS =         ${PKGPATH}=${V} \
                        net/curl
 
 SEPARATE_BUILD =       Yes
 CONFIGURE_STYLE =      gnu
-CONFIGURE_ARGS =       --with-rst2man=rst2man${MODPY_BIN_SUFFIX}
 CONFIGURE_ENV =                CPPFLAGS='${CPPFLAGS} -I${LOCALBASE}/include' \
                        LDFLAGS='${LDFLAGS} -L${LOCALBASE}/lib'
 
 TEST_IS_INTERACTIVE =  connects to hitch-tls.org:80 and 127.0.0.1:443
 
 post-patch:
-       ${SUBST_CMD} ${WRKSRC}/{hitch.conf.man.rst,src/configuration.c}
+       ${SUBST_CMD} ${WRKSRC}/{hitch.conf.5,src/configuration.c}
 
 post-configure:
        ln -sf ${WRKSRC}/src/cfg_{lex,parser}.[ch] ${WRKBUILD}/src/
Index: distinfo
===================================================================
RCS file: /cvs/ports/security/hitch/distinfo,v
retrieving revision 1.3
diff -u -p -r1.3 distinfo
--- distinfo    28 Nov 2019 20:00:44 -0000      1.3
+++ distinfo    26 Jun 2020 17:54:28 -0000
@@ -1,2 +1,2 @@
-SHA256 (hitch-1.5.2.tar.gz) = saT9ZFhM1P+Ba4UT7lUi2zSkQxdHBXQhtuhw9yLG39o=
-SIZE (hitch-1.5.2.tar.gz) = 309626
+SHA256 (hitch-1.6.0.tar.gz) = TkfrSrt904CchCg1iK30Hd8Me8BlywDQkoJ0iJwHxwY=
+SIZE (hitch-1.6.0.tar.gz) = 321384
Index: patches/patch-hitch_conf_5
===================================================================
RCS file: patches/patch-hitch_conf_5
diff -N patches/patch-hitch_conf_5
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ patches/patch-hitch_conf_5  26 Jun 2020 17:54:28 -0000
@@ -0,0 +1,27 @@
+$OpenBSD$
+
+Set correct ocsp_dir and default user.
+
+Index: hitch.conf.5
+--- hitch.conf.5.orig
++++ hitch.conf.5
+@@ -214,7 +214,7 @@ Default is 0.
+ .SS ocsp\-dir = <string>
+ .sp
+ Directory where Hitch will store and read OCSP responses for
+-stapling. Default is "/var/lib/hitch/".
++stapling. Default is "${LOCALSTATEDIR}/hitch/".
+ .sp
+ Directory must be readable and writable for the configured Hitch user, or
+ automatic retrieval and updating of OCSP responses will not take place.
+@@ -499,8 +499,8 @@ daemon = on
+ 
+ # We strongly recommend you create a separate non\-privileged hitch
+ # user and group
+-user = "hitch"
+-group = "hitch"
++user = "_hitch"
++group = "_hitch"
+ 
+ # Enable to let clients negotiate HTTP/2 with ALPN. (default off)
+ # alpn\-protos = "h2, http/1.1"
Index: patches/patch-hitch_conf_man_rst
===================================================================
RCS file: patches/patch-hitch_conf_man_rst
diff -N patches/patch-hitch_conf_man_rst
--- patches/patch-hitch_conf_man_rst    22 Apr 2020 11:18:32 -0000      1.4
+++ /dev/null   1 Jan 1970 00:00:00 -0000
@@ -1,27 +0,0 @@
-$OpenBSD: patch-hitch_conf_man_rst,v 1.4 2020/04/22 11:18:32 kn Exp $
-
-Set ocsp_dir and default user.
-
-Index: hitch.conf.man.rst
---- hitch.conf.man.rst.orig
-+++ hitch.conf.man.rst
-@@ -148,7 +148,7 @@ ocsp-dir = <string>
- -------------------
- 
- Directory where Hitch will store and read OCSP responses for
--stapling. Default is "/var/lib/hitch/".
-+stapling. Default is "${LOCALSTATEDIR}/hitch/".
- 
- Directory must be readable and writable for the configured Hitch user, or
- automatic retrieval and updating of OCSP responses will not take place.
-@@ -416,8 +416,8 @@ The following file shows the syntax needed to get star
- 
-     # We strongly recommend you create a separate non-privileged hitch
-     # user and group
--    user = "hitch"
--    group = "hitch"
-+    user = "_hitch"
-+    group = "_hitch"
- 
-     # Enable to let clients negotiate HTTP/2 with ALPN. (default off)
-     # alpn-protos = "h2, http/1.1"
Index: patches/patch-src_configuration_c
===================================================================
RCS file: /cvs/ports/security/hitch/patches/patch-src_configuration_c,v
retrieving revision 1.4
diff -u -p -r1.4 patch-src_configuration_c
--- patches/patch-src_configuration_c   22 Apr 2020 11:18:32 -0000      1.4
+++ patches/patch-src_configuration_c   26 Jun 2020 17:54:28 -0000
@@ -5,7 +5,7 @@ Set ocsp_dir.
 Index: src/configuration.c
 --- src/configuration.c.orig
 +++ src/configuration.c
-@@ -209,7 +209,7 @@ config_new(void)
+@@ -211,7 +211,7 @@ config_new(void)
        r->CERT_FILES                   = NULL;
        r->LISTEN_ARGS                  = NULL;
        r->PEM_DIR                      = NULL;

Reply via email to