diff options
author | Hannu Nyman <hannu.nyman@iki.fi> | 2015-11-06 13:44:16 +0200 |
---|---|---|
committer | Hannu Nyman <hannu.nyman@iki.fi> | 2015-11-14 10:34:09 +0200 |
commit | 8276f382a9ba0806a3ed713e375a9244cac184fd (patch) | |
tree | 6becf2db7a4c58b914625b4f740b6542166e6495 | |
parent | 11da8dcaf4bf8f6efd1af2edcb06e6e137c2ab29 (diff) |
libtorrent: update to 0.13.6, disable ipv6, remove ipv6 hack
Fix libtorrent compilation by:
* Disable ipv6
* Remove the problematic patches/120-... ipv6 hack at the same time,
as it is a 5-year old hack to fix one ipv6 problem.
* Update libtorrent to git master HEAD (0.13.6).
Libtorrent compilation has been broken due to patches/120-...
since #1181 got merged and ipv6 got enabled.
Users have seen issues like #1316 and #1804
IPv6 support in libtorrent master is not compelete.
Instead there is a separate ipv6 branch, which still needs some
cleanup before mainstream use. See discussion at
https://github.com/rakshasa/rtorrent/issues/59#issuecomment-56651538
So, it makes no sense to use ipv6 with the master branch.
Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi>
-rw-r--r-- | libs/libtorrent/Makefile | 8 | ||||
-rw-r--r-- | libs/libtorrent/patches/120-fix-ipv6_socket_datagram.patch | 26 |
2 files changed, 4 insertions, 30 deletions
diff --git a/libs/libtorrent/Makefile b/libs/libtorrent/Makefile index 2001235a9..6b41e87b8 100644 --- a/libs/libtorrent/Makefile +++ b/libs/libtorrent/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2007-2013 OpenWrt.org +# Copyright (C) 2007-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -8,13 +8,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libtorrent -PKG_VERSION:=0.13.4-git-1 +PKG_VERSION:=0.13.6-git-1 PKG_RELEASE=$(PKG_SOURCE_VERSION) PKG_SOURCE_PROTO:=git PKG_SOURCE_URL:=https://github.com/rakshasa/libtorrent.git PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) -PKG_SOURCE_VERSION:=72e908707f01ee01a9b4918436c64348878b63f7 +PKG_SOURCE_VERSION:=14e793b75dac95c51ad64ff9cd2dc6772b68c625 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz PKG_FIXUP:=autoreconf @@ -50,7 +50,7 @@ CONFIGURE_ARGS+= \ --enable-openssl \ --disable-instrumentation \ --with-zlib=$(STAGING_DIR)/usr \ - $(call autoconf_bool,CONFIG_IPV6,ipv6) + --disable-ipv6 define Build/InstallDev $(INSTALL_DIR) $(1)/usr/include diff --git a/libs/libtorrent/patches/120-fix-ipv6_socket_datagram.patch b/libs/libtorrent/patches/120-fix-ipv6_socket_datagram.patch deleted file mode 100644 index 1a4662703..000000000 --- a/libs/libtorrent/patches/120-fix-ipv6_socket_datagram.patch +++ /dev/null @@ -1,26 +0,0 @@ ---- a/src/net/socket_datagram.cc -+++ b/src/net/socket_datagram.cc -@@ -73,6 +73,23 @@ SocketDatagram::write_datagram(const voi - int r; - - if (sa != NULL) { -+#ifdef RAK_USE_INET6 -+ if (m_ipv6_socket && sa->family() == rak::socket_address::pf_inet) { -+ uint32_t addr32[4]; -+ sockaddr_in6 mapped_addr; -+ memset(&mapped_addr, 0, sizeof(mapped_addr)); -+ mapped_addr.sin6_family = AF_INET6; -+ addr32[0] = 0; -+ addr32[1] = 0; -+ addr32[2] = htonl(0xffff); -+ addr32[3] = sa->sa_inet()->address_n(); -+ memcpy(mapped_addr.sin6_addr.s6_addr, addr32, sizeof(uint32_t) * 4); -+ mapped_addr.sin6_port = sa->sa_inet()->port_n(); -+ r = ::sendto(m_fileDesc, buffer, length, 0, (sockaddr*)&mapped_addr, sizeof(mapped_addr)); -+ } else if (m_ipv6_socket && sa->family() == rak::socket_address::pf_inet6) { -+ r = ::sendto(m_fileDesc, buffer, length, 0, sa->sa_inet6()->c_sockaddr(), sizeof(rak::socket_address_inet6)); -+ } else -+#endif - r = ::sendto(m_fileDesc, buffer, length, 0, sa->sa_inet()->c_sockaddr(), sizeof(rak::socket_address_inet)); - } else { - r = ::send(m_fileDesc, buffer, length, 0); |