]> Sergey Matveev's repositories - dht-bootstrap.git/blobdiff - dht-bootstrap.c
Less uninitialized variables
[dht-bootstrap.git] / dht-bootstrap.c
index 2e6e77dc25fe1aac8a5c858886a64e4b1b84554e..cd6c96e46b3734432230e5ba8a2d4f3a9def829e 100644 (file)
@@ -35,10 +35,6 @@ THE SOFTWARE.
 #include <time.h>
 #include <unistd.h>
 
-#ifndef MSG_CONFIRM
-#define MSG_CONFIRM 0
-#endif
-
 #define MAX(x, y) ((x) >= (y) ? (x) : (y))
 #define MIN(x, y) ((x) <= (y) ? (x) : (y))
 
@@ -53,8 +49,7 @@ send_find_node(
     const unsigned char *tid,
     int tid_len,
     const unsigned char *target,
-    int want,
-    int confirm);
+    int want);
 static int
 send_nodes(
     struct sockaddr *sa,
@@ -367,16 +362,18 @@ send_request(struct circular_list *list, int dopop, int doping, int want)
             id[i] = random() & 0xFF;
         make_tid(ttid, "fn", 0);
         debugf("Sending find_node.\n");
-        return send_find_node((struct sockaddr *)&ss, sslen, ttid, 4, id, want, 0);
+        return send_find_node((struct sockaddr *)&ss, sslen, ttid, 4, id, want);
     }
 }
 
 int
 main(int argc, char **argv)
 {
-    int port = 6881, quiet = 0, ipv4 = 1, ipv6 = 1;
-    int opt, rc, i, send4;
-    unsigned char ttid[4];
+    errno = 0;
+    int quiet = 0;
+    int ipv4 = 1;
+    int ipv6 = 1;
+    int opt = 0;
 
     while (1) {
         opt = getopt(argc, argv, "q46");
@@ -398,7 +395,7 @@ main(int argc, char **argv)
         }
     }
 
-    i = optind;
+    int i = optind;
 
     if (argc < i + 1)
         goto usage;
@@ -487,11 +484,9 @@ main(int argc, char **argv)
         }
     }
 
+    int rc = 0;
     {
-        int fd;
-        unsigned int seed;
-
-        fd = open("/dev/urandom", O_RDONLY);
+        int fd = open("/dev/urandom", O_RDONLY);
         if (fd < 0) {
             perror("open(random)");
             exit(1);
@@ -503,6 +498,7 @@ main(int argc, char **argv)
             exit(1);
         }
 
+        unsigned int seed;
         rc = read(fd, &seed, sizeof(seed));
         srandom(seed);
 
@@ -515,6 +511,8 @@ main(int argc, char **argv)
     if (!quiet)
         dht_debug = stdout;
 
+    unsigned char ttid[4];
+
     while (i < argc) {
         struct addrinfo hints, *info, *infop;
         memset(&hints, 0, sizeof(hints));
@@ -548,11 +546,11 @@ main(int argc, char **argv)
 
     token_bucket_time = time(NULL);
     token_bucket_tokens = MAX_TOKEN_BUCKET_TOKENS;
+    int send4 = 0;
 
     while (1) {
         struct timeval tv;
         fd_set readfds;
-        int rc;
 
         if ((dht_socket >= 0 && list_elements(&v4_confirmed) <= 16) ||
             (dht_socket6 >= 0 && list_elements(&v6_confirmed) <= 16))
@@ -575,7 +573,7 @@ main(int argc, char **argv)
                 list_elements(&v4_new),
                 list_elements(&v6_new));
 
-        rc = select(MAX(dht_socket, dht_socket6) + 1, &readfds, NULL, NULL, &tv);
+        int rc = select(MAX(dht_socket, dht_socket6) + 1, &readfds, NULL, NULL, &tv);
 
         if (rc < 0) {
             if (errno != EINTR) {
@@ -585,7 +583,8 @@ main(int argc, char **argv)
         }
 
         if (rc > 0) {
-            int rc, message;
+            int rc = 0;
+            int message;
             unsigned char tid[16], id[20], info_hash[20], target[20];
             unsigned char buf[1536], nodes[256], nodes6[1024], token[128];
             int tid_len = 16, token_len = 128;
@@ -855,8 +854,7 @@ send_find_node(
     const unsigned char *tid,
     int tid_len,
     const unsigned char *target,
-    int want,
-    int confirm)
+    int want)
 {
     char buf[512];
     int i = 0, rc;
@@ -881,7 +879,7 @@ send_find_node(
     ADD_V(buf, i, 512);
     rc = snprintf(buf + i, 512 - i, "1:y1:qe");
     INC(i, rc, 512);
-    return dht_send(buf, i, confirm ? MSG_CONFIRM : 0, sa, salen);
+    return dht_send(buf, i, 0, sa, salen);
 
 fail:
     errno = ENOSPC;