]> git.meshlink.io Git - meshlink/blobdiff - examples/channels.c
Don't call graph() twice when a new connection replaces an older one.
[meshlink] / examples / channels.c
index 2059b387e803dcd140cfa083b57953b9ba585f1f..70c27004fb4f7216dad47f3f738d1de129477499 100644 (file)
@@ -96,7 +96,7 @@ static void parse_command(meshlink_handle_t *mesh, char *buf) {
                        return;
                }
 
-               invitation = meshlink_invite(mesh, arg);
+               invitation = meshlink_invite(mesh, NULL, arg);
 
                if(!invitation) {
                        fprintf(stderr, "Could not invite '%s': %s\n", arg, meshlink_strerror(meshlink_errno));
@@ -139,6 +139,22 @@ static void parse_command(meshlink_handle_t *mesh, char *buf) {
                meshlink_blacklist(mesh, node);
 
                printf("Node '%s' blacklisted.\n", arg);
+       } else if(!strcasecmp(buf, "whitelist")) {
+               if(!arg) {
+                       fprintf(stderr, "/whitelist requires an argument!\n");
+                       return;
+               }
+
+               meshlink_node_t *node = meshlink_get_node(mesh, arg);
+
+               if(!node) {
+                       fprintf(stderr, "Error looking up '%s': %s\n", arg, meshlink_strerror(meshlink_errno));
+                       return;
+               }
+
+               meshlink_whitelist(mesh, node);
+
+               printf("Node '%s' whitelisted.\n", arg);
        } else if(!strcasecmp(buf, "who")) {
                if(!arg) {
                        nodes = meshlink_get_all_nodes(mesh, nodes, &nnodes);