Skip to content

Commit 43f5fed

Browse files
authored
fix(iroh-net): Emit the call-me-maybe.sent event in all cases (#2792)
## Description When the call-me-maybe is queued this event was not being emitted. ## Breaking Changes <!-- Optional, if there are any breaking changes document them, including how to migrate older code. --> ## Notes & open questions <!-- Any notes, remarks or open questions you have to make about the PR. --> ## Change checklist - [x] Self-review. - ~~[ ] Documentation updates following the [style guide](https://rust-lang.github.io/rfcs/1574-more-api-documentation-conventions.html#appendix-a-full-conventions-text), if relevant.~~ - ~~[ ] Tests if relevant.~~ - ~~[ ] All breaking changes documented.~~
1 parent 75d8019 commit 43f5fed

File tree

1 file changed

+14
-18
lines changed

1 file changed

+14
-18
lines changed

iroh-net/src/magicsock.rs

+14-18
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ use watchable::Watchable;
5353

5454
use crate::{
5555
defaults::timeouts::NETCHECK_REPORT_TIMEOUT,
56-
disco::{self, SendAddr},
56+
disco::{self, CallMeMaybe, SendAddr},
5757
discovery::{Discovery, DiscoveryItem},
5858
dns::DnsResolver,
5959
endpoint::NodeAddr,
@@ -1066,17 +1066,21 @@ impl MagicSock {
10661066
Ok(())
10671067
}
10681068

1069-
fn send_disco_message_relay(
1070-
&self,
1071-
url: &RelayUrl,
1072-
dst_key: PublicKey,
1073-
msg: disco::Message,
1074-
) -> bool {
1075-
debug!(node = %dst_key.fmt_short(), %url, %msg, "send disco message (relay)");
1076-
let pkt = self.encode_disco_message(dst_key, &msg);
1069+
fn send_disco_message_relay(&self, url: &RelayUrl, dst: NodeId, msg: disco::Message) -> bool {
1070+
debug!(node = %dst.fmt_short(), %url, %msg, "send disco message (relay)");
1071+
let pkt = self.encode_disco_message(dst, &msg);
10771072
inc!(MagicsockMetrics, send_disco_relay);
1078-
match self.try_send_relay(url, dst_key, smallvec![pkt]) {
1073+
match self.try_send_relay(url, dst, smallvec![pkt]) {
10791074
Ok(()) => {
1075+
if let disco::Message::CallMeMaybe(CallMeMaybe { ref my_numbers }) = msg {
1076+
event!(
1077+
target: "events.net.call-me-maybe.sent",
1078+
Level::DEBUG,
1079+
remote_node = %dst.fmt_short(),
1080+
via = ?url,
1081+
addrs = ?my_numbers,
1082+
);
1083+
}
10801084
inc!(MagicsockMetrics, sent_disco_relay);
10811085
disco_message_sent(&msg);
10821086
true
@@ -1224,14 +1228,6 @@ impl MagicSock {
12241228
fn send_or_queue_call_me_maybe(&self, url: &RelayUrl, dst_node: NodeId) {
12251229
let direct_addrs = self.direct_addrs.read();
12261230
if direct_addrs.fresh_enough() {
1227-
let addrs: Vec<_> = direct_addrs.iter().collect();
1228-
event!(
1229-
target: "events.net.call-me-maybe.sent",
1230-
Level::DEBUG,
1231-
remote_node = %dst_node.fmt_short(),
1232-
via = ?url,
1233-
?addrs,
1234-
);
12351231
let msg = direct_addrs.to_call_me_maybe_message();
12361232
let msg = disco::Message::CallMeMaybe(msg);
12371233
if !self.send_disco_message_relay(url, dst_node, msg) {

0 commit comments

Comments
 (0)