<pre style='margin:0'>
Ryan Schmidt (ryandesign) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/5c7aef308d4f10131c2fe4fc7e916a45d371a6b8">https://github.com/macports/macports-ports/commit/5c7aef308d4f10131c2fe4fc7e916a45d371a6b8</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'>     new 5c7aef308d4 mongrel2: Update to 1.12.2
</span>5c7aef308d4 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit 5c7aef308d4f10131c2fe4fc7e916a45d371a6b8
</span>Author: Ryan Schmidt <ryandesign@macports.org>
AuthorDate: Fri Jul 3 04:06:46 2020 -0500

<span style='display:block; white-space:pre;color:#404040;'>    mongrel2: Update to 1.12.2
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    Closes: https://trac.macports.org/ticket/59532
</span>---
 www/mongrel2/Portfile                              | 38 +++++----
 www/mongrel2/files/mbedtls.patch                   | 91 ++++++++++++++++++++++
 www/mongrel2/files/no-tests.patch                  | 12 +++
 www/mongrel2/files/patch-Makefile.diff             |  8 --
 .../files/patch-tools-procer-Makefile.diff         | 11 ---
 5 files changed, 125 insertions(+), 35 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/www/mongrel2/Portfile b/www/mongrel2/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 28b08619e26..cc6d76e7781 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/www/mongrel2/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/www/mongrel2/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -3,8 +3,12 @@
</span> PortSystem          1.0
 PortGroup           github 1.0
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-github.setup        zedshaw mongrel2 1.9.1 v
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-revision            1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+github.setup        mongrel2 mongrel2 1.12.2 v
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision            0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums           rmd160  111e1724cc6e679217e3a4398e4a13ada7ea834d \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  3bffeae198c37a1efc9c12f77d5f1eb61cdf62b35d661babc2527dd030aa7d8f \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    2855262
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> license             BSD
 categories          www
 platforms           darwin
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -18,30 +22,32 @@ long_description    \
</span> homepage            http://mongrel2.org/
 github.tarball_from releases
 distname            ${name}-${github.tag_prefix}${version}
