diff options
author | joe <joe@jerkface.net> | 2017-10-16 15:15:58 -0400 |
---|---|---|
committer | joe <joe@jerkface.net> | 2017-10-16 15:15:58 -0400 |
commit | 281d2e961876dfaf076fdb171bd0f7d44f70ba8e (patch) | |
tree | d80ab031b685929a2dce63c453f3b4ecaaf86ef8 | |
parent | ffe77f1ce892868ed8532713fb667ddd1232909f (diff) |
todo file
-rw-r--r-- | todo.txt | 95 |
1 files changed, 95 insertions, 0 deletions
diff --git a/todo.txt b/todo.txt new file mode 100644 index 00000000..f96cdb71 --- /dev/null +++ b/todo.txt | |||
@@ -0,0 +1,95 @@ | |||
1 | Online help. | ||
2 | |||
3 | Change refresh algorithm to refresh farther away buckets before closer ones. | ||
4 | |||
5 | Remove (without replacement) stale routing nodes at some point. | ||
6 | |||
7 | Debug why disabled-6 does not get peer/key storage. | ||
8 | |||
9 | Rename "keys" command to "toxids" | ||
10 | |||
11 | Give different networks a different minimum count to terminate bootstrap. Imperically, | ||
12 | tox4: 6 buckets, tox6: 3 buckets | ||
13 | |||
14 | handle exception: dhtd: Network.Socket.sendTo: does not exist (Network is unreachable | ||
15 | |||
16 | tox: fallback to https://nodes.tox.chat/json | ||
17 | |||
18 | tox: key search | ||
19 | |||
20 | tox: announce key request | ||
21 | |||
22 | tox: bootstrap motd query | ||
23 | |||
24 | tox: nat ping | ||
25 | |||
26 | tox: base64 read/show | ||
27 | |||
28 | tox: cache diffie-helman secrets | ||
29 | |||
30 | tox: Expire old Tox keys. | ||
31 | |||
32 | tox: Chat support. | ||
33 | |||
34 | bt: announce peer request | ||
35 | |||
36 | bt: Collect PeerStore garbage: "Note that you should call .put() every hour for | ||
37 | content that you want to keep alive, since nodes may discard data nodes | ||
38 | older than 2 hours." (source: https://www.npmjs.com/package/bittorrent-dht) | ||
39 | |||
40 | bt: Limit peers in get_peers response for UDP packet size limiting (around 1k). | ||
41 | |||
42 | bt: Use LMDB backend for peer store (and nodes too?). | ||
43 | |||
44 | Notes: | ||
45 | |||
46 | |||
47 | |||
48 | new commands: | ||
49 | |||
50 | p - put/publish a single given datum on a single given node. | ||
51 | |||
52 | When destination address (node-addr) is optional, it's absense means to | ||
53 | publish information in the local node's own database. | ||
54 | |||
55 | Bittorrent: (peer) publish yourself as peer in swarm. | ||
56 | arguments: {"id" : "<querying nodes id>", | ||
57 | "implied_port": <0 or 1>, | ||
58 | "info_hash" : "<20-byte infohash of target torrent>", | ||
59 | "port" : <port number>, | ||
60 | "token" : "<opaque token>"} | ||
61 | response: {"id" : "<queried nodes id>"} | ||
62 | |||
63 | p peer <infohash> <token> [node-addr] | ||
64 | |||
65 | Tox: (toxid) publish a rendezvous onion route to dht node. | ||
66 | (friend) publish friend-request to rendezvous point. | ||
67 | (contact) publish dht-nodeid to rendezvous point. | ||
68 | |||
69 | p toxid <key-pair> <token> [node-addr] | ||
70 | |||
71 | p friend <nospam> <rendezvous-addr> <text> | ||
72 | |||
73 | p contact <rendezvous-addr> | ||
74 | |||
75 | a - announce, like put/publish but automatically selects nodes to publish on | ||
76 | and continually refreshes the records. | ||
77 | |||
78 | The method name is preceded with a + to start or a - to stop a given | ||
79 | recuring publication. | ||
80 | |||
81 | a - with no arguments would list the currently active recuring publications. | ||
82 | |||
83 | a +peer <infohash> | ||
84 | a +peer <infohash> | ||
85 | |||
86 | a +toxid <key-pair> | ||
87 | a +friend <nospam> <text> | ||
88 | a +contact | ||
89 | |||
90 | k - manage key-pairs | ||
91 | |||
92 | k (list keys) | ||
93 | k gen (generate new key and list keys) | ||
94 | k add <secret-key> (input a specific secret key) | ||
95 | k secrets (list key pairs, including secret keys) | ||