int pingtimeout = c->node ? mesh->dev_class_traits[c->node->devclass].pingtimeout : default_timeout;
int pinginterval = c->node ? mesh->dev_class_traits[c->node->devclass].pinginterval : default_interval;
- if(c->outgoing && c->outgoing->timeout < 5) {
+ if(c->outgoing && !c->status.active && c->outgoing->timeout < 5) {
pingtimeout = 1;
}
n->status.dirty = false;
}
- if(n->status.validkey && n->last_req_key + 3600 < mesh->loop.now.tv_sec) {
+ if(n->status.reachable && n->status.validkey && n->last_req_key + 3600 < mesh->loop.now.tv_sec) {
logger(mesh, MESHLINK_DEBUG, "SPTPS key renewal for node %s", n->name);
devtool_sptps_renewal_probe((meshlink_node_t *)n);