Hi, here a proposal to update to 2.4.29, removing some patches LIBRESSL's related pushed upstream in the process.
Hope it is good. Kind regards.
Index: Makefile =================================================================== RCS file: /cvs/ports/www/apache-httpd/Makefile,v retrieving revision 1.85 diff -u -p -r1.85 Makefile --- Makefile 18 Sep 2017 19:25:38 -0000 1.85 +++ Makefile 4 Nov 2017 09:10:58 -0000 @@ -3,8 +3,7 @@ COMMENT-main= apache HTTP server COMMENT-common= /var/www files for Apache HTTPd -V= 2.4.27 -REVISION-main= 0 +V= 2.4.29 DISTNAME= httpd-${V} PKGNAME= apache-httpd-${V} Index: distinfo =================================================================== RCS file: /cvs/ports/www/apache-httpd/distinfo,v retrieving revision 1.26 diff -u -p -r1.26 distinfo --- distinfo 14 Jul 2017 17:14:33 -0000 1.26 +++ distinfo 4 Nov 2017 09:10:58 -0000 @@ -1,2 +1,2 @@ -SHA256 (httpd-2.4.27.tar.gz) = NG3T0BauXXEBAW5ogFFQvc6QQKjSRsKJqnDminzYa2Y= -SIZE (httpd-2.4.27.tar.gz) = 8603417 +SHA256 (httpd-2.4.29.tar.gz) = lI5KESeKWVRpi4gLMPQBsemrdDcT7ixygKVN1N3YcIU= +SIZE (httpd-2.4.29.tar.gz) = 8638793 Index: patches/patch-modules_ssl_mod_ssl_c =================================================================== RCS file: patches/patch-modules_ssl_mod_ssl_c diff -N patches/patch-modules_ssl_mod_ssl_c --- patches/patch-modules_ssl_mod_ssl_c 14 Jul 2017 17:04:12 -0000 1.3 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,23 +0,0 @@ -$OpenBSD: patch-modules_ssl_mod_ssl_c,v 1.3 2017/07/14 17:04:12 sthen Exp $ - -Index: modules/ssl/mod_ssl.c ---- modules/ssl/mod_ssl.c.orig -+++ modules/ssl/mod_ssl.c -@@ -337,7 +337,7 @@ static apr_status_t ssl_cleanup_pre_config(void *data) - #if HAVE_ENGINE_LOAD_BUILTIN_ENGINES - ENGINE_cleanup(); - #endif --#if OPENSSL_VERSION_NUMBER >= 0x1000200fL -+#if OPENSSL_VERSION_NUMBER >= 0x1000200fL && !defined(LIBRESSL_VERSION_NUMBER) - SSL_COMP_free_compression_methods(); - #endif - -@@ -390,7 +390,7 @@ static int ssl_hook_pre_config(apr_pool_t *pconf, - /* We must register the library in full, to ensure our configuration - * code can successfully test the SSL environment. - */ --#if OPENSSL_VERSION_NUMBER < 0x10100000L -+#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) - CRYPTO_malloc_init(); - #else - OPENSSL_malloc_init(); Index: patches/patch-modules_ssl_ssl_engine_init_c =================================================================== RCS file: patches/patch-modules_ssl_ssl_engine_init_c diff -N patches/patch-modules_ssl_ssl_engine_init_c --- patches/patch-modules_ssl_ssl_engine_init_c 14 Jul 2017 17:04:12 -0000 1.9 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,50 +0,0 @@ -$OpenBSD: patch-modules_ssl_ssl_engine_init_c,v 1.9 2017/07/14 17:04:12 sthen Exp $ - -Index: modules/ssl/ssl_engine_init.c ---- modules/ssl/ssl_engine_init.c.orig -+++ modules/ssl/ssl_engine_init.c -@@ -47,7 +47,7 @@ APR_IMPLEMENT_OPTIONAL_HOOK_RUN_ALL(ssl, SSL, int, ini - #define KEYTYPES "RSA or DSA" - #endif - --#if OPENSSL_VERSION_NUMBER < 0x10100000L -+#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) - /* OpenSSL Pre-1.1.0 compatibility */ - /* Taken from OpenSSL 1.1.0 snapshot 20160410 */ - static int DH_set0_pqg(DH *dh, BIGNUM *p, BIGNUM *q, BIGNUM *g) -@@ -380,7 +380,7 @@ apr_status_t ssl_init_Module(apr_pool_t *p, apr_pool_t - modssl_init_app_data2_idx(); /* for modssl_get_app_data2() at request time */ - - init_dh_params(); --#if OPENSSL_VERSION_NUMBER >= 0x10100000L -+#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER) - init_bio_methods(); - #endif - -@@ -513,7 +513,7 @@ static apr_status_t ssl_init_ctx_protocol(server_rec * - char *cp; - int protocol = mctx->protocol; - SSLSrvConfigRec *sc = mySrvConfig(s); --#if OPENSSL_VERSION_NUMBER >= 0x10100000L -+#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER) - int prot; - #endif - -@@ -583,7 +583,7 @@ static apr_status_t ssl_init_ctx_protocol(server_rec * - - SSL_CTX_set_options(ctx, SSL_OP_ALL); - --#if OPENSSL_VERSION_NUMBER < 0x10100000L -+#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) - /* always disable SSLv2, as per RFC 6176 */ - SSL_CTX_set_options(ctx, SSL_OP_NO_SSLv2); - -@@ -2011,7 +2011,7 @@ apr_status_t ssl_init_ModuleKill(void *data) - - } - --#if OPENSSL_VERSION_NUMBER >= 0x10100000L -+#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER) - free_bio_methods(); - #endif - free_dh_params(); Index: patches/patch-modules_ssl_ssl_engine_io_c =================================================================== RCS file: patches/patch-modules_ssl_ssl_engine_io_c diff -N patches/patch-modules_ssl_ssl_engine_io_c --- patches/patch-modules_ssl_ssl_engine_io_c 14 Jul 2017 17:04:12 -0000 1.5 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,32 +0,0 @@ -$OpenBSD: patch-modules_ssl_ssl_engine_io_c,v 1.5 2017/07/14 17:04:12 sthen Exp $ - -Index: modules/ssl/ssl_engine_io.c ---- modules/ssl/ssl_engine_io.c.orig -+++ modules/ssl/ssl_engine_io.c -@@ -549,7 +549,7 @@ static long bio_filter_in_ctrl(BIO *bio, int cmd, long - return -1; - } - --#if OPENSSL_VERSION_NUMBER < 0x10100000L -+#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) - - static BIO_METHOD bio_filter_out_method = { - BIO_TYPE_MEM, -@@ -2024,7 +2024,7 @@ static void ssl_io_input_add_filter(ssl_filter_ctx_t * - - filter_ctx->pInputFilter = ap_add_input_filter(ssl_io_filter, inctx, r, c); - --#if OPENSSL_VERSION_NUMBER < 0x10100000L -+#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) - filter_ctx->pbioRead = BIO_new(&bio_filter_in_method); - #else - filter_ctx->pbioRead = BIO_new(bio_filter_in_method); -@@ -2059,7 +2059,7 @@ void ssl_io_filter_init(conn_rec *c, request_rec *r, S - filter_ctx->pOutputFilter = ap_add_output_filter(ssl_io_filter, - filter_ctx, r, c); - --#if OPENSSL_VERSION_NUMBER < 0x10100000L -+#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) - filter_ctx->pbioWrite = BIO_new(&bio_filter_out_method); - #else - filter_ctx->pbioWrite = BIO_new(bio_filter_out_method); Index: patches/patch-modules_ssl_ssl_engine_kernel_c =================================================================== RCS file: patches/patch-modules_ssl_ssl_engine_kernel_c diff -N patches/patch-modules_ssl_ssl_engine_kernel_c --- patches/patch-modules_ssl_ssl_engine_kernel_c 14 Jul 2017 17:04:12 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,23 +0,0 @@ -$OpenBSD: patch-modules_ssl_ssl_engine_kernel_c,v 1.1 2017/07/14 17:04:12 sthen Exp $ - -Index: modules/ssl/ssl_engine_kernel.c ---- modules/ssl/ssl_engine_kernel.c.orig -+++ modules/ssl/ssl_engine_kernel.c -@@ -1733,7 +1733,7 @@ static void modssl_proxy_info_log(conn_rec *c, - * so we need to increment here to prevent them from - * being freed. - */ --#if OPENSSL_VERSION_NUMBER < 0x10100000L -+#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) - #define modssl_set_cert_info(info, cert, pkey) \ - *cert = info->x509; \ - CRYPTO_add(&(*cert)->references, +1, CRYPTO_LOCK_X509); \ -@@ -1923,7 +1923,7 @@ int ssl_callback_NewSessionCacheEntry(SSL *ssl, SSL_SE - * of our other Apache pre-forked server processes. - */ - SSL_SESSION *ssl_callback_GetSessionCacheEntry(SSL *ssl, -- IDCONST unsigned char *id, -+ unsigned char *id, - int idlen, int *do_copy) - { - /* Get Apache context back through OpenSSL context */ Index: patches/patch-modules_ssl_ssl_engine_vars_c =================================================================== RCS file: patches/patch-modules_ssl_ssl_engine_vars_c diff -N patches/patch-modules_ssl_ssl_engine_vars_c --- patches/patch-modules_ssl_ssl_engine_vars_c 14 Jul 2017 17:04:12 -0000 1.3 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,23 +0,0 @@ -$OpenBSD: patch-modules_ssl_ssl_engine_vars_c,v 1.3 2017/07/14 17:04:12 sthen Exp $ - -Index: modules/ssl/ssl_engine_vars.c ---- modules/ssl/ssl_engine_vars.c.orig -+++ modules/ssl/ssl_engine_vars.c -@@ -529,7 +529,7 @@ static char *ssl_var_lookup_ssl_cert(apr_pool_t *p, re - resdup = FALSE; - } - else if (strcEQ(var, "A_SIG")) { --#if OPENSSL_VERSION_NUMBER < 0x10100000L -+#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) - nid = OBJ_obj2nid((ASN1_OBJECT *)(xs->cert_info->signature->algorithm)); - #else - const ASN1_OBJECT *paobj; -@@ -541,7 +541,7 @@ static char *ssl_var_lookup_ssl_cert(apr_pool_t *p, re - resdup = FALSE; - } - else if (strcEQ(var, "A_KEY")) { --#if OPENSSL_VERSION_NUMBER < 0x10100000L -+#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) - nid = OBJ_obj2nid((ASN1_OBJECT *)(xs->cert_info->key->algor->algorithm)); - #else - ASN1_OBJECT *paobj; Index: patches/patch-modules_ssl_ssl_private_h =================================================================== RCS file: patches/patch-modules_ssl_ssl_private_h diff -N patches/patch-modules_ssl_ssl_private_h --- patches/patch-modules_ssl_ssl_private_h 14 Jul 2017 17:04:12 -0000 1.3 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,32 +0,0 @@ -$OpenBSD: patch-modules_ssl_ssl_private_h,v 1.3 2017/07/14 17:04:12 sthen Exp $ - -Index: modules/ssl/ssl_private.h ---- modules/ssl/ssl_private.h.orig -+++ modules/ssl/ssl_private.h -@@ -199,7 +199,7 @@ - - #endif /* !defined(OPENSSL_NO_TLSEXT) && defined(SSL_set_tlsext_host_name) */ - --#if OPENSSL_VERSION_NUMBER < 0x10100000L -+#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) - #define BN_get_rfc2409_prime_768 get_rfc2409_prime_768 - #define BN_get_rfc2409_prime_1024 get_rfc2409_prime_1024 - #define BN_get_rfc3526_prime_1536 get_rfc3526_prime_1536 -@@ -219,7 +219,7 @@ void init_bio_methods(void); - void free_bio_methods(void); - #endif - --#if OPENSSL_VERSION_NUMBER < 0x10002000L -+#if OPENSSL_VERSION_NUMBER < 0x10002000L || defined(LIBRESSL_VERSION_NUMBER) - #define X509_STORE_CTX_get0_store(x) (x->ctx) - #endif - -@@ -861,7 +861,7 @@ int ssl_callback_SSLVerify(int, X509_STORE_CT - int ssl_callback_SSLVerify_CRL(int, X509_STORE_CTX *, conn_rec *); - int ssl_callback_proxy_cert(SSL *ssl, X509 **x509, EVP_PKEY **pkey); - int ssl_callback_NewSessionCacheEntry(SSL *, SSL_SESSION *); --SSL_SESSION *ssl_callback_GetSessionCacheEntry(SSL *, IDCONST unsigned char *, int, int *); -+SSL_SESSION *ssl_callback_GetSessionCacheEntry(SSL *, unsigned char *, int, int *); - void ssl_callback_DelSessionCacheEntry(SSL_CTX *, SSL_SESSION *); - void ssl_callback_Info(const SSL *, int, int); - #ifdef HAVE_TLSEXT Index: patches/patch-modules_ssl_ssl_util_ssl_h =================================================================== RCS file: patches/patch-modules_ssl_ssl_util_ssl_h diff -N patches/patch-modules_ssl_ssl_util_ssl_h --- patches/patch-modules_ssl_ssl_util_ssl_h 14 Jul 2017 17:04:12 -0000 1.3 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,14 +0,0 @@ -$OpenBSD: patch-modules_ssl_ssl_util_ssl_h,v 1.3 2017/07/14 17:04:12 sthen Exp $ - -Index: modules/ssl/ssl_util_ssl.h ---- modules/ssl/ssl_util_ssl.h.orig -+++ modules/ssl/ssl_util_ssl.h -@@ -41,7 +41,7 @@ - #define MODSSL_LIBRARY_VERSION OPENSSL_VERSION_NUMBER - #define MODSSL_LIBRARY_NAME "OpenSSL" - #define MODSSL_LIBRARY_TEXT OPENSSL_VERSION_TEXT --#if OPENSSL_VERSION_NUMBER < 0x10100000L -+#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) - #define MODSSL_LIBRARY_DYNTEXT SSLeay_version(SSLEAY_VERSION) - #else - #define MODSSL_LIBRARY_DYNTEXT OpenSSL_version(OPENSSL_VERSION) Index: patches/patch-server_core_c =================================================================== RCS file: patches/patch-server_core_c diff -N patches/patch-server_core_c --- patches/patch-server_core_c 18 Sep 2017 19:25:38 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,30 +0,0 @@ -$OpenBSD: patch-server_core_c,v 1.1 2017/09/18 19:25:38 sthen Exp $ - -Revision 1807754 -Fri Sep 8 13:13:11 2017 UTC by ylavic -Merge r1807655 from trunk: - -core: Disallow Methods' registration at run time (.htaccess), they may be -used only if registered at init time (httpd.conf). - -Calling ap_method_register() in children processes is not the right scope -since it won't be shared for all requests. - -Reviewed by: ylavic, covener, icing - -Index: server/core.c ---- server/core.c.orig -+++ server/core.c -@@ -2262,6 +2262,12 @@ AP_CORE_DECLARE_NONSTD(const char *) ap_limit_section( - /* method has not been registered yet, but resource restriction - * is always checked before method handling, so register it. - */ -+ if (cmd->pool == cmd->temp_pool) { -+ /* In .htaccess, we can't globally register new methods. */ -+ return apr_psprintf(cmd->pool, "Could not register method '%s' " -+ "for %s from .htaccess configuration", -+ method, cmd->cmd->name); -+ } - methnum = ap_method_register(cmd->pool, - apr_pstrdup(cmd->pool, method)); - } Index: pkg/PLIST-main =================================================================== RCS file: /cvs/ports/www/apache-httpd/pkg/PLIST-main,v retrieving revision 1.16 diff -u -p -r1.16 PLIST-main --- pkg/PLIST-main 14 Jul 2017 17:04:12 -0000 1.16 +++ pkg/PLIST-main 4 Nov 2017 09:10:59 -0000 @@ -1008,6 +1008,8 @@ share/doc/apache2/mod/mpm_winnt.html.ja. share/doc/apache2/mod/mpmt_os2.html share/doc/apache2/mod/mpmt_os2.html.en share/doc/apache2/mod/mpmt_os2.html.fr +share/doc/apache2/mod/overrides.html +share/doc/apache2/mod/overrides.html.en share/doc/apache2/mod/prefork.html share/doc/apache2/mod/prefork.html.de share/doc/apache2/mod/prefork.html.en @@ -1453,4 +1455,3 @@ share/examples/apache2/htdocs/ share/examples/apache2/htdocs/index.html @sample /var/www/htdocs/index.html %%ldap%% -@rcscript ${RCDIR}/apache2