Correct ENR update and log formatting (#651)
This commit is contained in:
parent
cbe8dd96b2
commit
e025217185
@ -77,7 +77,7 @@ impl<TSubstream> Discovery<TSubstream> {
|
|||||||
None => String::from(""),
|
None => String::from(""),
|
||||||
};
|
};
|
||||||
|
|
||||||
info!(log, "ENR Initialised"; "ENR" => local_enr.to_base64(), "Seq" => local_enr.seq());
|
info!(log, "ENR Initialised"; "enr" => local_enr.to_base64(), "seq" => local_enr.seq());
|
||||||
debug!(log, "Discv5 Node ID Initialised"; "node_id" => format!("{}",local_enr.node_id()));
|
debug!(log, "Discv5 Node ID Initialised"; "node_id" => format!("{}",local_enr.node_id()));
|
||||||
|
|
||||||
// the last parameter enables IP limiting. 2 Nodes on the same /24 subnet per bucket and 10
|
// the last parameter enables IP limiting. 2 Nodes on the same /24 subnet per bucket and 10
|
||||||
@ -110,8 +110,8 @@ impl<TSubstream> Discovery<TSubstream> {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Allows the application layer to update the `ip` and `port` of the local ENR. The second
|
/// Allows the application layer to update the `IP` and `port` of the local ENR. The second
|
||||||
/// parameter defines whether the port is a TPC port. If false, this is interpreted as a UDP
|
/// parameter defines whether the port is a TCP port. If false, this is interpreted as a UDP
|
||||||
/// port.
|
/// port.
|
||||||
pub fn update_local_enr(&mut self, socket: std::net::SocketAddr, is_tcp: bool) {
|
pub fn update_local_enr(&mut self, socket: std::net::SocketAddr, is_tcp: bool) {
|
||||||
// discv5 checks to see if an update is necessary before performing it, so we do not
|
// discv5 checks to see if an update is necessary before performing it, so we do not
|
||||||
@ -251,7 +251,7 @@ where
|
|||||||
}
|
}
|
||||||
Ok(Async::NotReady) => break,
|
Ok(Async::NotReady) => break,
|
||||||
Err(e) => {
|
Err(e) => {
|
||||||
warn!(self.log, "Discovery peer search failed"; "Error" => format!("{:?}", e));
|
warn!(self.log, "Discovery peer search failed"; "error" => format!("{:?}", e));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -266,7 +266,7 @@ where
|
|||||||
// query.
|
// query.
|
||||||
}
|
}
|
||||||
Discv5Event::SocketUpdated(socket) => {
|
Discv5Event::SocketUpdated(socket) => {
|
||||||
info!(self.log, "Address updated"; "IP" => format!("{}",socket.ip()));
|
info!(self.log, "Address updated"; "ip" => format!("{}",socket.ip()), "port" => format!("{}", socket.port()));
|
||||||
metrics::inc_counter(&metrics::ADDRESS_UPDATE_COUNT);
|
metrics::inc_counter(&metrics::ADDRESS_UPDATE_COUNT);
|
||||||
let mut address = Multiaddr::from(socket.ip());
|
let mut address = Multiaddr::from(socket.ip());
|
||||||
address.push(Protocol::Tcp(self.tcp_port));
|
address.push(Protocol::Tcp(self.tcp_port));
|
||||||
|
@ -204,6 +204,11 @@ where
|
|||||||
&mut self,
|
&mut self,
|
||||||
out: <RPCProtocol as InboundUpgrade<TSubstream>>::Output,
|
out: <RPCProtocol as InboundUpgrade<TSubstream>>::Output,
|
||||||
) {
|
) {
|
||||||
|
// update the keep alive timeout if there are no more remaining outbound streams
|
||||||
|
if let KeepAlive::Until(_) = self.keep_alive {
|
||||||
|
self.keep_alive = KeepAlive::Until(Instant::now() + self.inactive_timeout);
|
||||||
|
}
|
||||||
|
|
||||||
let (req, substream) = out;
|
let (req, substream) = out;
|
||||||
// drop the stream and return a 0 id for goodbye "requests"
|
// drop the stream and return a 0 id for goodbye "requests"
|
||||||
if let r @ RPCRequest::Goodbye(_) = req {
|
if let r @ RPCRequest::Goodbye(_) = req {
|
||||||
|
@ -219,6 +219,7 @@ impl Stream for Service {
|
|||||||
if !self.verified_listen_address {
|
if !self.verified_listen_address {
|
||||||
let multiaddr = Swarm::listeners(&self.swarm).next();
|
let multiaddr = Swarm::listeners(&self.swarm).next();
|
||||||
if let Some(multiaddr) = multiaddr {
|
if let Some(multiaddr) = multiaddr {
|
||||||
|
self.verified_listen_address = true;
|
||||||
if let Some(socket_addr) = multiaddr_to_socket_addr(multiaddr) {
|
if let Some(socket_addr) = multiaddr_to_socket_addr(multiaddr) {
|
||||||
self.swarm.update_local_enr_socket(socket_addr, true);
|
self.swarm.update_local_enr_socket(socket_addr, true);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user