<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/crates/tor-circmgr/src/mgr.rs, branch arti-v1.8.0</title>
<subtitle>mirror of https://gitlab.torproject.org/tpo/core/arti
</subtitle>
<id>http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v1.8.0</id>
<link rel='self' href='http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v1.8.0'/>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/'/>
<updated>2025-12-01T11:03:59Z</updated>
<entry>
<title>circmgr: Add missing docs for RestrictionFailed</title>
<updated>2025-12-01T11:03:59Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2025-12-01T11:03:59Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=d28e1ad81d437973420be3bf05487aa61e6df3e0'/>
<id>urn:sha1:d28e1ad81d437973420be3bf05487aa61e6df3e0</id>
<content type='text'>
</content>
</entry>
<entry>
<title>opentelemetry: Instrument a bunch of functions.</title>
<updated>2025-11-24T16:28:07Z</updated>
<author>
<name>Wesley Aptekar-Cassels</name>
<email>me@wesleyac.com</email>
</author>
<published>2025-11-24T16:28:07Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=a4db6a7495b13dd7b00416dd1660a5ad82b60919'/>
<id>urn:sha1:a4db6a7495b13dd7b00416dd1660a5ad82b60919</id>
<content type='text'>
These are all aimed at figuring out in more detail what's going on
in #2079 and related issues.
</content>
</entry>
<entry>
<title>circmgr: report errors from update_long_lived_tunnel_last_used</title>
<updated>2025-11-12T15:00:55Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2025-11-11T16:49:30Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=d4a6eebf16d34d651dc7d8655a33289e18d06130'/>
<id>urn:sha1:d4a6eebf16d34d651dc7d8655a33289e18d06130</id>
<content type='text'>
(The only error possible is an internal error from
calling it with a non-long-lived tunnel.)
</content>
</entry>
<entry>
<title>circmgr: In expiration task, try again if we are not yet ready to expire.</title>
<updated>2025-11-12T15:00:55Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2025-11-10T19:31:09Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=106a15fd3284e45933b76f2624b8eb1731723fb5'/>
<id>urn:sha1:106a15fd3284e45933b76f2624b8eb1731723fb5</id>
<content type='text'>
</content>
</entry>
<entry>
<title>circmgr: Add a timeout setting for long-lived circuits.</title>
<updated>2025-11-12T15:00:55Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2025-11-03T19:51:50Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=4085cefe79415eff112e4b29c4c5bea345bbaf23'/>
<id>urn:sha1:4085cefe79415eff112e4b29c4c5bea345bbaf23</id>
<content type='text'>
</content>
</entry>
<entry>
<title>circmgr: Implement expiration for long-lived tunnels.</title>
<updated>2025-11-12T15:00:55Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2025-10-30T21:09:24Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=b7be042e020cb38ee817524f4a9d9f9187bed8f0'/>
<id>urn:sha1:b7be042e020cb38ee817524f4a9d9f9187bed8f0</id>
<content type='text'>
This code uses the algorithm of prop368: When a tunnel is
sufficiently isolated, we want to expire it after it has been
disused for a certain amount of time.

The implementation is a little tricky, since we need to call an
async function on ClientTunnel to look up the disused_since() check.
We don't want to call async functions while holding locks, so
we need to drop the TunnelList lock before we do the disused_since()
calls, and the grab it again.

As part of this change, I've had made expiration functions return
the earliest time at which any tunnel might expire.  We can use
this in the future to spawn fewer expiration tasks, and scan the
list of tunnels less often.
</content>
</entry>
<entry>
<title>circmgr: Add a notion of long-lived tunnels.</title>
<updated>2025-11-12T15:00:55Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2025-10-30T19:53:00Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=463ca9c04da962845dfd28ce01b9febfc4cb9aad'/>
<id>urn:sha1:463ca9c04da962845dfd28ce01b9febfc4cb9aad</id>
<content type='text'>
</content>
</entry>
<entry>
<title>circmgr: Refactor should_expire()</title>
<updated>2025-11-12T15:00:55Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2025-10-30T17:42:51Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=d321636af47f0143c28c8cedd1c46d75dd11e9b1'/>
<id>urn:sha1:d321636af47f0143c28c8cedd1c46d75dd11e9b1</id>
<content type='text'>
Instead of a series of cutoffs, take an object with a set of
lifetimes.
</content>
</entry>
<entry>
<title>circmgr: make expiration functions async</title>
<updated>2025-11-12T15:00:55Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2025-10-30T17:24:00Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=0ed236bb45a6977bef5d317f3e596fdd0d0658a9'/>
<id>urn:sha1:0ed236bb45a6977bef5d317f3e596fdd0d0658a9</id>
<content type='text'>
We'll need them to be async so they can call disused_since() on tunnels.
</content>
</entry>
<entry>
<title>circmgr: rename expire_tunnel to consider_expiring_tunnel</title>
<updated>2025-11-12T15:00:55Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2025-10-30T17:12:46Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=11cb6cf700c700670c8f7ad65d5ac88eaf10aa18'/>
<id>urn:sha1:11cb6cf700c700670c8f7ad65d5ac88eaf10aa18</id>
<content type='text'>
</content>
</entry>
</feed>
