+ n->last_state_change = now.tv_sec;
+
+ if(n->status.reachable) {
+ logger(DEBUG_TRAFFIC, LOG_DEBUG, "Node %s (%s) became reachable",
+ n->name, n->hostname);
+ if (n != myself)
+ became_reachable_count++;
+ } else {
+ logger(DEBUG_TRAFFIC, LOG_DEBUG, "Node %s (%s) became unreachable",
+ n->name, n->hostname);
+ if (n != myself)
+ became_unreachable_count++;
+ }
+
+ if(experimental && OPTION_VERSION(n->options) >= 2)
+ n->status.sptps = true;
+
+ /* TODO: only clear status.validkey if node is unreachable? */
+
+ n->status.validkey = false;
+ if(n->status.sptps) {
+ sptps_stop(&n->sptps);
+ n->status.waitingforkey = false;
+ }
+ n->last_req_key = 0;
+
+ n->status.udp_confirmed = false;
+ n->maxmtu = MTU;
+ n->maxrecentlen = 0;
+ n->minmtu = 0;
+ n->mtuprobes = 0;
+
+ timeout_del(&n->udp_ping_timeout);