Download raw body.
update net/rtorrent 0.16.24 net/libtorrent 0.16.24
Here is an update to net/rtorrent 0.16.24 and net/libtorrent 0.16.24
released on Sep 22, 2026.
changelog:
https://github.com/rakshasa/rtorrent/releases#release-v0.16.24
changelog has some security changes:
Fix one-byte overflow of the domain name buffer in udns dns_getdn
Fix heap overflow writing the question name of a compressed DNS reply
Fix use-after-free when p.multicall commands disconnect peers
portwise rtorrent does the following:
- regens test/Makefile.in patch to remove a new, third instance of -ldl
portwise libtorrent does the following:
- major bump due to removed symbols
- unbreaks tests by linking using static archive
Tests were already broken, due to undefined symbols when using libtool's
.la files. I tried putting manager.o into archive files. Alternatively,
I also tried patching test/Makefile.am with manager.{cc,h} and
introducing autoreconf / automake. Both alternatives let tests run but
they would double free during test cleanup.
ld: error: undefined symbol: torrent::manager
>>> referenced by runtime.cc:17 (runtime/runtime.cc:17)
>>> runtime.o:(torrent::runtime::total_handshakes()) in archive /usr/obj/pobj/libtorrent-0.16.24/libtorrent-0.16.24/src/torrent/.libs/libtorrent_torrent.a
>>> referenced by file.cc:85 (data/file.cc:85)
>>> file.o:(torrent::File::prepare(bool, int, int)) in archive /usr/obj/pobj/libtorrent-0.16.24/libtorrent-0.16.24/src/torrent/.libs/libtorrent_torrent.a
>>> referenced by file_list.cc:497 (data/file_list.cc:497)
>>> file_list.
tj@ asked AI and proposed linking tests using the static archive
.libs/libtorrent.a. This makes sense since it has all of the objects
(plus a few more) found in torrent/.libs/libtorrent_torrent.a and
.libs/libtorrent_other.a
This unbreaks tests and downloading a debian torrent works.
OK to commit during ports slowdown?
Index: libtorrent/Makefile
===================================================================
RCS file: /cvs/ports/net/libtorrent/Makefile,v
diff -u -p -u -p -r1.74 Makefile
--- libtorrent/Makefile 20 Aug 2026 12:20:51 -0000 1.74
+++ libtorrent/Makefile 30 Sep 2026 07:55:07 -0000
@@ -3,11 +3,10 @@ COMMENT= BitTorrent library written in
BROKEN-hppa = undefined references to __sync atomic ops
BROKEN-sh = undefined references to __sync atomic ops
-V = 0.16.20
+V = 0.16.24
DISTNAME= libtorrent-$V
EPOCH= 0
-REVISION= 0
-SHARED_LIBS += torrent 25.0 # .18.0
+SHARED_LIBS += torrent 26.0 # 52.0.0
CATEGORIES= net devel
HOMEPAGE= https://rakshasa.github.io/rtorrent/
Index: libtorrent/distinfo
===================================================================
RCS file: /cvs/ports/net/libtorrent/distinfo,v
diff -u -p -u -p -r1.24 distinfo
--- libtorrent/distinfo 15 Aug 2026 09:55:48 -0000 1.24
+++ libtorrent/distinfo 30 Sep 2026 07:55:07 -0000
@@ -1,2 +1,2 @@
-SHA256 (libtorrent-0.16.20.tar.gz) = xncQjJg57UytL1l8dFOexyYlwUSZZOmwG6DpSoZ84yY=
-SIZE (libtorrent-0.16.20.tar.gz) = 927423
+SHA256 (libtorrent-0.16.24.tar.gz) = JKLE6EQpCtqxIIlW/EBDQ2YqxclSQfPRWscKkXL9Uls=
+SIZE (libtorrent-0.16.24.tar.gz) = 943301
Index: libtorrent/patches/patch-test_Makefile_in
===================================================================
RCS file: libtorrent/patches/patch-test_Makefile_in
diff -N libtorrent/patches/patch-test_Makefile_in
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ libtorrent/patches/patch-test_Makefile_in 30 Sep 2026 07:55:07 -0000
@@ -0,0 +1,27 @@
+link tests with static archive due to undefined symbol
+
+Index: test/Makefile.in
+--- test/Makefile.in.orig
++++ test/Makefile.in
+@@ -140,9 +140,7 @@ am_LibTorrent_Test_OBJECTS = $(am__objects_1) \
+ protocol/LibTorrent_Test-test_protocol_buffer.$(OBJEXT) \
+ protocol/LibTorrent_Test-test_request_list.$(OBJEXT)
+ LibTorrent_Test_OBJECTS = $(am_LibTorrent_Test_OBJECTS)
+-LibTorrent_Test_DEPENDENCIES = ../src/libtorrent.la \
+- ../src/libtorrent_other.la \
+- ../src/torrent/libtorrent_torrent.la
++LibTorrent_Test_DEPENDENCIES = ../src/.libs/libtorrent.a
+ AM_V_lt = $(am__v_lt_@AM_V@)
+ am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
+ am__v_lt_0 = --silent
+@@ -683,9 +681,7 @@ top_srcdir = @top_srcdir@
+
+ # LibTorrent_Test_LDADD = ../src/libtorrent.la
+ LibTorrent_Test_LDADD = \
+- ../src/libtorrent.la \
+- ../src/libtorrent_other.la \
+- ../src/torrent/libtorrent_torrent.la
++ ../src/.libs/libtorrent.a
+
+ LibTorrent_Test_Torrent_Net_LDADD = $(LibTorrent_Test_LDADD)
+ LibTorrent_Test_Torrent_Runtime_LDADD = $(LibTorrent_Test_LDADD)
Index: rtorrent/Makefile
===================================================================
RCS file: /cvs/ports/net/rtorrent/Makefile,v
diff -u -p -u -p -r1.80 Makefile
--- rtorrent/Makefile 20 Aug 2026 12:20:51 -0000 1.80
+++ rtorrent/Makefile 30 Sep 2026 07:55:08 -0000
@@ -1,8 +1,7 @@
COMMENT = ncurses BitTorrent client based on libTorrent
-V = 0.16.20
+V = 0.16.24
EPOCH = 0
-REVISION = 0
DISTNAME = rtorrent-$V
CATEGORIES = net
Index: rtorrent/distinfo
===================================================================
RCS file: /cvs/ports/net/rtorrent/distinfo,v
diff -u -p -u -p -r1.24 distinfo
--- rtorrent/distinfo 15 Aug 2026 09:56:00 -0000 1.24
+++ rtorrent/distinfo 30 Sep 2026 07:55:08 -0000
@@ -1,2 +1,2 @@
-SHA256 (rtorrent-0.16.20.tar.gz) = jtMBmX8XWcXs//IFYWujYSfLpHqytbWs7U20ihH6anQ=
-SIZE (rtorrent-0.16.20.tar.gz) = 869617
+SHA256 (rtorrent-0.16.24.tar.gz) = Jp2CBUvfOGIZRyLF4nvdwSq7UdRQRb9t8b1+46KDe6s=
+SIZE (rtorrent-0.16.24.tar.gz) = 886723
Index: rtorrent/patches/patch-test_Makefile_in
===================================================================
RCS file: /cvs/ports/net/rtorrent/patches/patch-test_Makefile_in,v
diff -u -p -u -p -r1.10 patch-test_Makefile_in
--- rtorrent/patches/patch-test_Makefile_in 2 Sep 2026 18:06:10 -0000 1.10
+++ rtorrent/patches/patch-test_Makefile_in 30 Sep 2026 07:55:08 -0000
@@ -1,9 +1,12 @@
Index: test/Makefile.in
--- test/Makefile.in.orig
+++ test/Makefile.in
-@@ -683,9 +683,9 @@ rtorrent_Test_Src_SOURCES = $(rtorrent_Test_Common) \
+@@ -743,11 +743,11 @@ rtorrent_Test_Src_SOURCES = $(rtorrent_Test_Common) \
src/test_watch_ready_queue.h
+ rtorrent_Test_Core_CXXFLAGS = $(CPPUNIT_CFLAGS)
+-rtorrent_Test_Core_LDFLAGS = $(CPPUNIT_LIBS) -ldl
++rtorrent_Test_Core_LDFLAGS = $(CPPUNIT_LIBS)
rtorrent_Test_Rpc_CXXFLAGS = $(CPPUNIT_CFLAGS)
-rtorrent_Test_Rpc_LDFLAGS = $(CPPUNIT_LIBS) -ldl
+rtorrent_Test_Rpc_LDFLAGS = $(CPPUNIT_LIBS)
update net/rtorrent 0.16.24 net/libtorrent 0.16.24