Browse Source

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>
Hannu Nyman 9 years ago
parent
commit
8276f382a9

+ 4
- 4
libs/libtorrent/Makefile View File

@@ -1,5 +1,5 @@
1 1
 #
2
-# Copyright (C) 2007-2013 OpenWrt.org
2
+# Copyright (C) 2007-2015 OpenWrt.org
3 3
 #
4 4
 # This is free software, licensed under the GNU General Public License v2.
5 5
 # See /LICENSE for more information.
@@ -8,13 +8,13 @@
8 8
 include $(TOPDIR)/rules.mk
9 9
 
10 10
 PKG_NAME:=libtorrent
11
-PKG_VERSION:=0.13.4-git-1
11
+PKG_VERSION:=0.13.6-git-1
12 12
 PKG_RELEASE=$(PKG_SOURCE_VERSION)
13 13
 
14 14
 PKG_SOURCE_PROTO:=git
15 15
 PKG_SOURCE_URL:=https://github.com/rakshasa/libtorrent.git
16 16
 PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
17
-PKG_SOURCE_VERSION:=72e908707f01ee01a9b4918436c64348878b63f7
17
+PKG_SOURCE_VERSION:=14e793b75dac95c51ad64ff9cd2dc6772b68c625
18 18
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz
19 19
 
20 20
 PKG_FIXUP:=autoreconf
@@ -50,7 +50,7 @@ CONFIGURE_ARGS+= \
50 50
 	--enable-openssl \
51 51
 	--disable-instrumentation \
52 52
 	--with-zlib=$(STAGING_DIR)/usr \
53
-	$(call autoconf_bool,CONFIG_IPV6,ipv6)
53
+	--disable-ipv6
54 54
 
55 55
 define Build/InstallDev
56 56
 	$(INSTALL_DIR) $(1)/usr/include

+ 0
- 26
libs/libtorrent/patches/120-fix-ipv6_socket_datagram.patch View File

@@ -1,26 +0,0 @@
1
---- a/src/net/socket_datagram.cc
2
-+++ b/src/net/socket_datagram.cc
3
-@@ -73,6 +73,23 @@ SocketDatagram::write_datagram(const voi
4
-   int r;
5
- 
6
-   if (sa != NULL) {
7
-+#ifdef RAK_USE_INET6
8
-+    if (m_ipv6_socket && sa->family() == rak::socket_address::pf_inet) {
9
-+      uint32_t addr32[4];
10
-+      sockaddr_in6 mapped_addr;
11
-+      memset(&mapped_addr, 0, sizeof(mapped_addr));
12
-+      mapped_addr.sin6_family = AF_INET6;
13
-+      addr32[0] = 0;
14
-+      addr32[1] = 0;
15
-+      addr32[2] = htonl(0xffff);
16
-+      addr32[3] = sa->sa_inet()->address_n();
17
-+      memcpy(mapped_addr.sin6_addr.s6_addr, addr32, sizeof(uint32_t) * 4);
18
-+      mapped_addr.sin6_port = sa->sa_inet()->port_n();
19
-+      r = ::sendto(m_fileDesc, buffer, length, 0, (sockaddr*)&mapped_addr, sizeof(mapped_addr));
20
-+    } else if (m_ipv6_socket && sa->family() == rak::socket_address::pf_inet6) {
21
-+      r = ::sendto(m_fileDesc, buffer, length, 0, sa->sa_inet6()->c_sockaddr(), sizeof(rak::socket_address_inet6));
22
-+    } else
23
-+#endif
24
-     r = ::sendto(m_fileDesc, buffer, length, 0, sa->sa_inet()->c_sockaddr(), sizeof(rak::socket_address_inet));
25
-   } else {
26
-     r = ::send(m_fileDesc, buffer, length, 0);