Fix warnings from cppcheck.
authorGuus Sliepen <guus@tinc-vpn.org>
Sun, 7 Oct 2012 15:53:41 +0000 (17:53 +0200)
committerGuus Sliepen <guus@tinc-vpn.org>
Sun, 7 Oct 2012 15:53:41 +0000 (17:53 +0200)
src/graph.c
src/net_setup.c
src/tincd.c

index d68a973..e2ef8b1 100644 (file)
@@ -315,7 +315,7 @@ void dump_graph(void) {
        node_t *n;
        edge_t *e;
        char *filename = NULL, *tmpname = NULL;
-       FILE *file;
+       FILE *file, *pipe;
        
        if(!graph_changed || !get_config_string(lookup_config(config_tree, "GraphDumpFile"), &filename))
                return;
@@ -325,7 +325,7 @@ void dump_graph(void) {
        ifdebug(PROTOCOL) logger(LOG_NOTICE, "Dumping graph");
        
        if(filename[0] == '|') {
-               file = popen(filename + 1, "w");
+               file = pipe = popen(filename + 1, "w");
        } else {
                xasprintf(&tmpname, "%s.new", filename);
                file = fopen(tmpname, "w");
@@ -354,7 +354,7 @@ void dump_graph(void) {
        fprintf(file, "}\n");   
        
        if(filename[0] == '|') {
-               pclose(file);
+               pclose(pipe);
        } else {
                fclose(file);
 #ifdef HAVE_MINGW
index a28ab7a..3e435dd 100644 (file)
@@ -55,7 +55,8 @@ proxytype_t proxytype;
 
 bool read_rsa_public_key(connection_t *c) {
        FILE *fp;
-       char *fname;
+       char *pubname;
+       char *hcfname;
        char *key;
 
        if(!c->rsa_key) {
@@ -77,80 +78,79 @@ bool read_rsa_public_key(connection_t *c) {
 
        /* Else, check for PublicKeyFile statement and read it */
 
-       if(get_config_string(lookup_config(c->config_tree, "PublicKeyFile"), &fname)) {
-               fp = fopen(fname, "r");
+       if(get_config_string(lookup_config(c->config_tree, "PublicKeyFile"), &pubname)) {
+               fp = fopen(pubname, "r");
 
                if(!fp) {
-                       logger(LOG_ERR, "Error reading RSA public key file `%s': %s",
-                                  fname, strerror(errno));
-                       free(fname);
+                       logger(LOG_ERR, "Error reading RSA public key file `%s': %s", pubname, strerror(errno));
+                       free(pubname);
                        return false;
                }
 
-               free(fname);
                c->rsa_key = PEM_read_RSAPublicKey(fp, &c->rsa_key, NULL, NULL);
                fclose(fp);
 
-               if(c->rsa_key)
+               if(c->rsa_key) {
+                       free(pubname);
                        return true;            /* Woohoo. */
+               }
 
                /* If it fails, try PEM_read_RSA_PUBKEY. */
-               fp = fopen(fname, "r");
+               fp = fopen(pubname, "r");
 
                if(!fp) {
-                       logger(LOG_ERR, "Error reading RSA public key file `%s': %s",
-                                  fname, strerror(errno));
-                       free(fname);
+                       logger(LOG_ERR, "Error reading RSA public key file `%s': %s", pubname, strerror(errno));
+                       free(pubname);
                        return false;
                }
 
-               free(fname);
                c->rsa_key = PEM_read_RSA_PUBKEY(fp, &c->rsa_key, NULL, NULL);
                fclose(fp);
 
                if(c->rsa_key) {
 //                             RSA_blinding_on(c->rsa_key, NULL);
+                       free(pubname);
                        return true;
                }
 
-               logger(LOG_ERR, "Reading RSA public key file `%s' failed: %s",
-                          fname, strerror(errno));
+               logger(LOG_ERR, "Reading RSA public key file `%s' failed: %s", pubname, strerror(errno));
+               free(pubname);
                return false;
        }
 
        /* Else, check if a harnessed public key is in the config file */
 
-       xasprintf(&fname, "%s/hosts/%s", confbase, c->name);
-       fp = fopen(fname, "r");
+       xasprintf(&hcfname, "%s/hosts/%s", confbase, c->name);
+       fp = fopen(hcfname, "r");
 
        if(!fp) {
-               logger(LOG_ERR, "Error reading RSA public key file `%s': %s", fname, strerror(errno));
-               free(fname);
+               logger(LOG_ERR, "Error reading RSA public key file `%s': %s", hcfname, strerror(errno));
+               free(hcfname);
                return false;
        }
 
        c->rsa_key = PEM_read_RSAPublicKey(fp, &c->rsa_key, NULL, NULL);
        fclose(fp);
-       free(fname);
 
-       if(c->rsa_key)
+       if(c->rsa_key) {
+               free(hcfname);
                return true;
+       }
 
        /* Try again with PEM_read_RSA_PUBKEY. */
 
-       xasprintf(&fname, "%s/hosts/%s", confbase, c->name);
-       fp = fopen(fname, "r");
+       fp = fopen(hcfname, "r");
 
        if(!fp) {
-               logger(LOG_ERR, "Error reading RSA public key file `%s': %s", fname, strerror(errno));
-               free(fname);
+               logger(LOG_ERR, "Error reading RSA public key file `%s': %s", hcfname, strerror(errno));
+               free(hcfname);
                return false;
        }
 
+       free(hcfname);
        c->rsa_key = PEM_read_RSA_PUBKEY(fp, &c->rsa_key, NULL, NULL);
 //     RSA_blinding_on(c->rsa_key, NULL);
        fclose(fp);
-       free(fname);
 
        if(c->rsa_key)
                return true;
index 566031a..53f91e8 100644 (file)
@@ -338,7 +338,7 @@ static bool keygen(int bits) {
        RSA *rsa_key;
        FILE *f;
        char *name = get_name();
-       char *filename;
+       char *pubname, *privname;
 
        fprintf(stderr, "Generating %d bits keys:\n", bits);
        rsa_key = RSA_generate_key(bits, 0x10001, indicator, NULL);
@@ -349,8 +349,9 @@ static bool keygen(int bits) {
        } else
                fprintf(stderr, "Done.\n");
 
-       xasprintf(&filename, "%s/rsa_key.priv", confbase);
-       f = ask_and_open(filename, "private RSA key");
+       xasprintf(&privname, "%s/rsa_key.priv", confbase);
+       f = ask_and_open(privname, "private RSA key");
+       free(privname);
 
        if(!f)
                return false;
@@ -363,14 +364,14 @@ static bool keygen(int bits) {
        fputc('\n', f);
        PEM_write_RSAPrivateKey(f, rsa_key, NULL, NULL, 0, NULL, NULL);
        fclose(f);
-       free(filename);
 
        if(name)
-               xasprintf(&filename, "%s/hosts/%s", confbase, name);
+               xasprintf(&pubname, "%s/hosts/%s", confbase, name);
        else
-               xasprintf(&filename, "%s/rsa_key.pub", confbase);
+               xasprintf(&pubname, "%s/rsa_key.pub", confbase);
 
-       f = ask_and_open(filename, "public RSA key");
+       f = ask_and_open(pubname, "public RSA key");
+       free(pubname);
 
        if(!f)
                return false;
@@ -378,7 +379,6 @@ static bool keygen(int bits) {
        fputc('\n', f);
        PEM_write_RSAPublicKey(f, rsa_key);
        fclose(f);
-       free(filename);
        free(name);
 
        return true;