Fix bind so we can talk on external interfaces and surface send error
This commit is contained in:
parent
588593f619
commit
888c2ffb20
@ -88,7 +88,7 @@ impl AccountantSkel {
|
|||||||
|
|
||||||
fn notify_entry_info_subscribers(obj: &SharedSkel, entry: &Entry) {
|
fn notify_entry_info_subscribers(obj: &SharedSkel, entry: &Entry) {
|
||||||
// TODO: No need to bind().
|
// TODO: No need to bind().
|
||||||
let socket = UdpSocket::bind("127.0.0.1:0").expect("bind");
|
let socket = UdpSocket::bind("0.0.0.0:0").expect("bind");
|
||||||
|
|
||||||
// copy subscribers to avoid taking lock while doing io
|
// copy subscribers to avoid taking lock while doing io
|
||||||
let addrs = obj.entry_info_subscribers.lock().unwrap().clone();
|
let addrs = obj.entry_info_subscribers.lock().unwrap().clone();
|
||||||
@ -100,7 +100,10 @@ impl AccountantSkel {
|
|||||||
num_events: entry.events.len() as u64,
|
num_events: entry.events.len() as u64,
|
||||||
};
|
};
|
||||||
let data = serialize(&Response::EntryInfo(entry_info)).expect("serialize EntryInfo");
|
let data = serialize(&Response::EntryInfo(entry_info)).expect("serialize EntryInfo");
|
||||||
let _res = socket.send_to(&data, addr);
|
let res = socket.send_to(&data, addr);
|
||||||
|
if res.is_err() {
|
||||||
|
eprintln!("couldn't send response: {:?}", res);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user