+ bool blacklisted = false;
+ get_config_bool(lookup_config(c->config_tree, "blacklisted"), &blacklisted);
+
+ if(blacklisted) {
+ logger(mesh, MESHLINK_EPEER, "Peer %s is blacklisted", c->name);
+ return false;
+ }
+
+ read_ecdsa_public_key(mesh, c);
+
+ if(!ecdsa_active(c->ecdsa)) {
+ logger(mesh, MESHLINK_ERROR, "No key known for peer %s", c->name);
+
+ node_t *n = lookup_node(mesh, c->name);
+
+ if(n && n->status.reachable && !n->status.waitingforkey) {
+ logger(mesh, MESHLINK_INFO, "Requesting key from peer %s", c->name);
+ send_req_key(mesh, n);
+ }
+
+ return false;