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."