<span style='display:block; white-space:pre;background:#e0ffe0;'>+use_bzip2           yes
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-checksums           rmd160  e355cae5f87ece74ed6744f2bef98232b8cf3020 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    sha256  dc491c9b06f1b32020fd977737fa16f99af6d99e7bfb2f80fcc53278dd44f398
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-depends_lib         port:zmq \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    port:sqlite3
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-post-extract {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    set file_name ${worksrcpath}/tests/cert_tests.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    move $file_name ${file_name}.invalid
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_lib         port:sqlite3 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:mbedtls \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:zmq
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-patchfiles          patch-Makefile.diff \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    patch-tools-procer-Makefile.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles          mbedtls.patch \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    no-tests.patch
</span> 
 use_configure       no
 
 variant universal {}
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-build.target        macports
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.ldflags-append -bind_at_load -undefined dynamic_lookup
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> build.args-append   PREFIX=${prefix} \
                     CC=${configure.cc} \
                     OPTFLAGS="${configure.cflags} ${configure.cppflags} [get_canonical_archflags cc]" \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    OPTLIBS="${configure.ldflags} [get_canonical_archflags ld] -bind_at_load -undefined dynamic_lookup"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    OPTLIBS="${configure.ldflags} [get_canonical_archflags ld]"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# The tests fail...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# https://github.com/mongrel2/mongrel2/issues/342
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+test.run            yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+test.target         tests
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+test.args           {*}${build.args}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> destroot.args-append    PREFIX=${prefix}
 
 post-destroot {
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/www/mongrel2/files/mbedtls.patch b/www/mongrel2/files/mbedtls.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..77379fd3ba8
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/www/mongrel2/files/mbedtls.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,91 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Fix build failure with mbedtls 2.11.0+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+https://github.com/mongrel2/mongrel2/issues/327
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+https://github.com/mongrel2/mongrel2/pull/328
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/mongrel2.c.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/mongrel2.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -404,13 +404,6 @@ void taskmain(int argc, char **argv)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     rc = attempt_chroot_drop(srv);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     check(rc == 0, "Major failure in chroot/droppriv, aborting."); 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    // set up rng after chroot
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    // TODO: once mbedtls is updated, we can move this back into Server_create
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    if(srv->use_ssl) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        rc = Server_init_rng(srv);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        check(rc == 0, "Failed to initialize rng for server %s", bdata(srv->uuid));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     final_setup();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     taskcreate(tickertask, NULL, TICKER_TASK_STACK);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/server.c.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/server.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -149,35 +149,45 @@ static int Server_load_ciphers(Server *srv, bstring ssl_ciphers_val)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     return -1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++static int urandom_entropy_func(void *data, unsigned char *output, size_t len)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    FILE* urandom = (FILE *)data;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    size_t rc = fread(output, 1, len, urandom);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if (rc != len) return MBEDTLS_ERR_ENTROPY_SOURCE_FAILED;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    return 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ int Server_init_rng(Server *srv)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     int rc;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    unsigned char buf[MBEDTLS_ENTROPY_BLOCK_SIZE];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     void *ctx = NULL;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    mbedtls_entropy_init( &srv->entropy );
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    FILE *urandom = fopen("/dev/urandom","r");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    // test the entropy source
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    rc = mbedtls_entropy_func(&srv->entropy, buf, MBEDTLS_ENTROPY_BLOCK_SIZE);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    if(rc == 0) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if(urandom != NULL) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         ctx = calloc(sizeof(mbedtls_ctr_drbg_context), 1);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         mbedtls_ctr_drbg_init((mbedtls_ctr_drbg_context *)ctx);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         rc = mbedtls_ctr_drbg_seed((mbedtls_ctr_drbg_context *)ctx,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-            mbedtls_entropy_func, &srv->entropy, NULL, 0);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            urandom_entropy_func, urandom, NULL, 0);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         check(rc == 0, "Init rng failed: ctr_drbg_init returned %d\n", rc);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         srv->rng_func = mbedtls_ctr_drbg_random;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         srv->rng_ctx = ctx;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        log_warn("entropy source unavailable. falling back to havege rng");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if defined(MBEDTLS_HAVEGE_C)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        log_warn("entropy source unavailable. falling back to havege rng");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         ctx = calloc(sizeof(mbedtls_havege_state), 1);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         mbedtls_havege_init((mbedtls_havege_state *)ctx);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         srv->rng_func = mbedtls_havege_random;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         srv->rng_ctx = ctx;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        log_err("Unable to initialize urandom entropy source, and mbedTLS compiled without HAVEGE");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        goto error;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     return 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -278,10 +288,10 @@ Server *Server_create(bstring uuid, bstring default_host,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     // TODO: once mbedtls supports opening urandom early and keeping it open,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     //   put the rng initialization back here (before chroot)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    //if(use_ssl) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    //    rc = Server_init_rng(srv);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    //    check(rc == 0, "Failed to initialize rng for server %s", bdata(uuid));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    //}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if(use_ssl) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        rc = Server_init_rng(srv);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        check(rc == 0, "Failed to initialize rng for server %s", bdata(uuid));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if(blength(chroot) > 0) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         srv->chroot = bstrcpy(chroot); check_mem(srv->chroot);
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/www/mongrel2/files/no-tests.patch b/www/mongrel2/files/no-tests.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..409156842fc
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/www/mongrel2/files/no-tests.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,12 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Do not run the tests automatically.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- Makefile.orig  2019-06-14 14:15:18.000000000 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ Makefile       2020-07-03 03:50:18.000000000 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -17,7 +17,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ TESTS=$(patsubst %.c,%,${TEST_SRC})
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ MAKEOPTS=OPTFLAGS="${CFLAGS} ${NOEXTCFLAGS} ${OPTFLAGS}" LIBS="${LIBS}" DESTDIR="${DESTDIR}" PREFIX="${PREFIX}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-all: bin/mongrel2 tests m2sh procer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++all: bin/mongrel2 m2sh procer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${OBJECTS_NOEXT}: CFLAGS += ${NOEXTCFLAGS}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${OBJECTS}: | builddirs
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/www/mongrel2/files/patch-Makefile.diff b/www/mongrel2/files/patch-Makefile.diff
</span>deleted file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index abbae79acc2..00000000000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/www/mongrel2/files/patch-Makefile.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,8 +0,0 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- Makefile.orig  2014-01-27 00:30:17.000000000 +0100
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ Makefile       2014-03-12 12:36:12.000000000 +0100
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--CFLAGS=-g -O2 -Wall -Wextra -Isrc -Isrc/polarssl/include -pthread -rdynamic -DNDEBUG $(OPTFLAGS) -D_FILE_OFFSET_BITS=64
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+CFLAGS=-g -O2 -Wall -Wextra -Isrc -Isrc/polarssl/include -pthread -DNDEBUG $(OPTFLAGS) -D_FILE_OFFSET_BITS=64
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- LIBS=-lzmq -ldl -lsqlite3 $(OPTLIBS)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- PREFIX?=/usr/local
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/www/mongrel2/files/patch-tools-procer-Makefile.diff b/www/mongrel2/files/patch-tools-procer-Makefile.diff
</span>deleted file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index de255a9a335..00000000000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/www/mongrel2/files/patch-tools-procer-Makefile.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,11 +0,0 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- tools/procer/Makefile.orig     2013-05-25 17:53:41.000000000 -0500
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ tools/procer/Makefile  2013-12-13 19:20:30.000000000 -0600
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -8,7 +8,7 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- procer: ../../build/libm2.a ${OBJECTS}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--  gcc $(OPTFLAGS) $(OPTLIBS) -o $@ ${OBJECTS} ../../build/libm2.a ${LIBS}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  $(CC) $(OPTFLAGS) $(OPTLIBS) -o $@ ${OBJECTS} ../../build/libm2.a ${LIBS}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- clean:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   rm -f *.o procer
</span></pre><pre style='margin:0'>

</pre>