mirror of
https://github.com/n0-computer/noq.git
synced 2026-09-21 02:33:23 +00:00
deploy: cad18c776da9fc209a82c66470b2b008ae8886bf
This commit is contained in:
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -33,7 +33,7 @@ increasing time. Specifically, calling <a href="struct.Connection.html#method.ha
|
||||
with events of the same <a href="https://doc.rust-lang.org/nightly/std/time/struct.Instant.html" title="struct std::time::Instant"><code>Instant</code></a> may be interleaved in any order with a
|
||||
call to <a href="struct.Connection.html#method.handle_event" title="method iroh_quinn_proto::Connection::handle_event"><code>handle_event</code></a> at that same instant; however
|
||||
events or timeouts with different instants must not be interleaved.</p>
|
||||
</div></details><h2 id="implementations" class="section-header">Implementations<a href="#implementations" class="anchor">§</a></h2><div id="implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Connection" class="impl"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#379-6599">Source</a><a href="#impl-Connection" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.Connection.html" title="struct iroh_quinn_proto::Connection">Connection</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.poll_timeout" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#540-542">Source</a><h4 class="code-header">pub fn <a href="#method.poll_timeout" class="fn">poll_timeout</a>(&mut self) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="https://doc.rust-lang.org/nightly/std/time/struct.Instant.html" title="struct std::time::Instant">Instant</a>></h4></section></summary><div class="docblock"><p>Returns the next time at which <code>handle_timeout</code> should be called</p>
|
||||
</div></details><h2 id="implementations" class="section-header">Implementations<a href="#implementations" class="anchor">§</a></h2><div id="implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Connection" class="impl"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#379-6608">Source</a><a href="#impl-Connection" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.Connection.html" title="struct iroh_quinn_proto::Connection">Connection</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.poll_timeout" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#540-542">Source</a><h4 class="code-header">pub fn <a href="#method.poll_timeout" class="fn">poll_timeout</a>(&mut self) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="https://doc.rust-lang.org/nightly/std/time/struct.Instant.html" title="struct std::time::Instant">Instant</a>></h4></section></summary><div class="docblock"><p>Returns the next time at which <code>handle_timeout</code> should be called</p>
|
||||
<p>The value returned may change after:</p>
|
||||
<ul>
|
||||
<li>the application performed some I/O on the connection</li>
|
||||
@@ -107,7 +107,7 @@ for a path that was never opened locally.</p>
|
||||
) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="https://doc.rust-lang.org/nightly/core/time/struct.Duration.html" title="struct core::time::Duration">Duration</a>>, <a class="struct" href="struct.ClosedPath.html" title="struct iroh_quinn_proto::ClosedPath">ClosedPath</a>></h4></section></summary><div class="docblock"><p>Sets the keep_alive_interval for a specific path</p>
|
||||
<p>See <a href="struct.TransportConfig.html#method.default_path_keep_alive_interval" title="method iroh_quinn_proto::TransportConfig::default_path_keep_alive_interval"><code>TransportConfig::default_path_keep_alive_interval</code></a> for details.</p>
|
||||
<p>Returns the previous value of the setting.</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.poll_transmit" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#967-1129">Source</a><h4 class="code-header">pub fn <a href="#method.poll_transmit" class="fn">poll_transmit</a>(
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.poll_transmit" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#984-1137">Source</a><h4 class="code-header">pub fn <a href="#method.poll_transmit" class="fn">poll_transmit</a>(
|
||||
&mut self,
|
||||
now: <a class="struct" href="https://doc.rust-lang.org/nightly/std/time/struct.Instant.html" title="struct std::time::Instant">Instant</a>,
|
||||
max_datagrams: <a class="type" href="https://doc.rust-lang.org/nightly/core/num/nonzero/type.NonZeroUsize.html" title="type core::num::nonzero::NonZeroUsize">NonZeroUsize</a>,
|
||||
@@ -121,60 +121,60 @@ for a path that was never opened locally.</p>
|
||||
</ul>
|
||||
<p><code>max_datagrams</code> specifies how many datagrams can be returned inside a
|
||||
single Transmit using GSO. This must be at least 1.</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.handle_event" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2009-2084">Source</a><h4 class="code-header">pub fn <a href="#method.handle_event" class="fn">handle_event</a>(&mut self, event: <a class="struct" href="struct.ConnectionEvent.html" title="struct iroh_quinn_proto::ConnectionEvent">ConnectionEvent</a>)</h4></section></summary><div class="docblock"><p>Process <code>ConnectionEvent</code>s generated by the associated <code>Endpoint</code></p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.handle_event" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2017-2093">Source</a><h4 class="code-header">pub fn <a href="#method.handle_event" class="fn">handle_event</a>(&mut self, event: <a class="struct" href="struct.ConnectionEvent.html" title="struct iroh_quinn_proto::ConnectionEvent">ConnectionEvent</a>)</h4></section></summary><div class="docblock"><p>Process <code>ConnectionEvent</code>s generated by the associated <code>Endpoint</code></p>
|
||||
<p>Will execute protocol logic upon receipt of a connection event, in turn preparing signals
|
||||
(including application <code>Event</code>s, <code>EndpointEvent</code>s and outgoing datagrams) that should be
|
||||
extracted through the relevant methods.</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.handle_timeout" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2158-2309">Source</a><h4 class="code-header">pub fn <a href="#method.handle_timeout" class="fn">handle_timeout</a>(&mut self, now: <a class="struct" href="https://doc.rust-lang.org/nightly/std/time/struct.Instant.html" title="struct std::time::Instant">Instant</a>)</h4></section></summary><div class="docblock"><p>Process timer expirations</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.handle_timeout" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2167-2318">Source</a><h4 class="code-header">pub fn <a href="#method.handle_timeout" class="fn">handle_timeout</a>(&mut self, now: <a class="struct" href="https://doc.rust-lang.org/nightly/std/time/struct.Instant.html" title="struct std::time::Instant">Instant</a>)</h4></section></summary><div class="docblock"><p>Process timer expirations</p>
|
||||
<p>Executes protocol logic, potentially preparing signals (including application <code>Event</code>s,
|
||||
<code>EndpointEvent</code>s and outgoing datagrams) that should be extracted through the relevant
|
||||
methods.</p>
|
||||
<p>It is most efficient to call this immediately after the system clock reaches the latest
|
||||
<code>Instant</code> that was output by <code>poll_timeout</code>; however spurious extra calls will simply
|
||||
no-op and therefore are safe.</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.close" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2322-2327">Source</a><h4 class="code-header">pub fn <a href="#method.close" class="fn">close</a>(&mut self, now: <a class="struct" href="https://doc.rust-lang.org/nightly/std/time/struct.Instant.html" title="struct std::time::Instant">Instant</a>, error_code: <a class="struct" href="struct.VarInt.html" title="struct iroh_quinn_proto::VarInt">VarInt</a>, reason: Bytes)</h4></section></summary><div class="docblock"><p>Close a connection immediately</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.close" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2331-2336">Source</a><h4 class="code-header">pub fn <a href="#method.close" class="fn">close</a>(&mut self, now: <a class="struct" href="https://doc.rust-lang.org/nightly/std/time/struct.Instant.html" title="struct std::time::Instant">Instant</a>, error_code: <a class="struct" href="struct.VarInt.html" title="struct iroh_quinn_proto::VarInt">VarInt</a>, reason: Bytes)</h4></section></summary><div class="docblock"><p>Close a connection immediately</p>
|
||||
<p>This does not ensure delivery of outstanding data. It is the application’s responsibility to
|
||||
call this only when all important communications have been completed, e.g. by calling
|
||||
<a href="struct.SendStream.html#method.finish" title="method iroh_quinn_proto::SendStream::finish"><code>SendStream::finish</code></a> on outstanding streams and waiting for the corresponding
|
||||
<a href="enum.StreamEvent.html#variant.Finished" title="variant iroh_quinn_proto::StreamEvent::Finished"><code>StreamEvent::Finished</code></a> event.</p>
|
||||
<p>If <a href="struct.Streams.html#method.send_streams" title="method iroh_quinn_proto::Streams::send_streams"><code>Streams::send_streams</code></a> returns 0, all outstanding stream data has been
|
||||
delivered. There may still be data from the peer that has not been received.</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.datagrams" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2340-2342">Source</a><h4 class="code-header">pub fn <a href="#method.datagrams" class="fn">datagrams</a>(&mut self) -> <a class="struct" href="struct.Datagrams.html" title="struct iroh_quinn_proto::Datagrams">Datagrams</a><'_></h4></section></summary><div class="docblock"><p>Control datagrams</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.stats" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2345-2347">Source</a><h4 class="code-header">pub fn <a href="#method.stats" class="fn">stats</a>(&mut self) -> <a class="struct" href="struct.ConnectionStats.html" title="struct iroh_quinn_proto::ConnectionStats">ConnectionStats</a></h4></section></summary><div class="docblock"><p>Returns connection statistics</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.path_stats" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2350-2357">Source</a><h4 class="code-header">pub fn <a href="#method.path_stats" class="fn">path_stats</a>(&mut self, path_id: <a class="struct" href="struct.PathId.html" title="struct iroh_quinn_proto::PathId">PathId</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="struct.PathStats.html" title="struct iroh_quinn_proto::PathStats">PathStats</a>></h4></section></summary><div class="docblock"><p>Returns path statistics</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.ping" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2362-2368">Source</a><h4 class="code-header">pub fn <a href="#method.ping" class="fn">ping</a>(&mut self)</h4></section></summary><div class="docblock"><p>Ping the remote endpoint</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.datagrams" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2349-2351">Source</a><h4 class="code-header">pub fn <a href="#method.datagrams" class="fn">datagrams</a>(&mut self) -> <a class="struct" href="struct.Datagrams.html" title="struct iroh_quinn_proto::Datagrams">Datagrams</a><'_></h4></section></summary><div class="docblock"><p>Control datagrams</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.stats" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2354-2356">Source</a><h4 class="code-header">pub fn <a href="#method.stats" class="fn">stats</a>(&mut self) -> <a class="struct" href="struct.ConnectionStats.html" title="struct iroh_quinn_proto::ConnectionStats">ConnectionStats</a></h4></section></summary><div class="docblock"><p>Returns connection statistics</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.path_stats" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2359-2366">Source</a><h4 class="code-header">pub fn <a href="#method.path_stats" class="fn">path_stats</a>(&mut self, path_id: <a class="struct" href="struct.PathId.html" title="struct iroh_quinn_proto::PathId">PathId</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="struct.PathStats.html" title="struct iroh_quinn_proto::PathStats">PathStats</a>></h4></section></summary><div class="docblock"><p>Returns path statistics</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.ping" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2371-2377">Source</a><h4 class="code-header">pub fn <a href="#method.ping" class="fn">ping</a>(&mut self)</h4></section></summary><div class="docblock"><p>Ping the remote endpoint</p>
|
||||
<p>Causes an ACK-eliciting packet to be transmitted on the connection.</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.ping_path" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2373-2380">Source</a><h4 class="code-header">pub fn <a href="#method.ping_path" class="fn">ping_path</a>(&mut self, path: <a class="struct" href="struct.PathId.html" title="struct iroh_quinn_proto::PathId">PathId</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="struct" href="struct.ClosedPath.html" title="struct iroh_quinn_proto::ClosedPath">ClosedPath</a>></h4></section></summary><div class="docblock"><p>Ping the remote endpoint over a specific path</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.ping_path" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2382-2389">Source</a><h4 class="code-header">pub fn <a href="#method.ping_path" class="fn">ping_path</a>(&mut self, path: <a class="struct" href="struct.PathId.html" title="struct iroh_quinn_proto::PathId">PathId</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="struct" href="struct.ClosedPath.html" title="struct iroh_quinn_proto::ClosedPath">ClosedPath</a>></h4></section></summary><div class="docblock"><p>Ping the remote endpoint over a specific path</p>
|
||||
<p>Causes an ACK-eliciting packet to be transmitted on the path.</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.force_key_update" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2385-2397">Source</a><h4 class="code-header">pub fn <a href="#method.force_key_update" class="fn">force_key_update</a>(&mut self)</h4></section></summary><div class="docblock"><p>Update traffic keys spontaneously</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.force_key_update" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2394-2406">Source</a><h4 class="code-header">pub fn <a href="#method.force_key_update" class="fn">force_key_update</a>(&mut self)</h4></section></summary><div class="docblock"><p>Update traffic keys spontaneously</p>
|
||||
<p>This can be useful for testing key updates, as they otherwise only happen infrequently.</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.crypto_session" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2400-2402">Source</a><h4 class="code-header">pub fn <a href="#method.crypto_session" class="fn">crypto_session</a>(&self) -> &dyn <a class="trait" href="crypto/trait.Session.html" title="trait iroh_quinn_proto::crypto::Session">Session</a></h4></section></summary><div class="docblock"><p>Get a session reference</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.is_handshaking" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2408-2410">Source</a><h4 class="code-header">pub fn <a href="#method.is_handshaking" class="fn">is_handshaking</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Whether the connection is in the process of being established</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.crypto_session" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2409-2411">Source</a><h4 class="code-header">pub fn <a href="#method.crypto_session" class="fn">crypto_session</a>(&self) -> &dyn <a class="trait" href="crypto/trait.Session.html" title="trait iroh_quinn_proto::crypto::Session">Session</a></h4></section></summary><div class="docblock"><p>Get a session reference</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.is_handshaking" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2417-2419">Source</a><h4 class="code-header">pub fn <a href="#method.is_handshaking" class="fn">is_handshaking</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Whether the connection is in the process of being established</p>
|
||||
<p>If this returns <code>false</code>, the connection may be either established or closed, signaled by the
|
||||
emission of a <code>Connected</code> or <code>ConnectionLost</code> message respectively.</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.is_closed" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2419-2421">Source</a><h4 class="code-header">pub fn <a href="#method.is_closed" class="fn">is_closed</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Whether the connection is closed</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.is_closed" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2428-2430">Source</a><h4 class="code-header">pub fn <a href="#method.is_closed" class="fn">is_closed</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Whether the connection is closed</p>
|
||||
<p>Closed connections cannot transport any further data. A connection becomes closed when
|
||||
either peer application intentionally closes it, or when either transport layer detects an
|
||||
error such as a time-out or certificate validation failure.</p>
|
||||
<p>A <code>ConnectionLost</code> event is emitted with details when the connection becomes closed.</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.is_drained" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2427-2429">Source</a><h4 class="code-header">pub fn <a href="#method.is_drained" class="fn">is_drained</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Whether there is no longer any need to keep the connection around</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.is_drained" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2436-2438">Source</a><h4 class="code-header">pub fn <a href="#method.is_drained" class="fn">is_drained</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Whether there is no longer any need to keep the connection around</p>
|
||||
<p>Closed connections become drained after a brief timeout to absorb any remaining in-flight
|
||||
packets from the peer. All drained connections have been closed.</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.accepted_0rtt" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2434-2436">Source</a><h4 class="code-header">pub fn <a href="#method.accepted_0rtt" class="fn">accepted_0rtt</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>For clients, if the peer accepted the 0-RTT data packets</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.accepted_0rtt" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2443-2445">Source</a><h4 class="code-header">pub fn <a href="#method.accepted_0rtt" class="fn">accepted_0rtt</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>For clients, if the peer accepted the 0-RTT data packets</p>
|
||||
<p>The value is meaningless until after the handshake completes.</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.has_0rtt" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2439-2441">Source</a><h4 class="code-header">pub fn <a href="#method.has_0rtt" class="fn">has_0rtt</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Whether 0-RTT is/was possible during the handshake</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.has_pending_retransmits" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2444-2446">Source</a><h4 class="code-header">pub fn <a href="#method.has_pending_retransmits" class="fn">has_pending_retransmits</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Whether there are any pending retransmits</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.side" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2449-2451">Source</a><h4 class="code-header">pub fn <a href="#method.side" class="fn">side</a>(&self) -> <a class="enum" href="enum.Side.html" title="enum iroh_quinn_proto::Side">Side</a></h4></section></summary><div class="docblock"><p>Look up whether we’re the client or server of this Connection</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.path_observed_address" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2454-2463">Source</a><h4 class="code-header">pub fn <a href="#method.path_observed_address" class="fn">path_observed_address</a>(
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.has_0rtt" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2448-2450">Source</a><h4 class="code-header">pub fn <a href="#method.has_0rtt" class="fn">has_0rtt</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Whether 0-RTT is/was possible during the handshake</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.has_pending_retransmits" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2453-2455">Source</a><h4 class="code-header">pub fn <a href="#method.has_pending_retransmits" class="fn">has_pending_retransmits</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Whether there are any pending retransmits</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.side" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2458-2460">Source</a><h4 class="code-header">pub fn <a href="#method.side" class="fn">side</a>(&self) -> <a class="enum" href="enum.Side.html" title="enum iroh_quinn_proto::Side">Side</a></h4></section></summary><div class="docblock"><p>Look up whether we’re the client or server of this Connection</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.path_observed_address" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2463-2472">Source</a><h4 class="code-header">pub fn <a href="#method.path_observed_address" class="fn">path_observed_address</a>(
|
||||
&self,
|
||||
path_id: <a class="struct" href="struct.PathId.html" title="struct iroh_quinn_proto::PathId">PathId</a>,
|
||||
) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/net/socket_addr/enum.SocketAddr.html" title="enum core::net::socket_addr::SocketAddr">SocketAddr</a>>, <a class="struct" href="struct.ClosedPath.html" title="struct iroh_quinn_proto::ClosedPath">ClosedPath</a>></h4></section></summary><div class="docblock"><p>Get the address observed by the remote over the given path</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.rtt" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2466-2468">Source</a><h4 class="code-header">pub fn <a href="#method.rtt" class="fn">rtt</a>(&self, path_id: <a class="struct" href="struct.PathId.html" title="struct iroh_quinn_proto::PathId">PathId</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="https://doc.rust-lang.org/nightly/core/time/struct.Duration.html" title="struct core::time::Duration">Duration</a>></h4></section></summary><div class="docblock"><p>Current best estimate of this connection’s latency (round-trip-time)</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.congestion_state" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2471-2473">Source</a><h4 class="code-header">pub fn <a href="#method.congestion_state" class="fn">congestion_state</a>(&self, path_id: <a class="struct" href="struct.PathId.html" title="struct iroh_quinn_proto::PathId">PathId</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><&dyn <a class="trait" href="congestion/trait.Controller.html" title="trait iroh_quinn_proto::congestion::Controller">Controller</a>></h4></section></summary><div class="docblock"><p>Current state of this connection’s congestion controller, for debugging purposes</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.set_max_concurrent_streams" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2479-2485">Source</a><h4 class="code-header">pub fn <a href="#method.set_max_concurrent_streams" class="fn">set_max_concurrent_streams</a>(&mut self, dir: <a class="enum" href="enum.Dir.html" title="enum iroh_quinn_proto::Dir">Dir</a>, count: <a class="struct" href="struct.VarInt.html" title="struct iroh_quinn_proto::VarInt">VarInt</a>)</h4></section></summary><div class="docblock"><p>Modify the number of remotely initiated streams that may be concurrently open</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.rtt" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2475-2477">Source</a><h4 class="code-header">pub fn <a href="#method.rtt" class="fn">rtt</a>(&self, path_id: <a class="struct" href="struct.PathId.html" title="struct iroh_quinn_proto::PathId">PathId</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="https://doc.rust-lang.org/nightly/core/time/struct.Duration.html" title="struct core::time::Duration">Duration</a>></h4></section></summary><div class="docblock"><p>Current best estimate of this connection’s latency (round-trip-time)</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.congestion_state" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2480-2482">Source</a><h4 class="code-header">pub fn <a href="#method.congestion_state" class="fn">congestion_state</a>(&self, path_id: <a class="struct" href="struct.PathId.html" title="struct iroh_quinn_proto::PathId">PathId</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><&dyn <a class="trait" href="congestion/trait.Controller.html" title="trait iroh_quinn_proto::congestion::Controller">Controller</a>></h4></section></summary><div class="docblock"><p>Current state of this connection’s congestion controller, for debugging purposes</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.set_max_concurrent_streams" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2488-2494">Source</a><h4 class="code-header">pub fn <a href="#method.set_max_concurrent_streams" class="fn">set_max_concurrent_streams</a>(&mut self, dir: <a class="enum" href="enum.Dir.html" title="enum iroh_quinn_proto::Dir">Dir</a>, count: <a class="struct" href="struct.VarInt.html" title="struct iroh_quinn_proto::VarInt">VarInt</a>)</h4></section></summary><div class="docblock"><p>Modify the number of remotely initiated streams that may be concurrently open</p>
|
||||
<p>No streams may be opened by the peer unless fewer than <code>count</code> are already open. Large
|
||||
<code>count</code>s increase both minimum and worst-case memory consumption.</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.set_max_concurrent_paths" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2496-2517">Source</a><h4 class="code-header">pub fn <a href="#method.set_max_concurrent_paths" class="fn">set_max_concurrent_paths</a>(
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.set_max_concurrent_paths" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2505-2526">Source</a><h4 class="code-header">pub fn <a href="#method.set_max_concurrent_paths" class="fn">set_max_concurrent_paths</a>(
|
||||
&mut self,
|
||||
now: <a class="struct" href="https://doc.rust-lang.org/nightly/std/time/struct.Instant.html" title="struct std::time::Instant">Instant</a>,
|
||||
count: <a class="type" href="https://doc.rust-lang.org/nightly/core/num/nonzero/type.NonZeroU32.html" title="type core::num::nonzero::NonZeroU32">NonZeroU32</a>,
|
||||
@@ -185,36 +185,36 @@ actively reduce paths they must be closed using <a href="struct.Connection.html#
|
||||
can also be used to close not-yet-opened paths.</p>
|
||||
<p>If multipath is not negotiated (see the <a href="struct.TransportConfig.html" title="struct iroh_quinn_proto::TransportConfig"><code>TransportConfig</code></a>) this can not enable
|
||||
multipath and will fail.</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.max_concurrent_streams" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2536-2538">Source</a><h4 class="code-header">pub fn <a href="#method.max_concurrent_streams" class="fn">max_concurrent_streams</a>(&self, dir: <a class="enum" href="enum.Dir.html" title="enum iroh_quinn_proto::Dir">Dir</a>) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a></h4></section></summary><div class="docblock"><p>Current number of remotely initiated streams that may be concurrently open</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.max_concurrent_streams" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2545-2547">Source</a><h4 class="code-header">pub fn <a href="#method.max_concurrent_streams" class="fn">max_concurrent_streams</a>(&self, dir: <a class="enum" href="enum.Dir.html" title="enum iroh_quinn_proto::Dir">Dir</a>) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a></h4></section></summary><div class="docblock"><p>Current number of remotely initiated streams that may be concurrently open</p>
|
||||
<p>If the target for this limit is reduced using <a href="struct.Connection.html#method.set_max_concurrent_streams" title="method iroh_quinn_proto::Connection::set_max_concurrent_streams"><code>set_max_concurrent_streams</code></a>,
|
||||
it will not change immediately, even if fewer streams are open. Instead, it will
|
||||
decrement by one for each time a remotely initiated stream of matching directionality is closed.</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.set_send_window" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2541-2543">Source</a><h4 class="code-header">pub fn <a href="#method.set_send_window" class="fn">set_send_window</a>(&mut self, send_window: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a>)</h4></section></summary><div class="docblock"><p>See <a href="struct.TransportConfig.html#method.send_window" title="method iroh_quinn_proto::TransportConfig::send_window"><code>TransportConfig::send_window()</code></a></p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.set_receive_window" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2546-2550">Source</a><h4 class="code-header">pub fn <a href="#method.set_receive_window" class="fn">set_receive_window</a>(&mut self, receive_window: <a class="struct" href="struct.VarInt.html" title="struct iroh_quinn_proto::VarInt">VarInt</a>)</h4></section></summary><div class="docblock"><p>See <a href="struct.TransportConfig.html#method.receive_window" title="method iroh_quinn_proto::TransportConfig::receive_window"><code>TransportConfig::receive_window()</code></a></p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.is_multipath_negotiated" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2556-2560">Source</a><h4 class="code-header">pub fn <a href="#method.is_multipath_negotiated" class="fn">is_multipath_negotiated</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Whether the Multipath for QUIC extension is enabled.</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.set_send_window" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2550-2552">Source</a><h4 class="code-header">pub fn <a href="#method.set_send_window" class="fn">set_send_window</a>(&mut self, send_window: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u64.html">u64</a>)</h4></section></summary><div class="docblock"><p>See <a href="struct.TransportConfig.html#method.send_window" title="method iroh_quinn_proto::TransportConfig::send_window"><code>TransportConfig::send_window()</code></a></p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.set_receive_window" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2555-2559">Source</a><h4 class="code-header">pub fn <a href="#method.set_receive_window" class="fn">set_receive_window</a>(&mut self, receive_window: <a class="struct" href="struct.VarInt.html" title="struct iroh_quinn_proto::VarInt">VarInt</a>)</h4></section></summary><div class="docblock"><p>See <a href="struct.TransportConfig.html#method.receive_window" title="method iroh_quinn_proto::TransportConfig::receive_window"><code>TransportConfig::receive_window()</code></a></p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.is_multipath_negotiated" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#2565-2569">Source</a><h4 class="code-header">pub fn <a href="#method.is_multipath_negotiated" class="fn">is_multipath_negotiated</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Whether the Multipath for QUIC extension is enabled.</p>
|
||||
<p>Multipath is only enabled after the handshake is completed and if it was enabled by both
|
||||
peers.</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.local_address_changed" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#5207-5211">Source</a><h4 class="code-header">pub fn <a href="#method.local_address_changed" class="fn">local_address_changed</a>(&mut self)</h4></section></summary><div class="docblock"><p>Handle a change in the local address, i.e. an active migration</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.current_mtu" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#6292-6299">Source</a><h4 class="code-header">pub fn <a href="#method.current_mtu" class="fn">current_mtu</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u16.html">u16</a></h4></section></summary><div class="docblock"><p>Storage size required for the largest packet that can be transmitted on all currently
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.local_address_changed" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#5216-5220">Source</a><h4 class="code-header">pub fn <a href="#method.local_address_changed" class="fn">local_address_changed</a>(&mut self)</h4></section></summary><div class="docblock"><p>Handle a change in the local address, i.e. an active migration</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.current_mtu" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#6301-6308">Source</a><h4 class="code-header">pub fn <a href="#method.current_mtu" class="fn">current_mtu</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u16.html">u16</a></h4></section></summary><div class="docblock"><p>Storage size required for the largest packet that can be transmitted on all currently
|
||||
available paths</p>
|
||||
<p>Buffers passed to <a href="struct.Connection.html#method.poll_transmit" title="method iroh_quinn_proto::Connection::poll_transmit"><code>Connection::poll_transmit</code></a> should be at least this large.</p>
|
||||
<p>When multipath is enabled, this value is the minimum MTU across all available paths.</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.add_nat_traversal_address" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#6399-6404">Source</a><h4 class="code-header">pub fn <a href="#method.add_nat_traversal_address" class="fn">add_nat_traversal_address</a>(
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.add_nat_traversal_address" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#6408-6413">Source</a><h4 class="code-header">pub fn <a href="#method.add_nat_traversal_address" class="fn">add_nat_traversal_address</a>(
|
||||
&mut self,
|
||||
address: <a class="enum" href="https://doc.rust-lang.org/nightly/core/net/socket_addr/enum.SocketAddr.html" title="enum core::net::socket_addr::SocketAddr">SocketAddr</a>,
|
||||
) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="iroh_hp/enum.Error.html" title="enum iroh_quinn_proto::iroh_hp::Error">Error</a>></h4></section></summary><div class="docblock"><p>Add addresses the local endpoint considers are reachable for nat traversal</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.remove_nat_traversal_address" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#6409-6420">Source</a><h4 class="code-header">pub fn <a href="#method.remove_nat_traversal_address" class="fn">remove_nat_traversal_address</a>(
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.remove_nat_traversal_address" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#6418-6429">Source</a><h4 class="code-header">pub fn <a href="#method.remove_nat_traversal_address" class="fn">remove_nat_traversal_address</a>(
|
||||
&mut self,
|
||||
address: <a class="enum" href="https://doc.rust-lang.org/nightly/core/net/socket_addr/enum.SocketAddr.html" title="enum core::net::socket_addr::SocketAddr">SocketAddr</a>,
|
||||
) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="enum" href="iroh_hp/enum.Error.html" title="enum iroh_quinn_proto::iroh_hp::Error">Error</a>></h4></section></summary><div class="docblock"><p>Removes an address the endpoing no longer considers reachable for nat traversal</p>
|
||||
<p>Addresses not present in the set will be silently ignored.</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.get_local_nat_traversal_addresses" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#6423-6425">Source</a><h4 class="code-header">pub fn <a href="#method.get_local_nat_traversal_addresses" class="fn">get_local_nat_traversal_addresses</a>(
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.get_local_nat_traversal_addresses" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#6432-6434">Source</a><h4 class="code-header">pub fn <a href="#method.get_local_nat_traversal_addresses" class="fn">get_local_nat_traversal_addresses</a>(
|
||||
&self,
|
||||
) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/net/socket_addr/enum.SocketAddr.html" title="enum core::net::socket_addr::SocketAddr">SocketAddr</a>>, <a class="enum" href="iroh_hp/enum.Error.html" title="enum iroh_quinn_proto::iroh_hp::Error">Error</a>></h4></section></summary><div class="docblock"><p>Get the current local nat traversal addresses</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.get_remote_nat_traversal_addresses" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#6428-6433">Source</a><h4 class="code-header">pub fn <a href="#method.get_remote_nat_traversal_addresses" class="fn">get_remote_nat_traversal_addresses</a>(
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.get_remote_nat_traversal_addresses" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#6437-6442">Source</a><h4 class="code-header">pub fn <a href="#method.get_remote_nat_traversal_addresses" class="fn">get_remote_nat_traversal_addresses</a>(
|
||||
&self,
|
||||
) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/net/socket_addr/enum.SocketAddr.html" title="enum core::net::socket_addr::SocketAddr">SocketAddr</a>>, <a class="enum" href="iroh_hp/enum.Error.html" title="enum iroh_quinn_proto::iroh_hp::Error">Error</a>></h4></section></summary><div class="docblock"><p>Get the currently advertised nat traversal addresses by the server</p>
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.initiate_nat_traversal_round" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#6488-6572">Source</a><h4 class="code-header">pub fn <a href="#method.initiate_nat_traversal_round" class="fn">initiate_nat_traversal_round</a>(
|
||||
</div></details><details class="toggle method-toggle" open><summary><section id="method.initiate_nat_traversal_round" class="method"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#6497-6581">Source</a><h4 class="code-header">pub fn <a href="#method.initiate_nat_traversal_round" class="fn">initiate_nat_traversal_round</a>(
|
||||
&mut self,
|
||||
now: <a class="struct" href="https://doc.rust-lang.org/nightly/std/time/struct.Instant.html" title="struct std::time::Instant">Instant</a>,
|
||||
) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/net/socket_addr/enum.SocketAddr.html" title="enum core::net::socket_addr::SocketAddr">SocketAddr</a>>, <a class="enum" href="iroh_hp/enum.Error.html" title="enum iroh_quinn_proto::iroh_hp::Error">Error</a>></h4></section></summary><div class="docblock"><p>Initiates a new nat traversal round</p>
|
||||
@@ -224,7 +224,7 @@ initiated, the previous one is cancelled, and paths that have not been opened ar
|
||||
<p>Returns the server addresses that are now being probed.
|
||||
If addresses fail due to spurious errors, these might succeed later and not be returned in
|
||||
this set.</p>
|
||||
</div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Debug-for-Connection" class="impl"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#6601-6607">Source</a><a href="#impl-Debug-for-Connection" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a> for <a class="struct" href="struct.Connection.html" title="struct iroh_quinn_proto::Connection">Connection</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.fmt" class="method trait-impl"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#6602-6606">Source</a><a href="#method.fmt" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html#tymethod.fmt" class="fn">fmt</a>(&self, f: &mut <a class="struct" href="https://doc.rust-lang.org/nightly/core/fmt/struct.Formatter.html" title="struct core::fmt::Formatter">Formatter</a><'_>) -> <a class="type" href="https://doc.rust-lang.org/nightly/core/fmt/type.Result.html" title="type core::fmt::Result">Result</a></h4></section></summary><div class='docblock'>Formats the value using the given formatter. <a href="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html#tymethod.fmt">Read more</a></div></details></div></details></div><h2 id="synthetic-implementations" class="section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-Freeze-for-Connection" class="impl"><a href="#impl-Freeze-for-Connection" class="anchor">§</a><h3 class="code-header">impl !<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Freeze.html" title="trait core::marker::Freeze">Freeze</a> for <a class="struct" href="struct.Connection.html" title="struct iroh_quinn_proto::Connection">Connection</a></h3></section><section id="impl-RefUnwindSafe-for-Connection" class="impl"><a href="#impl-RefUnwindSafe-for-Connection" class="anchor">§</a><h3 class="code-header">impl !<a class="trait" href="https://doc.rust-lang.org/nightly/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="struct.Connection.html" title="struct iroh_quinn_proto::Connection">Connection</a></h3></section><section id="impl-Send-for-Connection" class="impl"><a href="#impl-Send-for-Connection" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="struct.Connection.html" title="struct iroh_quinn_proto::Connection">Connection</a></h3></section><section id="impl-Sync-for-Connection" class="impl"><a href="#impl-Sync-for-Connection" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="struct.Connection.html" title="struct iroh_quinn_proto::Connection">Connection</a></h3></section><section id="impl-Unpin-for-Connection" class="impl"><a href="#impl-Unpin-for-Connection" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="struct.Connection.html" title="struct iroh_quinn_proto::Connection">Connection</a></h3></section><section id="impl-UnwindSafe-for-Connection" class="impl"><a href="#impl-UnwindSafe-for-Connection" class="anchor">§</a><h3 class="code-header">impl !<a class="trait" href="https://doc.rust-lang.org/nightly/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="struct" href="struct.Connection.html" title="struct iroh_quinn_proto::Connection">Connection</a></h3></section></div><h2 id="blanket-implementations" class="section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#138">Source</a><a href="#impl-Any-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<div class="where">where
|
||||
</div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Debug-for-Connection" class="impl"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#6610-6616">Source</a><a href="#impl-Debug-for-Connection" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a> for <a class="struct" href="struct.Connection.html" title="struct iroh_quinn_proto::Connection">Connection</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.fmt" class="method trait-impl"><a class="src rightside" href="../src/iroh_quinn_proto/connection/mod.rs.html#6611-6615">Source</a><a href="#method.fmt" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html#tymethod.fmt" class="fn">fmt</a>(&self, f: &mut <a class="struct" href="https://doc.rust-lang.org/nightly/core/fmt/struct.Formatter.html" title="struct core::fmt::Formatter">Formatter</a><'_>) -> <a class="type" href="https://doc.rust-lang.org/nightly/core/fmt/type.Result.html" title="type core::fmt::Result">Result</a></h4></section></summary><div class='docblock'>Formats the value using the given formatter. <a href="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html#tymethod.fmt">Read more</a></div></details></div></details></div><h2 id="synthetic-implementations" class="section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-Freeze-for-Connection" class="impl"><a href="#impl-Freeze-for-Connection" class="anchor">§</a><h3 class="code-header">impl !<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Freeze.html" title="trait core::marker::Freeze">Freeze</a> for <a class="struct" href="struct.Connection.html" title="struct iroh_quinn_proto::Connection">Connection</a></h3></section><section id="impl-RefUnwindSafe-for-Connection" class="impl"><a href="#impl-RefUnwindSafe-for-Connection" class="anchor">§</a><h3 class="code-header">impl !<a class="trait" href="https://doc.rust-lang.org/nightly/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="struct.Connection.html" title="struct iroh_quinn_proto::Connection">Connection</a></h3></section><section id="impl-Send-for-Connection" class="impl"><a href="#impl-Send-for-Connection" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="struct.Connection.html" title="struct iroh_quinn_proto::Connection">Connection</a></h3></section><section id="impl-Sync-for-Connection" class="impl"><a href="#impl-Sync-for-Connection" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="struct.Connection.html" title="struct iroh_quinn_proto::Connection">Connection</a></h3></section><section id="impl-Unpin-for-Connection" class="impl"><a href="#impl-Unpin-for-Connection" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="struct.Connection.html" title="struct iroh_quinn_proto::Connection">Connection</a></h3></section><section id="impl-UnwindSafe-for-Connection" class="impl"><a href="#impl-UnwindSafe-for-Connection" class="anchor">§</a><h3 class="code-header">impl !<a class="trait" href="https://doc.rust-lang.org/nightly/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="struct" href="struct.Connection.html" title="struct iroh_quinn_proto::Connection">Connection</a></h3></section></div><h2 id="blanket-implementations" class="section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#138">Source</a><a href="#impl-Any-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<div class="where">where
|
||||
T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#139">Source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html#tymethod.type_id" class="fn">type_id</a>(&self) -> <a class="struct" href="https://doc.rust-lang.org/nightly/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></h4></section></summary><div class='docblock'>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html#tymethod.type_id">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Borrow%3CT%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#212">Source</a><a href="#impl-Borrow%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><T> for T<div class="where">where
|
||||
T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#214">Source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html#tymethod.borrow" class="fn">borrow</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&T</a></h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-BorrowMut%3CT%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#221">Source</a><a href="#impl-BorrowMut%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a><T> for T<div class="where">where
|
||||
T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#222">Source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fn">borrow_mut</a>(&mut self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&mut T</a></h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-From%3CT%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/convert/mod.rs.html#785">Source</a><a href="#impl-From%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/convert/mod.rs.html#788">Source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(t: T) -> T</h4></section></summary><div class="docblock"><p>Returns the argument unchanged.</p>
|
||||
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user