Noticed an issue.  New diff below.

diff -ru audio/umurmur/Makefile mystuff/audio/umurmur/Makefile
--- audio/umurmur/Makefile      Fri Jun 14 23:33:29 2019
+++ mystuff/audio/umurmur/Makefile      Fri Jul 12 00:11:56 2019
@@ -4,8 +4,8 @@

 GH_ACCOUNT =           fatbob313
 GH_PROJECT =           umurmur
-GH_TAGNAME =           0.2.16a
-REVISION =             6
+GH_TAGNAME =           0.2.17
+REVISION =             0
 CATEGORIES =           audio

 HOMEPAGE =             https://umurmur.net/
@@ -25,6 +25,8 @@
 CONFIGURE_ARGS =       -DSSL=openssl

 NO_TEST =              Yes
+
+SEPARATE_BUILD =       Yes

 pre-configure:
        ${SUBST_CMD} ${WRKSRC}/src/conf.c ${WRKSRC}/src/config.h.in \
diff -ru audio/umurmur/distinfo mystuff/audio/umurmur/distinfo
--- audio/umurmur/distinfo      Sat Jul 11 02:35:36 2015
+++ mystuff/audio/umurmur/distinfo      Thu Jul 11 22:51:10 2019
@@ -1,2 +1,2 @@
-SHA256 (umurmur-0.2.16a.tar.gz) = 1k3493zqpJUdfyrbstzBc4QdHjh+9M0ggsQhUKhDSaU=
-SIZE (umurmur-0.2.16a.tar.gz) = 91187
+SHA256 (umurmur-0.2.17.tar.gz) = 53t7ZhZ2j0ocB0Qq/kmncmkvZnsAwjzIWQnU3QziBtI=
+SIZE (umurmur-0.2.17.tar.gz) = 93786
diff -ru audio/umurmur/patches/patch-CMakeLists_txt
mystuff/audio/umurmur/patches/patch-CMakeLists_txt
--- audio/umurmur/patches/patch-CMakeLists_txt  Fri Jun 12 12:31:39 2015
+++ mystuff/audio/umurmur/patches/patch-CMakeLists_txt  Fri Jul 12 00:06:06 2019
@@ -1,47 +1,26 @@
-$OpenBSD: patch-CMakeLists_txt,v 1.2 2015/06/12 09:50:42 dcoppa Exp $
---- CMakeLists.txt.orig        Tue Apr  7 12:01:12 2015
-+++ CMakeLists.txt     Fri Jun 12 11:32:59 2015
-@@ -57,18 +57,13 @@ elseif("${SSL}" STREQUAL "gnutls")
-   endif(NETTLE_FOUND)
- endif("${SSL}" STREQUAL "openssl")
+$OpenBSD$
+
+Index: CMakeLists.txt
+--- CMakeLists.txt.orig
++++ CMakeLists.txt
+@@ -3,7 +3,7 @@ project(umurmurd C)

--check_library_exists(rt clock_gettime "time.h" HAVE_CLOCK_GETTIME_RT)
-+check_function_exists(clock_gettime HAVE_CLOCK_GETTIME)
+ set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH}
"${CMAKE_SOURCE_DIR}/cmake/Modules/")
+ set(CMAKE_INSTALL_RPATH_USE_LINK_PATH true)
+-set(UMURMUR_BINARY_DIR "${CMAKE_BINARY_DIR}/bin")
++set(UMURMUR_BINARY_DIR "${CMAKE_BINARY_DIR}/sbin")
+ set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${UMURMUR_BINARY_DIR}")

--if(NOT HAVE_CLOCK_GETTIME_RT)
--  check_function_exists(clock_gettime HAVE_CLOCK_GETTIME)
--  if(NOT HAVE_CLOCK_GETTIME)
--    check_library_exists(c clock_get_time "mach/time.h" HAVE_CLOCK_GET_TIME)
--    if(NOT HAVE_CLOCK_GET_TIME)
--      message(FATAL_ERROR "Didn't find clock_gettime() or clock_get_time()!")
--    endif()
-+if(NOT HAVE_CLOCK_GETTIME)
-+  check_library_exists(c clock_get_time "mach/time.h" HAVE_CLOCK_GET_TIME)
-+  if(NOT HAVE_CLOCK_GET_TIME)
-+    message(FATAL_ERROR "Didn't find clock_gettime() or clock_get_time()!")
-   endif()
--else()
--  set(LIBRT rt)
- endif()
+ if(NOT CMAKE_BUILD_TYPE)
+@@ -24,9 +24,9 @@ find_package(ProtobufC REQUIRED)

- if(USE_SHAREDMEMORY_API)
-@@ -90,16 +85,15 @@ add_subdirectory(src)
- configure_file(src/config.h.in ${CMAKE_SOURCE_DIR}/src/config.h)
+ add_subdirectory(src)

- include_directories(${LIBCONFIG_INCLUDE_DIR}
${PROTOBUFC_INCLUDE_DIR} ${SSLIMP_INCLUDE_DIR})
--link_directories(${LIBCONFIG_LIB_DIR} ${PROTOBUFC_LIB_DIR} ${SSLIMP_LIB_DIR})
+-find_path(OLD_CONFIG_FILE NAMES "umurmur.conf" PATHS
${CMAKE_INSTALL_PREFIX} PATH_SUFFIXES "etc")
++find_path(OLD_CONFIG_FILE NAMES "umurmur.conf" PATHS
${CMAKE_INSTALL_PREFIX} PATH_SUFFIXES "share/examples/umurmur")

- add_executable(${PROJECT_NAME} ${SOURCE})
--install(TARGETS ${PROJECT_NAME} RUNTIME DESTINATION "bin")
-+install(TARGETS ${PROJECT_NAME} RUNTIME DESTINATION "sbin")
-
- find_path(OLD_CONFIG_FILE NAMES "umurmur.conf" PATHS
${CMAKE_INSTALL_PREFIX} PATH_SUFFIXES "etc")
  if(NOT OLD_CONFIG_FILE)
 -  install(FILES "umurmur.conf.example" DESTINATION "etc" RENAME
"umurmur.conf")
 +  install(FILES "umurmur.conf.example" DESTINATION
"share/examples/umurmur" RENAME "umurmur.conf")
- endif(NOT OLD_CONFIG_FILE)
+ endif()

- add_definitions(${SSLIMP_CFLAGS})
-
--target_link_libraries(${PROJECT_NAME} ${LIBCONFIG_LIBRARIES}
${PROTOBUFC_LIBRARIES} ${SSLIMP_LIBRARIES} ${LIBRT}
${CRYPTO_LIBRARIES})
-+target_link_libraries(${PROJECT_NAME} ${LIBCONFIG_LIBRARIES}
${PROTOBUFC_LIBRARIES} ${SSLIMP_LIBRARIES} ${CRYPTO_LIBRARIES})
Only in mystuff/audio/umurmur/patches: patch-CMakeLists_txt.orig
Only in mystuff/audio/umurmur/patches: patch-src_CMakeLists_txt
diff -ru audio/umurmur/patches/patch-src_channel_c
mystuff/audio/umurmur/patches/patch-src_channel_c
--- audio/umurmur/patches/patch-src_channel_c   Sat Jul 11 02:35:36 2015
+++ mystuff/audio/umurmur/patches/patch-src_channel_c   Thu Jul 11 22:52:13 2019
@@ -6,9 +6,10 @@

 Fixed mutiple possible null-pointer derefences

