]> git.meshlink.io Git - meshlink/blobdiff - examples/meshlinkapp.c
Fix __warn_unused_result__, add more of it and fix the resulting warnings.
[meshlink] / examples / meshlinkapp.c
index cb15cae8eb2698c9718bcfdefa447f338ae5ec42..54e82a39ed4099fcc0d5d2bb752970091f333779 100644 (file)
@@ -3,7 +3,9 @@
 #include "../src/meshlink.h"
 
 void handle_recv_data(meshlink_handle_t *mesh, meshlink_node_t *source, void *data, size_t len) {
-       printf("Received %zu bytes from %s: %s\n", len, source->name, (char*)data);
+       (void)mesh;
+
+       printf("Received %zu bytes from %s: %s\n", len, source->name, (char *)data);
 }
 
 int main(int argc, char **argv) {
@@ -12,19 +14,28 @@ int main(int argc, char **argv) {
 
        char *remotename = argc > 3 ? argv[3] : "bar";
 
-       meshlink_handle_tmyhandle;
+       meshlink_handle_t *myhandle;
 
        myhandle = meshlink_open(confbase, name, "meshlinkapp", DEV_CLASS_STATIONARY);
 
+       if(!myhandle) {
+               fprintf(stderr, "Could not open MeshLink: %s", meshlink_strerror(meshlink_errno));
+               return 1;
+       }
+
        //Register callback function for incoming data
        meshlink_set_receive_cb(myhandle, (meshlink_receive_cb_t)handle_recv_data);
 
-       meshlink_start(myhandle);
+       if(!meshlink_start(myhandle)) {
+               fprintf(stderr, "Could not start MeshLink: %s", meshlink_strerror(meshlink_errno));
+               return 1;
+       }
 
        while(1) {
                sleep(10);
 
                meshlink_node_t *remotenode = meshlink_get_node(myhandle, remotename);
+
                if(!remotenode) {
                        fprintf(stderr, "Node %s not known yet.\n", remotename);
                        continue;
@@ -32,11 +43,14 @@ int main(int argc, char **argv) {
 
                //sample data to send out
                char mydata[200];
-               memset(mydata,0,200);
-               strcpy(mydata,"Hello World!");
+               memset(mydata, 0, 200);
+               strcpy(mydata, "Hello World!");
 
                //send out data
-               meshlink_send(myhandle,remotenode,mydata,sizeof(mydata));
+               if(!meshlink_send(myhandle, remotenode, mydata, sizeof(mydata))) {
+                       fprintf(stderr, "Error sending data: %s", meshlink_strerror(meshlink_errno));
+                       return 1;
+               }
        }
 
        meshlink_stop(myhandle);