znc: update to 1.6.4

Fixes a few potential segfauls and includes OpenSSL 1.1 compatibilty.

Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
This commit is contained in:
Jonas Gorski 2017-02-10 11:19:21 +01:00
parent b408a80e93
commit 93c9a92d56
4 changed files with 6 additions and 77 deletions

View File

@ -8,13 +8,13 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=znc
PKG_VERSION:=1.6.3
PKG_RELEASE:=5
PKG_VERSION:=1.6.4
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=http://znc.in/releases \
http://znc.in/releases/archive
PKG_MD5SUM:=0dad0307e2faea26b9e304e308f7ec63
PKG_MD5SUM:=431097eb17860bfc980f3e68fdd75f98af4bdeecd793c84835c6cb11c3320d1c
PKG_MAINTAINER:=Jonas Gorski <jogo@openwrt.org>
PKG_LICENSE:=Apache-2.0

View File

@ -9,7 +9,7 @@ Subject: [PATCH] Move the root check to after config parsing
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -304,19 +304,6 @@ int main(int argc, char** argv) {
@@ -312,19 +312,6 @@ int main(int argc, char** argv) {
CUtils::PrintStatus(true, "");
}
@ -29,7 +29,7 @@ Subject: [PATCH] Move the root check to after config parsing
if (bMakeConf) {
if (!pZNC->WriteNewConfig(sConfig)) {
CZNC::DestroyInstance();
@@ -338,6 +325,20 @@ int main(int argc, char** argv) {
@@ -346,6 +333,20 @@ int main(int argc, char** argv) {
return 1;
}

View File

@ -1,71 +0,0 @@
From d81a18d87d15bbf54ddbd675bfa829cf7dfdce9e Mon Sep 17 00:00:00 2001
From: Edoardo Spadolini <kerio00@gmail.com>
Date: Mon, 8 Feb 2016 14:01:51 +0100
Subject: [PATCH] Add some #ifdef feature checks to fix compilation with
BoringSSL
---
Csocket.cc | 12 ++++++++++++
1 file changed, 12 insertions(+)
--- a/src/Csocket.cpp
+++ b/src/Csocket.cpp
@@ -45,9 +45,12 @@
#ifdef HAVE_LIBSSL
#include <stdio.h>
+#include <openssl/ssl.h>
#include <openssl/conf.h>
#include <openssl/engine.h>
+#ifndef OPENSSL_NO_COMP
#include <openssl/comp.h>
+#endif
#endif /* HAVE_LIBSSL */
#ifdef HAVE_ICU
@@ -531,8 +534,12 @@ void ShutdownCsocket()
{
#ifdef HAVE_LIBSSL
ERR_remove_state( 0 );
+#ifndef OPENSSL_NO_ENGINE
ENGINE_cleanup();
+#endif
+#ifndef OPENSSL_IS_BORINGSSL
CONF_modules_unload( 1 );
+#endif
ERR_free_strings();
EVP_cleanup();
CRYPTO_cleanup_all_ex_data();
@@ -573,6 +580,7 @@ bool InitSSL( ECompType eCompressionType
}
#endif /* _WIN32 */
+#ifndef OPENSSL_NO_COMP
COMP_METHOD *cm = NULL;
if( CT_ZLIB & eCompressionType )
@@ -588,6 +596,7 @@ bool InitSSL( ECompType eCompressionType
if( cm )
SSL_COMP_add_compression_method( CT_RLE, cm );
}
+#endif
// setting this up once in the begining
s_iCsockSSLIdx = SSL_get_ex_new_index( 0, NULL, NULL, NULL, NULL );
@@ -1724,6 +1733,8 @@ SSL_CTX * Csock::SetupServerCTX()
#ifndef OPENSSL_NO_ECDH
// Errors for the following block are non-fatal (ECDHE is nice to have
// but not a requirement)
+#ifndef OPENSSL_IS_BORINGSSL
+ // BoringSSL does this thing automatically
#if defined( SSL_CTX_set_ecdh_auto )
// Auto-select sensible curve
if( !SSL_CTX_set_ecdh_auto( pCTX , 1 ) )
@@ -1742,6 +1753,7 @@ SSL_CTX * Csock::SetupServerCTX()
ERR_clear_error();
}
#endif /* SSL_CTX_set_tmp_ecdh */
+#endif /* !OPENSSL_IS_BORINGSSL */
#endif /* OPENSSL_NO_ECDH */
if( !ConfigureCTXOptions( pCTX ) )

View File

@ -1,6 +1,6 @@
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -296,10 +296,12 @@ int main(int argc, char** argv) {
@@ -304,10 +304,12 @@ int main(int argc, char** argv) {
CUtils::PrintStatus(false, "");
CUtils::PrintError("No modules found. Perhaps you didn't install ZNC properly?");
CUtils::PrintError("Read http://wiki.znc.in/Installation for instructions.");