Browse Source

Merge pull request #9531 from neheb/rto

rtorrent bump
lilik-openwrt-22.03
Rosen Penev 5 years ago
committed by GitHub
parent
commit
626949defc
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 21 additions and 172 deletions
  1. +6
    -6
      libs/libsigc++/Makefile
  2. +7
    -5
      libs/libtorrent/Makefile
  3. +0
    -31
      libs/libtorrent/patches/100-fix_cross_compile.patch
  4. +0
    -105
      libs/libtorrent/patches/110-openssl-1.1.patch
  5. +8
    -5
      net/rtorrent/Makefile
  6. +0
    -20
      net/rtorrent/patches/100-fix-cross_compile.patch

+ 6
- 6
libs/libsigc++/Makefile View File

@ -8,20 +8,19 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=libsigc++ PKG_NAME:=libsigc++
PKG_VERSION:=2.10.1
PKG_VERSION:=2.10.2
PKG_RELEASE:=1 PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=@GNOME/libsigc++/2.10 PKG_SOURCE_URL:=@GNOME/libsigc++/2.10
PKG_HASH:=c9a25f26178c6cbb147f9904d8c533b5a5c5111a41ac2eb781eb734eea446003
PKG_HASH:=b1ca0253379596f9c19f070c83d362b12dfd39c0a3ea1dd813e8e21c1a097a98
PKG_MAINTAINER:=Rosen Penev <rosenp@gmail.com> PKG_MAINTAINER:=Rosen Penev <rosenp@gmail.com>
PKG_LICENSE:=LGPL-3.0+
PKG_LICENSE:=LGPL-3.0-or-later
PKG_LICENSE_FILES:=COPYING PKG_LICENSE_FILES:=COPYING
PKG_FIXUP:=autoreconf
PKG_BUILD_PARALLEL:=1
PKG_INSTALL:=1 PKG_INSTALL:=1
PKG_BUILD_PARALLEL:=1
include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/package.mk
@ -45,7 +44,8 @@ CONFIGURE_ARGS += \
--disable-benchmark \ --disable-benchmark \
--disable-documentation \ --disable-documentation \
--disable-deprecated-api \ --disable-deprecated-api \
--disable-warnings
--disable-warnings \
--without-boost
define Build/InstallDev define Build/InstallDev
$(INSTALL_DIR) $(1)/usr/include $(INSTALL_DIR) $(1)/usr/include


+ 7
- 5
libs/libtorrent/Makefile View File

@ -8,12 +8,12 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=libtorrent PKG_NAME:=libtorrent
PKG_VERSION:=0.13.7
PKG_RELEASE:=2
PKG_VERSION:=0.13.8
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/rakshasa/libtorrent/tar.gz/v$(PKG_VERSION)? PKG_SOURCE_URL:=https://codeload.github.com/rakshasa/libtorrent/tar.gz/v$(PKG_VERSION)?
PKG_HASH:=86b4b1753385aaddf9e59ad94f1292eee5102139eb57520e84d1af2f04693708
PKG_HASH:=0f6c2e7ffd3a1723ab47fdac785ec40f85c0a5b5a42c1d002272205b988be722
PKG_MAINTAINER:=Rosen Penev <rosenp@gmail.com> PKG_MAINTAINER:=Rosen Penev <rosenp@gmail.com>
PKG_LICENSE:=GPL-2.0-or-later PKG_LICENSE:=GPL-2.0-or-later
@ -22,6 +22,7 @@ PKG_LICENSE_FILES:=COPYING
PKG_FIXUP:=autoreconf PKG_FIXUP:=autoreconf
PKG_INSTALL:=1 PKG_INSTALL:=1
PKG_BUILD_PARALLEL:=1 PKG_BUILD_PARALLEL:=1
PKG_REMOVE_FILES:=autogen.sh
include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/package.mk
@ -50,8 +51,9 @@ CONFIGURE_ARGS += \
--disable-instrumentation \ --disable-instrumentation \
--with-epoll \ --with-epoll \
--with-zlib=$(STAGING_DIR)/usr \ --with-zlib=$(STAGING_DIR)/usr \
--without-kqueue \
$(DISABLE_IPV6)
--without-kqueue
TARGET_CXXFLAGS += -faligned-new
define Build/InstallDev define Build/InstallDev
$(INSTALL_DIR) $(1)/usr/include $(INSTALL_DIR) $(1)/usr/include


+ 0
- 31
libs/libtorrent/patches/100-fix_cross_compile.patch View File

