X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=src%2Fmain.rs;h=94c7ab813ab00ff41a65eca0eaf7cbcc03712adc;hb=c348304dc0286a2228fe6074e994c70e80cc1db7;hp=a6b71556b558d638607cbe71f0dd62a3e109ccc9;hpb=57c102899aedc4ee5d20df939cfc3d5266815b65;p=dnsseed-rust diff --git a/src/main.rs b/src/main.rs index a6b7155..94c7ab8 100644 --- a/src/main.rs +++ b/src/main.rs @@ -173,13 +173,15 @@ pub fn scan_node(scan_time: Instant, node: SocketAddr) { let state_lock = final_peer_state.lock().unwrap(); if state_lock.recvd_version && state_lock.recvd_verack && state_lock.recvd_addrs && state_lock.recvd_block { - if store.set_node_state(node, AddressState::Good, state_lock.node_services) && state_lock.msg.0 != "" { - printer.add_line(state_lock.msg.0.clone(), state_lock.msg.1); + let old_state = store.set_node_state(node, AddressState::Good, state_lock.node_services); + if old_state != AddressState::Good && state_lock.msg.0 != "" { + printer.add_line(state_lock.msg.0.clone() + " from " + old_state.to_str(), state_lock.msg.1); } } else { assert!(state_lock.fail_reason != AddressState::Good); - if store.set_node_state(node, state_lock.fail_reason, 0) && state_lock.msg.0 != "" { - printer.add_line(state_lock.msg.0.clone(), state_lock.msg.1); + let old_state = store.set_node_state(node, state_lock.fail_reason, 0); + if old_state != state_lock.fail_reason && state_lock.msg.0 != "" { + printer.add_line(state_lock.msg.0.clone() + " from " + old_state.to_str(), state_lock.msg.1); } } future::ok(())