]> git.meshlink.io Git - meshlink/blobdiff - src/net_setup.c
Fix __warn_unused_result__, add more of it and fix the resulting warnings.
[meshlink] / src / net_setup.c
index 1a123cf5415665e9ead4390fde87742dc9d8ff80..559f0496579ba38540c01635416160ca60c2d2a8 100644 (file)
@@ -116,7 +116,6 @@ bool node_read_public_key(meshlink_handle_t *mesh, node_t *n) {
                n->recent[i + known_count] = packmsg_get_sockaddr(&in);
        }
 
-
        config_free(&config);
        return true;
 }
@@ -170,12 +169,14 @@ bool node_read_from_config(meshlink_handle_t *mesh, node_t *n, const config_t *c
        const void *key;
        uint32_t len = packmsg_get_bin_raw(&in, &key);
 
-       if(len != 32) {
-               return false;
-       }
+       if(len) {
+               if(len != 32) {
+                       return false;
+               }
 
-       if(!ecdsa_active(n->ecdsa)) {
-               n->ecdsa = ecdsa_set_public_key(key);
+               if(!ecdsa_active(n->ecdsa)) {
+                       n->ecdsa = ecdsa_set_public_key(key);
+               }
        }
 
        n->canonical_address = packmsg_get_str_dup(&in);
@@ -231,6 +232,7 @@ bool node_write_config(meshlink_handle_t *mesh, node_t *n) {
        }
 
        if(!packmsg_output_ok(&out)) {
+               meshlink_errno = MESHLINK_EINTERNAL;
                return false;
        }
 
@@ -401,8 +403,7 @@ bool setup_myself(meshlink_handle_t *mesh) {
        graph(mesh);
 
        if(!config_scan_all(mesh, "current", "hosts", load_node, NULL)) {
-               meshlink_errno = MESHLINK_ESTORAGE;
-               return false;
+               logger(mesh, MESHLINK_WARNING, "Could not scan all host config files");
        }
 
        /* Open sockets */