return send_ping((struct sockaddr *)&ss, sslen, ttid, 4);
} else {
unsigned char id[20];
- int i;
- for (i = 0; i < 20; i++)
- id[i] = random() & 0xFF;
+ arc4random_buf(id, sizeof id);
make_tid(ttid, "fn", 0);
debugf("Sending find_node.\n");
return send_find_node((struct sockaddr *)&ss, sslen, ttid, 4, id, want);
dht_socket6 = newSock(ipv6addr, port);
}
- int rc = 0;
- {
- int fd = open("/dev/urandom", O_RDONLY);
- if (fd < 0) {
- perror("open(random)");
- exit(1);
- }
-
- rc = read(fd, myid, 20);
- if (rc < 20) {
- perror("open(random)");
- exit(1);
- }
-
- unsigned int seed;
- rc = read(fd, &seed, sizeof(seed));
- srandom(seed);
-
- close(fd);
- }
+ arc4random_buf(myid, sizeof myid);
memcpy(my_v, "1:v4:JB\0\0", 9);
have_v = 1;
if (!quiet)
dht_debug = stdout;
+ int rc = 0;
unsigned char ttid[4];
while (i < argc) {