]> git.meshlink.io Git - meshlink/commitdiff
Improve logging of connection attemps.
authorGuus Sliepen <guus@meshlink.io>
Wed, 5 May 2021 18:13:44 +0000 (20:13 +0200)
committerGuus Sliepen <guus@meshlink.io>
Fri, 7 May 2021 08:48:57 +0000 (10:48 +0200)
Ensure all causes for a connection to be activated or terminated are
logged at INFO level or higher. But remove the "Closing connection with"
message for connections that were never activated.

src/net.c
src/net_socket.c
src/protocol_auth.c

index 9a062f41482536f4f1d7fc4e1051e8240bae9ea6..35cfc6502a6b12091fd36ed8d9353aa38765b3ce 100644 (file)
--- a/src/net.c
+++ b/src/net.c
@@ -52,7 +52,9 @@ static const int default_interval = 60;
   - Check if we need to retry making an outgoing connection
 */
 void terminate_connection(meshlink_handle_t *mesh, connection_t *c, bool report) {
-       logger(mesh, MESHLINK_INFO, "Closing connection with %s", c->name);
+       if(c->status.active) {
+               logger(mesh, MESHLINK_INFO, "Closing connection with %s", c->name);
+       }
 
        if(c->node && c->node->connection == c) {
                if(c->status.active && mesh->meta_status_cb) {
index dd02bf33bb7bbe26fed204c0066befa4f447005e..4989b6cf0578a0471a868cdfc8a1a09a633bdd32 100644 (file)
@@ -161,7 +161,7 @@ static void handle_meta_io(event_loop_t *loop, void *data, int flags) {
                if(!result) {
                        finish_connecting(mesh, c);
                } else {
-                       logger(mesh, MESHLINK_DEBUG, "Error while connecting to %s: %s", c->name, sockstrerror(result));
+                       logger(mesh, MESHLINK_ERROR, "Error while connecting to %s: %s", c->name, sockstrerror(result));
                        terminate_connection(mesh, c, false);
                        return;
                }
index 5f2fc1c38cc35a9b48698aa1e38771f9a300132d..a0d350d5b9ff83700439b02802ad5882c739b668 100644 (file)
@@ -296,10 +296,13 @@ bool id_h(meshlink_handle_t *mesh, connection_t *c, const char *request) {
                snprintf(label, sizeof(label), "%s %s %s", meshlink_tcp_label, c->name, mesh->self->name);
        }
 
-       char buf1[1024], buf2[1024];
-       bin2hex((uint8_t *)mesh->private_key + 64, buf1, 32);
-       bin2hex((uint8_t *)n->ecdsa + 64, buf2, 32);
-       logger(mesh, MESHLINK_DEBUG, "Connection to %s mykey %s hiskey %s", c->name, buf1, buf2);
+       if(mesh->log_level <= MESHLINK_DEBUG) {
+               char buf1[1024], buf2[1024];
+               bin2hex((uint8_t *)mesh->private_key + 64, buf1, 32);
+               bin2hex((uint8_t *)n->ecdsa + 64, buf2, 32);
+               logger(mesh, MESHLINK_DEBUG, "Connection to %s mykey %s hiskey %s", c->name, buf1, buf2);
+       }
+
        return sptps_start(&c->sptps, c, c->outgoing, false, mesh->private_key, n->ecdsa, label, sizeof(label) - 1, send_meta_sptps, receive_meta_sptps);
 }
 
@@ -355,7 +358,7 @@ bool ack_h(meshlink_handle_t *mesh, connection_t *c, const char *request) {
        } else {
                if(n->connection) {
                        /* Oh dear, we already have a connection to this node. */
-                       logger(mesh, MESHLINK_DEBUG, "Established a second connection with %s, closing old connection", n->connection->name);
+                       logger(mesh, MESHLINK_INFO, "Established a second connection with %s, closing old connection", n->connection->name);
 
                        if(n->connection->outgoing) {
                                if(c->outgoing) {