@ -1,31 +0,0 @@
--- a/scripts/checks.m4
+++ b/scripts/checks.m4
@@ -96,7 +96,7 @@ AC_DEFUN([TORRENT_CHECK_KQUEUE], [
AC_DEFUN([TORRENT_CHECK_KQUEUE_SOCKET_ONLY], [
AC_MSG_CHECKING(whether kqueue supports pipes and ptys)
- AC_RUN_IFELSE([AC_LANG_SOURCE([
+ AC_LINK_IFELSE([AC_LANG_SOURCE([
#include <fcntl.h>
#include <stdlib.h>
#include <unistd.h>
--- a/scripts/common.m4
+++ b/scripts/common.m4
@@ -153,7 +153,7 @@ dnl Need to fix this so that it uses t
AC_DEFUN([TORRENT_CHECK_EXECINFO], [
AC_MSG_CHECKING(for execinfo.h)
- AC_RUN_IFELSE([AC_LANG_SOURCE([
+ AC_LINK_IFELSE([AC_LANG_SOURCE([
#include <execinfo.h>
int main() { backtrace((void**)0, 0); backtrace_symbols((char**)0, 0); return 0;}
])],
@@ -168,7 +168,7 @@ AC_DEFUN([TORRENT_CHECK_EXECINFO], [
AC_DEFUN([TORRENT_CHECK_ALIGNED], [
AC_MSG_CHECKING(the byte alignment)
- AC_RUN_IFELSE([AC_LANG_SOURCE([
+ AC_LINK_IFELSE([AC_LANG_SOURCE([
#include <inttypes.h>
int main() {
char buf@<:@8@:>@ = { 0, 0, 0, 0, 1, 0, 0, 0 };

+ 0
- 105
libs/libtorrent/patches/110-openssl-1.1.patch View File

@ -1,105 +0,0 @@
From 4607bbf78040789dee29266878ce109136b984ef Mon Sep 17 00:00:00 2001
From: rakshasa <sundell.software@gmail.com>
Date: Tue, 20 Dec 2016 19:51:02 +0900
Subject: [PATCH] Added support for openssl 1.1.
---
configure.ac | 4 ++++
src/utils/diffie_hellman.cc | 36 ++++++++++++++++++++++++++++++++++--
2 files changed, 38 insertions(+), 2 deletions(-)
diff --git a/configure.ac b/configure.ac
index 65e34872..27e33570 100644
--- a/configure.ac
+++ b/configure.ac
@@ -71,12 +71,15 @@ AC_ARG_ENABLE(openssl,
[ --disable-openssl Don't use OpenSSL's SHA1 implementation.],
[
if test "$enableval" = "yes"; then
+dnl move to scripts.
PKG_CHECK_MODULES(OPENSSL, libcrypto,
CXXFLAGS="$CXXFLAGS $OPENSSL_CFLAGS";
LIBS="$LIBS $OPENSSL_LIBS")
AC_DEFINE(USE_OPENSSL, 1, Using OpenSSL.)
AC_DEFINE(USE_OPENSSL_SHA, 1, Using OpenSSL's SHA1 implementation.)
+ AC_CHECK_LIB([crypto], [DH_set0_pqg], [AC_DEFINE(USE_OPENSSL_1_1, 1, Using OpenSSL 1.1.)])
+
else
AC_DEFINE(USE_NSS_SHA, 1, Using Mozilla's SHA1 implementation.)
fi
@@ -87,6 +90,7 @@ AC_ARG_ENABLE(openssl,
AC_DEFINE(USE_OPENSSL, 1, Using OpenSSL.)
AC_DEFINE(USE_OPENSSL_SHA, 1, Using OpenSSL's SHA1 implementation.)
+ AC_CHECK_LIB([crypto], [DH_set0_pqg], [AC_DEFINE(USE_OPENSSL_1_1, 1, Using OpenSSL 1.1.)])
]
)
diff --git a/src/utils/diffie_hellman.cc b/src/utils/diffie_hellman.cc
index aa653d45..7ec13165 100644
--- a/src/utils/diffie_hellman.cc
+++ b/src/utils/diffie_hellman.cc
@@ -54,11 +54,23 @@ DiffieHellman::DiffieHellman(const unsigned char *prime, int primeLength,
m_secret(NULL), m_size(0) {
#ifdef USE_OPENSSL
+
m_dh = DH_new();
+
+#ifdef USE_OPENSSL_1_1
+ BIGNUM * const dh_p = BN_bin2bn(prime, primeLength, NULL);
+ BIGNUM * const dh_g = BN_bin2bn(generator, generatorLength, NULL);
+
+ if (dh_p == NULL || dh_g == NULL ||
+ !DH_set0_pqg(m_dh, dh_p, NULL, dh_g))
+ throw internal_error("Could not generate Diffie-Hellman parameters");
+#else
m_dh->p = BN_bin2bn(prime, primeLength, NULL);
m_dh->g = BN_bin2bn(generator, generatorLength, NULL);
+#endif
DH_generate_key(m_dh);
+
#else
throw internal_error("Compiled without encryption support.");
#endif
@@ -74,7 +86,19 @@ DiffieHellman::~DiffieHellman() {
bool
DiffieHellman::is_valid() const {
#ifdef USE_OPENSSL
+ if (m_dh == NULL)
+ return false;
+
+#ifdef USE_OPENSSL_1_1
+ const BIGNUM *pub_key;
+
+ DH_get0_key(m_dh, &pub_key, NULL);
+
+ return pub_key != NULL;
+#else
return m_dh != NULL && m_dh->pub_key != NULL;
+#endif
+
#else
return false;
#endif
@@ -103,8 +127,16 @@ DiffieHellman::store_pub_key(unsigned char* dest, unsigned int length) {
#ifdef USE_OPENSSL
std::memset(dest, 0, length);
- if ((int)length >= BN_num_bytes(m_dh->pub_key))
- BN_bn2bin(m_dh->pub_key, dest + length - BN_num_bytes(m_dh->pub_key));
+ const BIGNUM *pub_key;
+
+#ifdef USE_OPENSSL_1_1
+ DH_get0_key(m_dh, &pub_key, NULL);
+#else
+ pub_key = m_dh->pub_key;
+#endif
+
+ if ((int)length >= BN_num_bytes(pub_key))
+ BN_bn2bin(pub_key, dest + length - BN_num_bytes(pub_key));
#endif
}

+ 8
- 5
net/rtorrent/Makefile View File

@ -8,12 +8,12 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_NAME:=rtorrent PKG_NAME:=rtorrent
PKG_VERSION:=0.9.7
PKG_RELEASE:=2
PKG_VERSION:=0.9.8
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://github.com/rakshasa/rtorrent/releases/download/v$(PKG_VERSION)
PKG_HASH:=5d9842fe48c9582fbea2c7bf9f51412c1ccbba07d059b257039ad53b863fe8bb
PKG_SOURCE_URL:=https://codeload.github.com/rakshasa/rtorrent/tar.gz/v$(PKG_VERSION)?
PKG_HASH:=bc889ce1dde475ec56aa72ae996912ff58723226a4f4256fef4f1f8636d991d4
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION) PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION)
PKG_MAINTAINER:=Rosen Penev <rosenp@gmail.com> PKG_MAINTAINER:=Rosen Penev <rosenp@gmail.com>
@ -23,6 +23,7 @@ PKG_LICENSE_FILES:=COPYING
PKG_FIXUP:=autoreconf PKG_FIXUP:=autoreconf
PKG_INSTALL:=1 PKG_INSTALL:=1
PKG_BUILD_PARALLEL:=1 PKG_BUILD_PARALLEL:=1
PKG_REMOVE_FILES:=autogen.sh
include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/package.mk
@ -32,7 +33,7 @@ define Package/rtorrent/Default
CATEGORY:=Network CATEGORY:=Network
TITLE:=BitTorrent client for ncurses TITLE:=BitTorrent client for ncurses
URL:=https://github.com/rakshasa/rtorrent URL:=https://github.com/rakshasa/rtorrent
DEPENDS:=+libcurl +libtorrent +libncurses +libsigcxx +libpthread
DEPENDS:=+libcurl +libtorrent +libncurses +libpthread
endef endef
define Package/rtorrent/Default/description define Package/rtorrent/Default/description
@ -76,6 +77,8 @@ ifeq ($(BUILD_VARIANT),rpc)
CONFIGURE_ARGS += --with-xmlrpc-c CONFIGURE_ARGS += --with-xmlrpc-c
endif endif
TARGET_CXXFLAGS += -faligned-new
define Package/rtorrent/install define Package/rtorrent/install
$(INSTALL_DIR) $(1)/usr/bin $(INSTALL_DIR) $(1)/usr/bin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/rtorrent $(1)/usr/bin/ $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/rtorrent $(1)/usr/bin/


+ 0
- 20
net/rtorrent/patches/100-fix-cross_compile.patch View File

@ -1,20 +0,0 @@
--- a/scripts/common.m4
+++ b/scripts/common.m4
@@ -153,7 +153,7 @@ dnl Need to fix this so that it uses t
AC_DEFUN([TORRENT_CHECK_EXECINFO], [
AC_MSG_CHECKING(for execinfo.h)
- AC_RUN_IFELSE([AC_LANG_SOURCE([
+ AC_LINK_IFELSE([AC_LANG_SOURCE([
#include <execinfo.h>
int main() { backtrace((void**)0, 0); backtrace_symbols((char**)0, 0); return 0;}
])],
@@ -168,7 +168,7 @@ AC_DEFUN([TORRENT_CHECK_EXECINFO], [
AC_DEFUN([TORRENT_CHECK_ALIGNED], [
AC_MSG_CHECKING(the byte alignment)
- AC_RUN_IFELSE([AC_LANG_SOURCE([
+ AC_LINK_IFELSE([AC_LANG_SOURCE([
#include <inttypes.h>
int main() {
char buf@<:@8@:>@ = { 0, 0, 0, 0, 1, 0, 0, 0 };

Loading…
Cancel
Save