• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-R7000-V1.0.7.12_1.2.5/ap/gpl/transmission/transmission-2.73/third-party/dht/

Lines Matching defs:nodes

143     int count;                  /* number of nodes */
145 struct node *nodes;
164 /* When performing a search, we search for up to SEARCH_NODES closest nodes
176 struct search_node nodes[SEARCH_NODES];
226 const unsigned char *nodes, int nodes_len,
303 /* The maximum number of nodes that we snub. There is probably little
498 /* Every bucket contains an unordered list of nodes. */
508 n = b->nodes;
528 n = b->nodes;
583 node->next = b->nodes;
584 b->nodes = node;
652 /* The internal blacklist is an LRU cache of nodes that have sent
674 if(id_cmp(sr->nodes[i].id, id) == 0)
675 flush_search_node(&sr->nodes[i], sr);
708 struct node *nodes;
727 nodes = b->nodes;
728 b->nodes = NULL;
732 while(nodes) {
734 n = nodes;
735 nodes = nodes->next;
765 n = b->nodes;
794 n = b->nodes;
811 n = b->nodes;
814 last 15 seconds. This gives nodes the time to reply, but
815 tends to concentrate on the same nodes, so that we get rid
816 of bad nodes fast. */
838 incorrect unless there's more than 8 nodes in the DHT. */
869 n->next = b->nodes;
870 b->nodes = n;
875 /* Called periodically to purge known-bad nodes. Note that we're very
876 conservative here: broken nodes in the table don't do much harm, we'll
885 while(b->nodes && b->nodes->pinged >= 4) {
886 n = b->nodes;
887 b->nodes = n->next;
893 p = b->nodes;
914 /* While a search is in progress, we don't necessarily keep the nodes being
931 /* A search contains a list of nodes, sorted by decreasing distance to the
950 if(id_cmp(id, sr->nodes[i].id) == 0) {
951 n = &sr->nodes[i];
954 if(xorcmp(id, sr->nodes[i].id, sr->id) < 0)
965 sr->nodes[j] = sr->nodes[j - 1];
968 n = &sr->nodes[i];
998 int i = n - sr->nodes, j;
1000 sr->nodes[j] = sr->nodes[j + 1];
1035 if(sr->nodes[i].pinged < 3 && !sr->nodes[i].replied &&
1036 sr->nodes[i].request_time < now.tv_sec - 15)
1037 n = &sr->nodes[i];
1066 /* Check if the first 8 live nodes have replied. */
1069 struct search_node *n = &sr->nodes[i];
1086 struct search_node *n = &sr->nodes[i];
1125 j += search_send_get_peers(sr, &sr->nodes[i]);
1180 n = b->nodes;
1217 n = &sr->nodes[i];
1218 /* Discard any doubtful nodes. */
1454 struct node *n = b->nodes;
1483 struct node *n = b->nodes;
1560 struct search_node *n = &sr->nodes[i];
1579 fprintf(f, " %d/%d nodes:", st->numpeers, st->maxpeers);
1696 while(b->nodes) {
1697 struct node *n = b->nodes;
1698 b->nodes = n->next;
1707 while(b->nodes) {
1708 struct node *n = b->nodes;
1709 b->nodes = n->next;
1816 buckets full of broken nodes. */
1877 unsigned char nodes[256], nodes6[1024], token[128];
1902 nodes, &nodes_len, nodes6, &nodes6_len,
1961 unsigned char *ni = nodes + i * 26;
2028 if(id_cmp(sr->nodes[i].id, id) == 0) {
2029 sr->nodes[i].request_time = 0;
2030 sr->nodes[i].reply_time = now.tv_sec;
2031 sr->nodes[i].acked = 1;
2032 sr->nodes[i].pinged = 0;
2053 debugf("Sending closest nodes (%d).\n", want);
2079 debugf("Sending nodes for get_peers.\n");
2198 /* For restoring to work without discarding too many nodes, the list
2204 n = b->nodes;
2216 n = b->nodes;
2236 n = b->nodes;
2248 n = b->nodes;
2412 const unsigned char *nodes, int nodes_len,
2423 rc = snprintf(buf + i, 2048 - i, "5:nodes%d:", nodes_len);
2425 COPY(buf, i, nodes, nodes_len, 2048);
2477 insert_closest_node(unsigned char *nodes, int numnodes,
2490 if(id_cmp(n->id, nodes + size * i) == 0)
2492 if(xorcmp(n->id, nodes + size * i, id) < 0)
2503 memmove(nodes + size * (i + 1), nodes + size * i,
2508 memcpy(nodes + size * i, n->id, 20);
2509 memcpy(nodes + size * i + 20, &sin->sin_addr, 4);
2510 memcpy(nodes + size * i + 24, &sin->sin_port, 2);
2513 memcpy(nodes + size * i, n->id, 20);
2514 memcpy(nodes + size * i + 20, &sin6->sin6_addr, 16);
2515 memcpy(nodes + size * i + 36, &sin6->sin6_port, 2);
2524 buffer_closest_nodes(unsigned char *nodes, int numnodes,
2527 struct node *n = b->nodes;
2530 numnodes = insert_closest_node(nodes, numnodes, id, n);
2543 unsigned char nodes[8 * 26];
2554 numnodes = buffer_closest_nodes(nodes, numnodes, id, b);
2556 numnodes = buffer_closest_nodes(nodes, numnodes, id, b->next);
2559 numnodes = buffer_closest_nodes(nodes, numnodes, id, b);
2575 debugf(" (%d+%d nodes.)\n", numnodes, numnodes6);
2578 nodes, numnodes * 26,
2818 p = dht_memmem(buf, buflen, "5:nodes", 7);