Hi tech,

there are some "never read" variables in ftp.c.
The local variable "error" is set but there is either a

goto bad;
........

bad:
        (void)close(data), data = -1;
        if (tmpno)
                sendport = 1;
        return (1);

        
and the variable is not going to read here.

or the variable is just set but never read - without a goto statement.

Am I right, or are there other reasons why the error variable is set but not 
used?

Fritjof

Index: ftp.c
===================================================================
RCS file: /cvs/src/usr.bin/ftp/ftp.c,v
retrieving revision 1.84
diff -u -p -r1.84 ftp.c
--- ftp.c       20 Dec 2013 13:44:51 -0000      1.84
+++ ftp.c       22 Apr 2014 19:40:33 -0000
@@ -1408,13 +1408,11 @@ reinit:
                        if (data_addr.su_family != AF_INET) {
                                fputs(
 "Passive mode AF mismatch. Shouldn't happen!\n", ttyout);
-                               error = 1;
                                goto bad;
                        }
                        if (code / 10 == 22 && code != 227) {
                                fputs("wrong server: return code must be 227\n",
                                        ttyout);
-                               error = 1;
                                goto bad;
                        }
                        error = sscanf(pasv, "%u,%u,%u,%u,%u,%u",
@@ -1423,10 +1421,8 @@ reinit:
                        if (error != 6) {
                                fputs(
 "Passive mode address scan failure. Shouldn't happen!\n", ttyout);
-                               error = 1;
                                goto bad;
                        }
-                       error = 0;
                        memset(&data_addr, 0, sizeof(data_addr));
                        data_addr.su_family = AF_INET;
                        data_addr.su_len = sizeof(struct sockaddr_in);
@@ -1437,7 +1433,6 @@ reinit:
                        if (code / 10 == 22 && code != 228) {
                                fputs("wrong server: return code must be 228\n",
                                        ttyout);
-                               error = 1;
                                goto bad;
                        }
                        switch (data_addr.su_family) {
@@ -1450,17 +1445,14 @@ reinit:
                                if (error != 9) {
                                        fputs(
 "Passive mode address scan failure. Shouldn't happen!\n", ttyout);
-                                       error = 1;
                                        goto bad;
                                }
                                if (af != 4 || hal != 4 || pal != 2) {
                                        fputs(
 "Passive mode AF mismatch. Shouldn't happen!\n", ttyout);
-                                       error = 1;
                                        goto bad;
                                }
 
-                               error = 0;
                                memset(&data_addr, 0, sizeof(data_addr));
                                data_addr.su_family = AF_INET;
                                data_addr.su_len = sizeof(struct sockaddr_in);
@@ -1481,17 +1473,14 @@ reinit:
                                if (error != 21) {
                                        fputs(
 "Passive mode address scan failure. Shouldn't happen!\n", ttyout);
-                                       error = 1;
                                        goto bad;
                                }
                                if (af != 6 || hal != 16 || pal != 2) {
                                        fputs(
 "Passive mode AF mismatch. Shouldn't happen!\n", ttyout);
-                                       error = 1;
                                        goto bad;
                                }
 
-                               error = 0;
                                memset(&data_addr, 0, sizeof(data_addr));
                                data_addr.su_family = AF_INET6;
                                data_addr.su_len = sizeof(struct sockaddr_in6);
@@ -1515,20 +1504,17 @@ reinit:
                        if (code / 10 == 22 && code != 229) {
                                fputs("wrong server: return code must be 229\n",
                                        ttyout);
-                               error = 1;
                                goto bad;
                        }
                        if (sscanf(pasv, "%c%c%c%d%c", &delim[0],
                                        &delim[1], &delim[2], &port[1],
                                        &delim[3]) != 5) {
                                fputs("parse error!\n", ttyout);
-                               error = 1;
                                goto bad;
                        }
                        if (delim[0] != delim[1] || delim[0] != delim[2]
                         || delim[0] != delim[3]) {
                                fputs("parse error!\n", ttyout);
-                               error = 1;
                                goto bad;
                        }
                        data_addr = hisctladdr;

Reply via email to