---- src/channel.c.orig Sat Jun 20 00:58:46 2015
-+++ src/channel.c      Fri Jul 10 19:01:06 2015
-@@ -195,7 +195,7 @@ void Chan_init()
+Index: src/channel.c
+--- src/channel.c.orig
++++ src/channel.c
+@@ -194,7 +194,7 @@ void Chan_init()

        /* Channel links */
        for (i = 0; ; i++) {
@@ -17,21 +18,3 @@
                channellist_t *chl;
                if (Conf_getNextChannelLink(&chlink, i) < 0) {
                        if (i == 0)
-@@ -223,6 +223,8 @@ void Chan_init()
-                       ch_dst = ch_itr;
-
-               chl = malloc(sizeof(channellist_t));
-+              if(!chl)
-+                      Log_fatal("Out of memory");
-               chl->chan = ch_dst;
-               init_list_entry(&chl->node);
-               list_add_tail(&chl->node, &ch_src->channel_links);
-@@ -381,6 +383,8 @@ void Chan_buildTreeList(channel_t *ch, struct dlist *h
-       channel_t *sub;
-
-       chl = malloc(sizeof(channellist_t));
-+      if(!chl)
-+              Log_fatal("Out of memory");
-       chl->chan = ch;
-       init_list_entry(&chl->node);
-       list_add_tail(&chl->node, head);
diff -ru audio/umurmur/patches/patch-src_client_c
mystuff/audio/umurmur/patches/patch-src_client_c
--- audio/umurmur/patches/patch-src_client_c    Fri Jun 12 12:31:39 2015
+++ mystuff/audio/umurmur/patches/patch-src_client_c    Thu Jul 11 22:52:25 2019
@@ -1,6 +1,7 @@
 $OpenBSD: patch-src_client_c,v 1.7 2015/06/12 09:50:42 dcoppa Exp $
---- src/client.c.orig  Tue Apr  7 12:01:12 2015
-+++ src/client.c       Fri Jun 12 11:05:38 2015
+Index: src/client.c
+--- src/client.c.orig
++++ src/client.c
 @@ -28,6 +28,7 @@
     NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
     SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
@@ -9,7 +10,7 @@
  #include <sys/poll.h>
  #include <sys/socket.h>
  #include <fcntl.h>
-@@ -203,7 +204,7 @@ void Client_token_free(client_t *client)
+@@ -200,7 +201,7 @@ void Client_token_free(client_t *client)
  void recheckCodecVersions(client_t *connectingClient)
  {
        client_t *client_itr = NULL;
@@ -18,7 +19,7 @@
        int users = 0, opus = 0;
        message_t *sendmsg;
        struct dlist codec_list, *itr, *save;
-@@ -686,7 +687,7 @@ void Client_textmessage(client_t *client, char *text)
+@@ -676,7 +677,7 @@ void Client_textmessage(client_t *client, char *text)
        sendmsg->payload.textMessage->message = message;
        sendmsg->payload.textMessage->n_tree_id = 1;
        sendmsg->payload.textMessage->tree_id = tree_id;
diff -ru audio/umurmur/patches/patch-src_config_h_in
mystuff/audio/umurmur/patches/patch-src_config_h_in
--- audio/umurmur/patches/patch-src_config_h_in Fri Jun 12 12:31:39 2015
+++ mystuff/audio/umurmur/patches/patch-src_config_h_in Thu Jul 11 22:52:34 2019
@@ -1,7 +1,8 @@
 $OpenBSD: patch-src_config_h_in,v 1.2 2015/06/12 09:50:42 dcoppa Exp $
---- src/config.h.in.orig       Tue Apr  7 12:01:12 2015
-+++ src/config.h.in    Fri Jun 12 11:11:45 2015
-@@ -8,6 +8,6 @@
+Index: src/config.h.in
+--- src/config.h.in.orig
++++ src/config.h.in
+@@ -11,6 +11,6 @@

  #cmakedefine USE_SHAREDMEMORY_API

diff -ru audio/umurmur/patches/patch-src_messagehandler_c
mystuff/audio/umurmur/patches/patch-src_messagehandler_c
--- audio/umurmur/patches/patch-src_messagehandler_c    Sat Jul 11 02:35:36 2015
+++ mystuff/audio/umurmur/patches/patch-src_messagehandler_c    Thu
Jul 11 22:52:40 2019
@@ -6,19 +6,10 @@

 Fixed mutiple possible null-pointer derefences

---- src/messagehandler.c.orig  Sat Jun 20 00:58:46 2015
-+++ src/messagehandler.c       Fri Jul 10 18:47:15 2015
-@@ -285,6 +285,9 @@ void Mh_handle_message(client_t *client, message_t *ms
-                               sendmsg->payload.channelState->n_links
= ch_itr->linkcount;
-
-                               links = (uint32_t
*)malloc(ch_itr->linkcount * sizeof(uint32_t));
-+                              if(!links)
-+                                      Log_fatal("Out of memory");
-+
-                               list_iterate(itr,
&ch_itr->channel_links) { /* Iterate links */
-                                       channellist_t *chl;
-                                       channel_t *ch;
-@@ -507,9 +510,9 @@ void Mh_handle_message(client_t *client, message_t *ms
+Index: src/messagehandler.c
+--- src/messagehandler.c.orig
++++ src/messagehandler.c
+@@ -506,9 +506,9 @@ void Mh_handle_message(client_t *client, message_t *ms
                        sendmsg->payload.textMessage->n_tree_id = 1;
                        sendmsg->payload.textMessage->tree_id = tree_id;
                        if (client->recording)
diff -ru audio/umurmur/patches/patch-src_messages_c
mystuff/audio/umurmur/patches/patch-src_messages_c
--- audio/umurmur/patches/patch-src_messages_c  Thu Sep  4 12:27:12 2014
+++ mystuff/audio/umurmur/patches/patch-src_messages_c  Thu Jul 11 22:52:50 2019
@@ -1,7 +1,8 @@
 $OpenBSD: patch-src_messages_c,v 1.4 2014/09/04 12:33:27 dcoppa Exp $
---- src/messages.c.orig        Fri Aug  8 08:37:03 2014
-+++ src/messages.c     Thu Sep  4 11:16:15 2014
-@@ -68,7 +68,7 @@ static void Msg_getPreamble(uint8_t *buffer, int *type
+Index: src/messages.c
+--- src/messages.c.orig
++++ src/messages.c
+@@ -69,7 +69,7 @@ static void Msg_getPreamble(uint8_t *buffer, int *type
  #define MAX_MSGSIZE (BUFSIZE - PREAMBLE_SIZE)
  int Msg_messageToNetwork(message_t *msg, uint8_t *buffer)
  {
diff -ru audio/umurmur/patches/patch-src_server_c
mystuff/audio/umurmur/patches/patch-src_server_c
--- audio/umurmur/patches/patch-src_server_c    Tue May 24 12:10:54 2016
+++ mystuff/audio/umurmur/patches/patch-src_server_c    Thu Jul 11 22:54:53 2019
@@ -18,23 +18,10 @@

 Fix size of value passed to setsockopt

---- src/server.c.orig  Sat Jun 20 00:58:46 2015
-+++ src/server.c       Tue May 24 10:20:55 2016
-@@ -95,15 +95,22 @@ void checkIPversions()
- struct sockaddr_storage** Server_setupAddressesAndPorts()
- {
-       struct sockaddr_storage** addresses = calloc(2, sizeof(void*));
-+      if(!addresses)
-+              Log_fatal("Not enough memory to allocate addresses");
-
-       struct sockaddr_storage* v4address = calloc(1, sizeof(struct
sockaddr_storage));
-+      if(!v4address)
-+              Log_fatal("Not enough memory to allocate IPv4 address");
-       v4address->ss_family = AF_INET;
-+
-       struct sockaddr_storage* v6address = calloc(1, sizeof(struct
sockaddr_storage));
-+      if(!v6address)
-+              Log_fatal("Not enough memory to allocate IPv6 address");
+Index: src/server.c
+--- src/server.c.orig
++++ src/server.c
+@@ -103,8 +103,8 @@ struct sockaddr_storage** Server_setupAddressesAndPort
        v6address->ss_family = AF_INET6;

  #if defined(__NetBSD__) || defined(__FreeBSD__) ||
defined(__OpenBSD__) || defined(__APPLE__)
@@ -45,12 +32,3 @@
  #endif

        int error = 0;
-@@ -208,7 +215,7 @@ void Server_runLoop(struct pollfd* pollfds)
-
- void Server_setupTCPSockets(struct sockaddr_storage* addresses[2],
struct pollfd* pollfds)
- {
--      uint8_t yes = 1;
-+      int yes = 1;
-       int sockets[2];
-
-       if (hasv4) {
diff -ru audio/umurmur/patches/patch-src_ssli_openssl_c
mystuff/audio/umurmur/patches/patch-src_ssli_openssl_c
--- audio/umurmur/patches/patch-src_ssli_openssl_c      Tue May 24 12:10:54 2016
+++ mystuff/audio/umurmur/patches/patch-src_ssli_openssl_c      Thu
Jul 11 23:07:00 2019
@@ -21,183 +21,15 @@
 PolarSSL myself. It would be great if somebody could figure that one
 out. Relates to #82, fixes #84 and #77.

---- src/ssli_openssl.c.orig    Sat Jun 20 00:58:46 2015
-+++ src/ssli_openssl.c Tue May 24 10:19:22 2016
-@@ -48,6 +48,8 @@ static RSA *rsa;
+Index: src/ssli_openssl.c
+--- src/ssli_openssl.c.orig
++++ src/ssli_openssl.c
+@@ -49,7 +49,7 @@ static RSA *rsa;
  static SSL_CTX *context;
  static EVP_PKEY *pkey;

+-static char const * ciphers =
"EECDH+CHACHA20:EECDH+AESGCM:EECDH+AES+TLSv1.2:EECDH+AES:AESGCM:AES:!aNULL:!DHE:!kECDH";
 +static char const * ciphers = "EECDH+AESGCM:AES256-SHA:AES128-SHA";
-+
+
  static int verify_callback(int preverify_ok, X509_STORE_CTX *ctx);

- static int SSL_add_ext(X509 * crt, int nid, char *value) {
-@@ -154,106 +156,86 @@ static void SSL_writekey(char *keyfile, RSA *rsa)
-
- static void SSL_initializeCert() {
-
--      char *crt, *key, *pass;
-+      char *crt = (char *)getStrConf(CERTIFICATE);
-+      char *key = (char *)getStrConf(KEY);
-
--      crt = (char *)getStrConf(CERTIFICATE);
--      key = (char *)getStrConf(KEY);
--      pass = (char *)getStrConf(PASSPHRASE);
-+      if (context) {
-+              bool_t did_load_cert =
SSL_CTX_use_certificate_chain_file(context, crt);
-+              rsa = SSL_readprivatekey(key);
-
--      x509 = SSL_readcert(crt);
--      rsa = SSL_readprivatekey(key);
--      if (rsa != NULL) {
--              pkey = EVP_PKEY_new();
--              EVP_PKEY_assign_RSA(pkey, rsa);
--      }
-+              if (!rsa || !did_load_cert) {
-+                      Log_info("Generating new server certificate.");
-
-
--#if 0
--      /* Later ... */
--      if (key && !x509) {
--              qscCert = QSslCertificate(key);
--              if (! qscCert.isNull()) {
--                      logthis("Using certificate from key.");
--              }
--      }
-+                      CRYPTO_mem_ctrl(CRYPTO_MEM_CHECK_ON);
-
--      if (! qscCert.isNull()) {
--              QSsl::KeyAlgorithm alg = qscCert.publicKey().algorithm();
--              /* Fetch algorith from cert */
--              if (! key.isEmpty()) {
--                      /* get key */
--                      qskKey = QSslKey(key, alg, QSsl::Pem,
QSsl::PrivateKey, pass);
--                      if (qskKey.isNull()) {
--                              logthis("Failed to parse key.");
--                      }
--              }
-+                      x509 = X509_new();
-+                      pkey = EVP_PKEY_new();
-+                      rsa = RSA_generate_key(4096,RSA_F4,NULL,NULL);
-+                      EVP_PKEY_assign_RSA(pkey, rsa);
-
--              if (! crt.isEmpty() && qskKey.isNull()) {
--                      /* get key from certificate */
--                      qskKey = QSslKey(crt, alg, QSsl::Pem,
QSsl::PrivateKey, pass);
--                      if (! qskKey.isNull()) {
--                              logthis("Using key from certificate.");
--                      }
--              }
-+                      X509_set_version(x509, 2);
-+                      ASN1_INTEGER_set(X509_get_serialNumber(x509),1);
-+                      X509_gmtime_adj(X509_get_notBefore(x509),0);
-+                      X509_gmtime_adj(X509_get_notAfter(x509),60*60*24*365);
-+                      X509_set_pubkey(x509, pkey);
-
--      }
--#endif
-+                      X509_NAME *name=X509_get_subject_name(x509);
-
--      if (!rsa || !x509) {
--              Log_info("Generating new server certificate.");
-+                      X509_NAME_add_entry_by_txt(name, "CN",
MBSTRING_ASC, (const uint8_t *)"Murmur Autogenerated Certificate v2",
-1, -1, 0);
-+                      X509_set_issuer_name(x509, name);
-+                      SSL_add_ext(x509, NID_basic_constraints,
"critical,CA:FALSE");
-+                      SSL_add_ext(x509, NID_ext_key_usage,
"serverAuth,clientAuth");
-+                      SSL_add_ext(x509, NID_subject_key_identifier, "hash");
-+                      SSL_add_ext(x509, NID_netscape_comment,
"Generated from umurmur");
-
-+                      X509_sign(x509, pkey, EVP_md5());
-
--              CRYPTO_mem_ctrl(CRYPTO_MEM_CHECK_ON);
-+                      SSL_writecert(crt, x509);
-+                      SSL_writekey(key, rsa);
-
--              x509 = X509_new();
--              pkey = EVP_PKEY_new();
--              rsa = RSA_generate_key(1024,RSA_F4,NULL,NULL);
--              EVP_PKEY_assign_RSA(pkey, rsa);
-+                      SSL_CTX_use_certificate(context, x509);
-+              } else {
-+                pkey = EVP_PKEY_new();
-+                EVP_PKEY_assign_RSA(pkey, rsa);
-+              }
-
--              X509_set_version(x509, 2);
--              ASN1_INTEGER_set(X509_get_serialNumber(x509),1);
--              X509_gmtime_adj(X509_get_notBefore(x509),0);
--              X509_gmtime_adj(X509_get_notAfter(x509),60*60*24*365);
--              X509_set_pubkey(x509, pkey);
-+              SSL_CTX_use_PrivateKey(context, pkey);
-
--              X509_NAME *name=X509_get_subject_name(x509);
--
--              X509_NAME_add_entry_by_txt(name, "CN", MBSTRING_ASC,
(const uint8_t *)"Murmur Autogenerated Certificate v2", -1, -1, 0);
--              X509_set_issuer_name(x509, name);
--              SSL_add_ext(x509, NID_basic_constraints, "critical,CA:FALSE");
--              SSL_add_ext(x509, NID_ext_key_usage, "serverAuth,clientAuth");
--              SSL_add_ext(x509, NID_subject_key_identifier, "hash");
--              SSL_add_ext(x509, NID_netscape_comment, "Generated
from umurmur");
--
--              X509_sign(x509, pkey, EVP_md5());
--
--              SSL_writecert(crt, x509);
--              SSL_writekey(key, rsa);
-+      } else {
-+              Log_fatal("Failed to initialize TLS context.");
-       }
-
- }
-
- void SSLi_init(void)
- {
--      SSL_METHOD *method;
-       SSL *ssl;
-       int i, offset = 0, cipherstringlen = 0;
-       STACK_OF(SSL_CIPHER) *cipherlist = NULL, *cipherlist_new = NULL;
-       SSL_CIPHER *cipher;
--      char *cipherstring, tempstring[128];
-+      char *cipherstring;
-
-       SSL_library_init();
--      OpenSSL_add_all_algorithms();           /* load & register all
cryptos, etc. */
--      SSL_load_error_strings();                       /* load all
error messages */
--      ERR_load_crypto_strings();                      /* load all
error messages */
--      method = SSLv23_server_method();                /* create new
server-method instance */
--      context = SSL_CTX_new(method);                  /* create new
context from method */
-+      OpenSSL_add_all_algorithms();
-+      SSL_load_error_strings();
-+      ERR_load_crypto_strings();
-+
-+      context = SSL_CTX_new(SSLv23_server_method());
-+      SSL_CTX_set_options(context, SSL_OP_NO_SSLv2);
-+      SSL_CTX_set_options(context, SSL_OP_NO_SSLv3);
-       if (context == NULL)
-       {
-               ERR_print_errors_fp(stderr);
-               abort();
-       }
-
-+      SSL_CTX_set_cipher_list(context, ciphers);
-+
-+      EC_KEY *ecdhkey = EC_KEY_new_by_curve_name(NID_X9_62_prime256v1);
-+      SSL_CTX_set_tmp_ecdh(context, ecdhkey);
-+      EC_KEY_free(ecdhkey);
-+
-       char const * sslCAPath = getStrConf(CAPATH);
-       if(sslCAPath != NULL)
-       {
-@@ -261,12 +243,6 @@ void SSLi_init(void)
-       }
-
-       SSL_initializeCert();
--      if (SSL_CTX_use_certificate(context, x509) <= 0)
--              Log_fatal("Failed to initialize cert");
--      if (SSL_CTX_use_PrivateKey(context, pkey) <= 0) {
--              ERR_print_errors_fp(stderr);
--              Log_fatal("Failed to initialize private key");
--      }
-
-       /* Set cipher list */
-       ssl = SSL_new(context);
Only in mystuff/audio/umurmur/patches: patch-src_ssli_openssl_c.orig
diff -ru audio/umurmur/patches/patch-umurmur_conf_example
mystuff/audio/umurmur/patches/patch-umurmur_conf_example
--- audio/umurmur/patches/patch-umurmur_conf_example    Fri Oct  4 03:25:09 2013
+++ mystuff/audio/umurmur/patches/patch-umurmur_conf_example    Thu
Jul 11 22:53:04 2019
@@ -1,6 +1,7 @@
 $OpenBSD: patch-umurmur_conf_example,v 1.4 2013/10/04 08:25:09 dcoppa Exp $
---- umurmur.conf.example.orig  Sun Jun  9 20:56:17 2013
-+++ umurmur.conf.example       Tue Oct  1 14:15:41 2013
+Index: umurmur.conf.example
+--- umurmur.conf.example.orig
++++ umurmur.conf.example
 @@ -1,7 +1,7 @@
  max_bandwidth = 48000;
  welcometext = "Welcome to uMurmur!";
@@ -11,7 +12,7 @@
  password = "";
  # admin_password = "test";   # Set to enable admin functionality.
  # ban_length = 0;            # Length in seconds for a ban. Default
is 0. 0 = forever.
-@@ -17,9 +17,9 @@ max_users = 10;
+@@ -18,9 +18,9 @@ max_users = 10;

  # username and groupname for privilege dropping.
  # Will attempt to switch user if set.

On Fri, Jul 12, 2019 at 12:10 AM J Sisson <[email protected]> wrote:
>
> Inline diff updates umurmur from 0.2.16a to 0.2.17.  Generated with
> diff -ru.  If that needs to change, please advise!
>
> Gmail most likely fubar'd the whitespace (should be in plaintext mode,
> but...it's gmail).
>
> Also, the build system used by umurmur changed from 0.2.16a to 0.2.17.
> Build/Functional testing (particularly on non-amd64) is greatly
> appreciated!
>
> Jonathon
>
>
> diff -ru audio/umurmur/Makefile mystuff/audio/umurmur/Makefile
> --- audio/umurmur/Makefile      Fri Jun 14 23:33:29 2019
> +++ mystuff/audio/umurmur/Makefile      Thu Jul 11 23:40:48 2019
> @@ -4,8 +4,8 @@
>
>  GH_ACCOUNT =           fatbob313
>  GH_PROJECT =           umurmur
> -GH_TAGNAME =           0.2.16a
> -REVISION =             6
> +GH_TAGNAME =           0.2.17
> +REVISION =             0
>  CATEGORIES =           audio
>
>  HOMEPAGE =             https://umurmur.net/
> @@ -22,9 +22,11 @@
>  LIB_DEPENDS =          devel/libconfig \
>                         devel/protobuf-c>=1.0.1
>
> -CONFIGURE_ARGS =       -DSSL=openssl
> +CONFIGURE_ARGS =       -DSSL=openssl
> -DUMURMUR_BINARY_DIR="${CMAKE_BINARY_DIR}/sbin"
>
>  NO_TEST =              Yes
> +
> +SEPARATE_BUILD =       Yes
>
>  pre-configure:
>         ${SUBST_CMD} ${WRKSRC}/src/conf.c ${WRKSRC}/src/config.h.in \
> diff -ru audio/umurmur/distinfo mystuff/audio/umurmur/distinfo
> --- audio/umurmur/distinfo      Sat Jul 11 02:35:36 2015
> +++ mystuff/audio/umurmur/distinfo      Thu Jul 11 22:51:10 2019
> @@ -1,2 +1,2 @@
> -SHA256 (umurmur-0.2.16a.tar.gz) = 
> 1k3493zqpJUdfyrbstzBc4QdHjh+9M0ggsQhUKhDSaU=
> -SIZE (umurmur-0.2.16a.tar.gz) = 91187
> +SHA256 (umurmur-0.2.17.tar.gz) = 53t7ZhZ2j0ocB0Qq/kmncmkvZnsAwjzIWQnU3QziBtI=
> +SIZE (umurmur-0.2.17.tar.gz) = 93786
> diff -ru audio/umurmur/patches/patch-CMakeLists_txt
> mystuff/audio/umurmur/patches/patch-CMakeLists_txt
> --- audio/umurmur/patches/patch-CMakeLists_txt  Fri Jun 12 12:31:39 2015
> +++ mystuff/audio/umurmur/patches/patch-CMakeLists_txt  Fri Jul 12 00:06:06 
> 2019
> @@ -1,47 +1,26 @@
> -$OpenBSD: patch-CMakeLists_txt,v 1.2 2015/06/12 09:50:42 dcoppa Exp $
> ---- CMakeLists.txt.orig        Tue Apr  7 12:01:12 2015
> -+++ CMakeLists.txt     Fri Jun 12 11:32:59 2015
> -@@ -57,18 +57,13 @@ elseif("${SSL}" STREQUAL "gnutls")
> -   endif(NETTLE_FOUND)
> - endif("${SSL}" STREQUAL "openssl")
> +$OpenBSD$
> +
> +Index: CMakeLists.txt
> +--- CMakeLists.txt.orig
> ++++ CMakeLists.txt
> +@@ -3,7 +3,7 @@ project(umurmurd C)
>
> --check_library_exists(rt clock_gettime "time.h" HAVE_CLOCK_GETTIME_RT)
> -+check_function_exists(clock_gettime HAVE_CLOCK_GETTIME)
> + set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH}
> "${CMAKE_SOURCE_DIR}/cmake/Modules/")
> + set(CMAKE_INSTALL_RPATH_USE_LINK_PATH true)
> +-set(UMURMUR_BINARY_DIR "${CMAKE_BINARY_DIR}/bin")
> ++set(UMURMUR_BINARY_DIR "${CMAKE_BINARY_DIR}/sbin")
> + set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${UMURMUR_BINARY_DIR}")
>
> --if(NOT HAVE_CLOCK_GETTIME_RT)
> --  check_function_exists(clock_gettime HAVE_CLOCK_GETTIME)
> --  if(NOT HAVE_CLOCK_GETTIME)
> --    check_library_exists(c clock_get_time "mach/time.h" HAVE_CLOCK_GET_TIME)
> --    if(NOT HAVE_CLOCK_GET_TIME)
> --      message(FATAL_ERROR "Didn't find clock_gettime() or 
> clock_get_time()!")
> --    endif()
> -+if(NOT HAVE_CLOCK_GETTIME)
> -+  check_library_exists(c clock_get_time "mach/time.h" HAVE_CLOCK_GET_TIME)
> -+  if(NOT HAVE_CLOCK_GET_TIME)
> -+    message(FATAL_ERROR "Didn't find clock_gettime() or clock_get_time()!")
> -   endif()
> --else()
> --  set(LIBRT rt)
> - endif()
> + if(NOT CMAKE_BUILD_TYPE)
> +@@ -24,9 +24,9 @@ find_package(ProtobufC REQUIRED)
>
> - if(USE_SHAREDMEMORY_API)
> -@@ -90,16 +85,15 @@ add_subdirectory(src)
> - configure_file(src/config.h.in ${CMAKE_SOURCE_DIR}/src/config.h)
> + add_subdirectory(src)
>
> - include_directories(${LIBCONFIG_INCLUDE_DIR}
> ${PROTOBUFC_INCLUDE_DIR} ${SSLIMP_INCLUDE_DIR})
> --link_directories(${LIBCONFIG_LIB_DIR} ${PROTOBUFC_LIB_DIR} 
> ${SSLIMP_LIB_DIR})
> +-find_path(OLD_CONFIG_FILE NAMES "umurmur.conf" PATHS
> ${CMAKE_INSTALL_PREFIX} PATH_SUFFIXES "etc")
> ++find_path(OLD_CONFIG_FILE NAMES "umurmur.conf" PATHS
> ${CMAKE_INSTALL_PREFIX} PATH_SUFFIXES "share/examples/umurmur")
>
> - add_executable(${PROJECT_NAME} ${SOURCE})
> --install(TARGETS ${PROJECT_NAME} RUNTIME DESTINATION "bin")
> -+install(TARGETS ${PROJECT_NAME} RUNTIME DESTINATION "sbin")
> -
> - find_path(OLD_CONFIG_FILE NAMES "umurmur.conf" PATHS
> ${CMAKE_INSTALL_PREFIX} PATH_SUFFIXES "etc")
>   if(NOT OLD_CONFIG_FILE)
>  -  install(FILES "umurmur.conf.example" DESTINATION "etc" RENAME
> "umurmur.conf")
>  +  install(FILES "umurmur.conf.example" DESTINATION
> "share/examples/umurmur" RENAME "umurmur.conf")
> - endif(NOT OLD_CONFIG_FILE)
> + endif()
>
> - add_definitions(${SSLIMP_CFLAGS})
> -
> --target_link_libraries(${PROJECT_NAME} ${LIBCONFIG_LIBRARIES}
> ${PROTOBUFC_LIBRARIES} ${SSLIMP_LIBRARIES} ${LIBRT}
> ${CRYPTO_LIBRARIES})
> -+target_link_libraries(${PROJECT_NAME} ${LIBCONFIG_LIBRARIES}
> ${PROTOBUFC_LIBRARIES} ${SSLIMP_LIBRARIES} ${CRYPTO_LIBRARIES})
> Only in mystuff/audio/umurmur/patches: patch-CMakeLists_txt.orig
> Only in mystuff/audio/umurmur/patches: patch-src_CMakeLists_txt
> diff -ru audio/umurmur/patches/patch-src_channel_c
> mystuff/audio/umurmur/patches/patch-src_channel_c
> --- audio/umurmur/patches/patch-src_channel_c   Sat Jul 11 02:35:36 2015
> +++ mystuff/audio/umurmur/patches/patch-src_channel_c   Thu Jul 11 22:52:13 
> 2019
> @@ -6,9 +6,10 @@
>
>  Fixed mutiple possible null-pointer derefences
>
> ---- src/channel.c.orig Sat Jun 20 00:58:46 2015
> -+++ src/channel.c      Fri Jul 10 19:01:06 2015
> -@@ -195,7 +195,7 @@ void Chan_init()
> +Index: src/channel.c
> +--- src/channel.c.orig
> ++++ src/channel.c
> +@@ -194,7 +194,7 @@ void Chan_init()
>
>         /* Channel links */
>         for (i = 0; ; i++) {
> @@ -17,21 +18,3 @@
>                 channellist_t *chl;
>                 if (Conf_getNextChannelLink(&chlink, i) < 0) {
>                         if (i == 0)
> -@@ -223,6 +223,8 @@ void Chan_init()
> -                       ch_dst = ch_itr;
> -
> -               chl = malloc(sizeof(channellist_t));
> -+              if(!chl)
> -+                      Log_fatal("Out of memory");
> -               chl->chan = ch_dst;
> -               init_list_entry(&chl->node);
> -               list_add_tail(&chl->node, &ch_src->channel_links);
> -@@ -381,6 +383,8 @@ void Chan_buildTreeList(channel_t *ch, struct dlist *h
> -       channel_t *sub;
> -
> -       chl = malloc(sizeof(channellist_t));
> -+      if(!chl)
> -+              Log_fatal("Out of memory");
> -       chl->chan = ch;
> -       init_list_entry(&chl->node);
> -       list_add_tail(&chl->node, head);
> diff -ru audio/umurmur/patches/patch-src_client_c
> mystuff/audio/umurmur/patches/patch-src_client_c
> --- audio/umurmur/patches/patch-src_client_c    Fri Jun 12 12:31:39 2015
> +++ mystuff/audio/umurmur/patches/patch-src_client_c    Thu Jul 11 22:52:25 
> 2019
> @@ -1,6 +1,7 @@
>  $OpenBSD: patch-src_client_c,v 1.7 2015/06/12 09:50:42 dcoppa Exp $
> ---- src/client.c.orig  Tue Apr  7 12:01:12 2015
> -+++ src/client.c       Fri Jun 12 11:05:38 2015
> +Index: src/client.c
> +--- src/client.c.orig
> ++++ src/client.c
>  @@ -28,6 +28,7 @@
>      NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
>      SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
> @@ -9,7 +10,7 @@
>   #include <sys/poll.h>
>   #include <sys/socket.h>
>   #include <fcntl.h>
> -@@ -203,7 +204,7 @@ void Client_token_free(client_t *client)
> +@@ -200,7 +201,7 @@ void Client_token_free(client_t *client)
>   void recheckCodecVersions(client_t *connectingClient)
>   {
>         client_t *client_itr = NULL;
> @@ -18,7 +19,7 @@
>         int users = 0, opus = 0;
>         message_t *sendmsg;
>         struct dlist codec_list, *itr, *save;
> -@@ -686,7 +687,7 @@ void Client_textmessage(client_t *client, char *text)
> +@@ -676,7 +677,7 @@ void Client_textmessage(client_t *client, char *text)
>         sendmsg->payload.textMessage->message = message;
>         sendmsg->payload.textMessage->n_tree_id = 1;
>         sendmsg->payload.textMessage->tree_id = tree_id;
> diff -ru audio/umurmur/patches/patch-src_config_h_in
> mystuff/audio/umurmur/patches/patch-src_config_h_in
> --- audio/umurmur/patches/patch-src_config_h_in Fri Jun 12 12:31:39 2015
> +++ mystuff/audio/umurmur/patches/patch-src_config_h_in Thu Jul 11 22:52:34 
> 2019
> @@ -1,7 +1,8 @@
>  $OpenBSD: patch-src_config_h_in,v 1.2 2015/06/12 09:50:42 dcoppa Exp $
> ---- src/config.h.in.orig       Tue Apr  7 12:01:12 2015
> -+++ src/config.h.in    Fri Jun 12 11:11:45 2015
> -@@ -8,6 +8,6 @@
> +Index: src/config.h.in
> +--- src/config.h.in.orig
> ++++ src/config.h.in
> +@@ -11,6 +11,6 @@
>
>   #cmakedefine USE_SHAREDMEMORY_API
>
> diff -ru audio/umurmur/patches/patch-src_messagehandler_c
> mystuff/audio/umurmur/patches/patch-src_messagehandler_c
> --- audio/umurmur/patches/patch-src_messagehandler_c    Sat Jul 11 02:35:36 
> 2015
> +++ mystuff/audio/umurmur/patches/patch-src_messagehandler_c    Thu
> Jul 11 22:52:40 2019
> @@ -6,19 +6,10 @@
>
>  Fixed mutiple possible null-pointer derefences
>
> ---- src/messagehandler.c.orig  Sat Jun 20 00:58:46 2015
> -+++ src/messagehandler.c       Fri Jul 10 18:47:15 2015
> -@@ -285,6 +285,9 @@ void Mh_handle_message(client_t *client, message_t *ms
> -                               sendmsg->payload.channelState->n_links
> = ch_itr->linkcount;
> -
> -                               links = (uint32_t
> *)malloc(ch_itr->linkcount * sizeof(uint32_t));
> -+                              if(!links)
> -+                                      Log_fatal("Out of memory");
> -+
> -                               list_iterate(itr,
> &ch_itr->channel_links) { /* Iterate links */
> -                                       channellist_t *chl;
> -                                       channel_t *ch;
> -@@ -507,9 +510,9 @@ void Mh_handle_message(client_t *client, message_t *ms
> +Index: src/messagehandler.c
> +--- src/messagehandler.c.orig
> ++++ src/messagehandler.c
> +@@ -506,9 +506,9 @@ void Mh_handle_message(client_t *client, message_t *ms
>                         sendmsg->payload.textMessage->n_tree_id = 1;
>                         sendmsg->payload.textMessage->tree_id = tree_id;
>                         if (client->recording)
> diff -ru audio/umurmur/patches/patch-src_messages_c
> mystuff/audio/umurmur/patches/patch-src_messages_c
> --- audio/umurmur/patches/patch-src_messages_c  Thu Sep  4 12:27:12 2014
> +++ mystuff/audio/umurmur/patches/patch-src_messages_c  Thu Jul 11 22:52:50 
> 2019
> @@ -1,7 +1,8 @@
>  $OpenBSD: patch-src_messages_c,v 1.4 2014/09/04 12:33:27 dcoppa Exp $
> ---- src/messages.c.orig        Fri Aug  8 08:37:03 2014
> -+++ src/messages.c     Thu Sep  4 11:16:15 2014
> -@@ -68,7 +68,7 @@ static void Msg_getPreamble(uint8_t *buffer, int *type
> +Index: src/messages.c
> +--- src/messages.c.orig
> ++++ src/messages.c
> +@@ -69,7 +69,7 @@ static void Msg_getPreamble(uint8_t *buffer, int *type
>   #define MAX_MSGSIZE (BUFSIZE - PREAMBLE_SIZE)
>   int Msg_messageToNetwork(message_t *msg, uint8_t *buffer)
>   {
> diff -ru audio/umurmur/patches/patch-src_server_c
> mystuff/audio/umurmur/patches/patch-src_server_c
> --- audio/umurmur/patches/patch-src_server_c    Tue May 24 12:10:54 2016
> +++ mystuff/audio/umurmur/patches/patch-src_server_c    Thu Jul 11 22:54:53 
> 2019
> @@ -18,23 +18,10 @@
>
>  Fix size of value passed to setsockopt
>
> ---- src/server.c.orig  Sat Jun 20 00:58:46 2015
> -+++ src/server.c       Tue May 24 10:20:55 2016
> -@@ -95,15 +95,22 @@ void checkIPversions()
> - struct sockaddr_storage** Server_setupAddressesAndPorts()
> - {
> -       struct sockaddr_storage** addresses = calloc(2, sizeof(void*));
> -+      if(!addresses)
> -+              Log_fatal("Not enough memory to allocate addresses");
> -
> -       struct sockaddr_storage* v4address = calloc(1, sizeof(struct
> sockaddr_storage));
> -+      if(!v4address)
> -+              Log_fatal("Not enough memory to allocate IPv4 address");
> -       v4address->ss_family = AF_INET;
> -+
> -       struct sockaddr_storage* v6address = calloc(1, sizeof(struct
> sockaddr_storage));
> -+      if(!v6address)
> -+              Log_fatal("Not enough memory to allocate IPv6 address");
> +Index: src/server.c
> +--- src/server.c.orig
> ++++ src/server.c
> +@@ -103,8 +103,8 @@ struct sockaddr_storage** Server_setupAddressesAndPort
>         v6address->ss_family = AF_INET6;
>
>   #if defined(__NetBSD__) || defined(__FreeBSD__) ||
> defined(__OpenBSD__) || defined(__APPLE__)
> @@ -45,12 +32,3 @@
>   #endif
>
>         int error = 0;
> -@@ -208,7 +215,7 @@ void Server_runLoop(struct pollfd* pollfds)
> -
> - void Server_setupTCPSockets(struct sockaddr_storage* addresses[2],
> struct pollfd* pollfds)
> - {
> --      uint8_t yes = 1;
> -+      int yes = 1;
> -       int sockets[2];
> -
> -       if (hasv4) {
> diff -ru audio/umurmur/patches/patch-src_ssli_openssl_c
> mystuff/audio/umurmur/patches/patch-src_ssli_openssl_c
> --- audio/umurmur/patches/patch-src_ssli_openssl_c      Tue May 24 12:10:54 
> 2016
> +++ mystuff/audio/umurmur/patches/patch-src_ssli_openssl_c      Thu
> Jul 11 23:07:00 2019
> @@ -21,183 +21,15 @@
>  PolarSSL myself. It would be great if somebody could figure that one
>  out. Relates to #82, fixes #84 and #77.
>
> ---- src/ssli_openssl.c.orig    Sat Jun 20 00:58:46 2015
> -+++ src/ssli_openssl.c Tue May 24 10:19:22 2016
> -@@ -48,6 +48,8 @@ static RSA *rsa;
> +Index: src/ssli_openssl.c
> +--- src/ssli_openssl.c.orig
> ++++ src/ssli_openssl.c
> +@@ -49,7 +49,7 @@ static RSA *rsa;
>   static SSL_CTX *context;
>   static EVP_PKEY *pkey;
>
> +-static char const * ciphers =
> "EECDH+CHACHA20:EECDH+AESGCM:EECDH+AES+TLSv1.2:EECDH+AES:AESGCM:AES:!aNULL:!DHE:!kECDH";
>  +static char const * ciphers = "EECDH+AESGCM:AES256-SHA:AES128-SHA";
> -+
> +
>   static int verify_callback(int preverify_ok, X509_STORE_CTX *ctx);
>
> - static int SSL_add_ext(X509 * crt, int nid, char *value) {
> -@@ -154,106 +156,86 @@ static void SSL_writekey(char *keyfile, RSA *rsa)
> -
> - static void SSL_initializeCert() {
> -
> --      char *crt, *key, *pass;
> -+      char *crt = (char *)getStrConf(CERTIFICATE);
> -+      char *key = (char *)getStrConf(KEY);
> -
> --      crt = (char *)getStrConf(CERTIFICATE);
> --      key = (char *)getStrConf(KEY);
> --      pass = (char *)getStrConf(PASSPHRASE);
> -+      if (context) {
> -+              bool_t did_load_cert =
> SSL_CTX_use_certificate_chain_file(context, crt);
> -+              rsa = SSL_readprivatekey(key);
> -
> --      x509 = SSL_readcert(crt);
> --      rsa = SSL_readprivatekey(key);
> --      if (rsa != NULL) {
> --              pkey = EVP_PKEY_new();
> --              EVP_PKEY_assign_RSA(pkey, rsa);
> --      }
> -+              if (!rsa || !did_load_cert) {
> -+                      Log_info("Generating new server certificate.");
> -
> -
> --#if 0
> --      /* Later ... */
> --      if (key && !x509) {
> --              qscCert = QSslCertificate(key);
> --              if (! qscCert.isNull()) {
> --                      logthis("Using certificate from key.");
> --              }
> --      }
> -+                      CRYPTO_mem_ctrl(CRYPTO_MEM_CHECK_ON);
> -
> --      if (! qscCert.isNull()) {
> --              QSsl::KeyAlgorithm alg = qscCert.publicKey().algorithm();
> --              /* Fetch algorith from cert */
> --              if (! key.isEmpty()) {
> --                      /* get key */
> --                      qskKey = QSslKey(key, alg, QSsl::Pem,
> QSsl::PrivateKey, pass);
> --                      if (qskKey.isNull()) {
> --                              logthis("Failed to parse key.");
> --                      }
> --              }
> -+                      x509 = X509_new();
> -+                      pkey = EVP_PKEY_new();
> -+                      rsa = RSA_generate_key(4096,RSA_F4,NULL,NULL);
> -+                      EVP_PKEY_assign_RSA(pkey, rsa);
> -
> --              if (! crt.isEmpty() && qskKey.isNull()) {
> --                      /* get key from certificate */
> --                      qskKey = QSslKey(crt, alg, QSsl::Pem,
> QSsl::PrivateKey, pass);
> --                      if (! qskKey.isNull()) {
> --                              logthis("Using key from certificate.");
> --                      }
> --              }
> -+                      X509_set_version(x509, 2);
> -+                      ASN1_INTEGER_set(X509_get_serialNumber(x509),1);
> -+                      X509_gmtime_adj(X509_get_notBefore(x509),0);
> -+                      X509_gmtime_adj(X509_get_notAfter(x509),60*60*24*365);
> -+                      X509_set_pubkey(x509, pkey);
> -
> --      }
> --#endif
> -+                      X509_NAME *name=X509_get_subject_name(x509);
> -
> --      if (!rsa || !x509) {
> --              Log_info("Generating new server certificate.");
> -+                      X509_NAME_add_entry_by_txt(name, "CN",
> MBSTRING_ASC, (const uint8_t *)"Murmur Autogenerated Certificate v2",
> -1, -1, 0);
> -+                      X509_set_issuer_name(x509, name);
> -+                      SSL_add_ext(x509, NID_basic_constraints,
> "critical,CA:FALSE");
> -+                      SSL_add_ext(x509, NID_ext_key_usage,
> "serverAuth,clientAuth");
> -+                      SSL_add_ext(x509, NID_subject_key_identifier, "hash");
> -+                      SSL_add_ext(x509, NID_netscape_comment,
> "Generated from umurmur");
> -
> -+                      X509_sign(x509, pkey, EVP_md5());
> -
> --              CRYPTO_mem_ctrl(CRYPTO_MEM_CHECK_ON);
> -+                      SSL_writecert(crt, x509);
> -+                      SSL_writekey(key, rsa);
> -
> --              x509 = X509_new();
> --              pkey = EVP_PKEY_new();
> --              rsa = RSA_generate_key(1024,RSA_F4,NULL,NULL);
> --              EVP_PKEY_assign_RSA(pkey, rsa);
> -+                      SSL_CTX_use_certificate(context, x509);
> -+              } else {
> -+                pkey = EVP_PKEY_new();
> -+                EVP_PKEY_assign_RSA(pkey, rsa);
> -+              }
> -
> --              X509_set_version(x509, 2);
> --              ASN1_INTEGER_set(X509_get_serialNumber(x509),1);
> --              X509_gmtime_adj(X509_get_notBefore(x509),0);
> --              X509_gmtime_adj(X509_get_notAfter(x509),60*60*24*365);
> --              X509_set_pubkey(x509, pkey);
> -+              SSL_CTX_use_PrivateKey(context, pkey);
> -
> --              X509_NAME *name=X509_get_subject_name(x509);
> --
> --              X509_NAME_add_entry_by_txt(name, "CN", MBSTRING_ASC,
> (const uint8_t *)"Murmur Autogenerated Certificate v2", -1, -1, 0);
> --              X509_set_issuer_name(x509, name);
> --              SSL_add_ext(x509, NID_basic_constraints, "critical,CA:FALSE");
> --              SSL_add_ext(x509, NID_ext_key_usage, "serverAuth,clientAuth");
> --              SSL_add_ext(x509, NID_subject_key_identifier, "hash");
> --              SSL_add_ext(x509, NID_netscape_comment, "Generated
> from umurmur");
> --
> --              X509_sign(x509, pkey, EVP_md5());
> --
> --              SSL_writecert(crt, x509);
> --              SSL_writekey(key, rsa);
> -+      } else {
> -+              Log_fatal("Failed to initialize TLS context.");
> -       }
> -
> - }
> -
> - void SSLi_init(void)
> - {
> --      SSL_METHOD *method;
> -       SSL *ssl;
> -       int i, offset = 0, cipherstringlen = 0;
> -       STACK_OF(SSL_CIPHER) *cipherlist = NULL, *cipherlist_new = NULL;
> -       SSL_CIPHER *cipher;
> --      char *cipherstring, tempstring[128];
> -+      char *cipherstring;
> -
> -       SSL_library_init();
> --      OpenSSL_add_all_algorithms();           /* load & register all
> cryptos, etc. */
> --      SSL_load_error_strings();                       /* load all
> error messages */
> --      ERR_load_crypto_strings();                      /* load all
> error messages */
> --      method = SSLv23_server_method();                /* create new
> server-method instance */
> --      context = SSL_CTX_new(method);                  /* create new
> context from method */
> -+      OpenSSL_add_all_algorithms();
> -+      SSL_load_error_strings();
> -+      ERR_load_crypto_strings();
> -+
> -+      context = SSL_CTX_new(SSLv23_server_method());
> -+      SSL_CTX_set_options(context, SSL_OP_NO_SSLv2);
> -+      SSL_CTX_set_options(context, SSL_OP_NO_SSLv3);
> -       if (context == NULL)
> -       {
> -               ERR_print_errors_fp(stderr);
> -               abort();
> -       }
> -
> -+      SSL_CTX_set_cipher_list(context, ciphers);
> -+
> -+      EC_KEY *ecdhkey = EC_KEY_new_by_curve_name(NID_X9_62_prime256v1);
> -+      SSL_CTX_set_tmp_ecdh(context, ecdhkey);
> -+      EC_KEY_free(ecdhkey);
> -+
> -       char const * sslCAPath = getStrConf(CAPATH);
> -       if(sslCAPath != NULL)
> -       {
> -@@ -261,12 +243,6 @@ void SSLi_init(void)
> -       }
> -
> -       SSL_initializeCert();
> --      if (SSL_CTX_use_certificate(context, x509) <= 0)
> --              Log_fatal("Failed to initialize cert");
> --      if (SSL_CTX_use_PrivateKey(context, pkey) <= 0) {
> --              ERR_print_errors_fp(stderr);
> --              Log_fatal("Failed to initialize private key");
> --      }
> -
> -       /* Set cipher list */
> -       ssl = SSL_new(context);
> Only in mystuff/audio/umurmur/patches: patch-src_ssli_openssl_c.orig
> diff -ru audio/umurmur/patches/patch-umurmur_conf_example
> mystuff/audio/umurmur/patches/patch-umurmur_conf_example
> --- audio/umurmur/patches/patch-umurmur_conf_example    Fri Oct  4 03:25:09 
> 2013
> +++ mystuff/audio/umurmur/patches/patch-umurmur_conf_example    Thu
> Jul 11 22:53:04 2019
> @@ -1,6 +1,7 @@
>  $OpenBSD: patch-umurmur_conf_example,v 1.4 2013/10/04 08:25:09 dcoppa Exp $
> ---- umurmur.conf.example.orig  Sun Jun  9 20:56:17 2013
> -+++ umurmur.conf.example       Tue Oct  1 14:15:41 2013
> +Index: umurmur.conf.example
> +--- umurmur.conf.example.orig
> ++++ umurmur.conf.example
>  @@ -1,7 +1,7 @@
>   max_bandwidth = 48000;
>   welcometext = "Welcome to uMurmur!";
> @@ -11,7 +12,7 @@
>   password = "";
>   # admin_password = "test";   # Set to enable admin functionality.
>   # ban_length = 0;            # Length in seconds for a ban. Default
> is 0. 0 = forever.
> -@@ -17,9 +17,9 @@ max_users = 10;
> +@@ -18,9 +18,9 @@ max_users = 10;
>
>   # username and groupname for privilege dropping.
>   # Will attempt to switch user if set.



-- 
"In the real world, Scully would almost always be right and Mulder
would almost always be wrong." -Carpetsmoker

"the biggest proof of intelligent life out there is... they've not
contacted us."
-EvilBagel

"The doctors in a mental institution were thinking of releasing a
certain schizophrenic patient. They decided to give him a test under a
lie detector. One of the questions they asked him was, "Are you
Napoleon?" He replied, "No." The machine showed that he was lying."

Reply via email to