diff options
author | Christian Grothoff <christian@grothoff.org> | 2009-07-16 22:27:01 +0000 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2009-07-16 22:27:01 +0000 |
commit | 700336146abfc054ce2a380b2511a9bbe77f4ec1 (patch) | |
tree | fa63722c9afa2653f1d62db94748e7dfa2ee1e2a /TODO | |
parent | 0ce7c7880daac2269711a99f56bcc29afca5acc8 (diff) | |
download | gnunet-700336146abfc054ce2a380b2511a9bbe77f4ec1.tar.gz gnunet-700336146abfc054ce2a380b2511a9bbe77f4ec1.zip |
fixes
Diffstat (limited to 'TODO')
-rw-r--r-- | TODO | 94 |
1 files changed, 19 insertions, 75 deletions
@@ -1,80 +1,5 @@ | |||
1 | PHASE #1: (Goal: settle key design questions) | 1 | PHASE #1: (Goal: settle key design questions) |
2 | 2 | ||
3 | TRANSPORT: | ||
4 | * Make sure that the service does not go bezerk | ||
5 | on all plugins and all sessions on disconnects, | ||
6 | specifically, whenever disconnect_neighbour is called. | ||
7 | (We may have other sessions, in particular through other transports, | ||
8 | that are active for the same peer; clearly we should | ||
9 | not immediately discard all messages and stop all | ||
10 | plugins); the call is fine in the various places where it is; but except in the | ||
11 | timeout case, we should check the status of the other plugins before killing all. | ||
12 | |||
13 | * "Another peer saw us using..." messages for TCP | ||
14 | use the (random, high) sender port instead of the | ||
15 | adjusted port; this will be confusing to users... | ||
16 | |||
17 | ==9033== Invalid read of size 8 | ||
18 | ==9033== at 0x4042FA: plugin_env_receive (gnunet-service-transport.c:2058) | ||
19 | ==9033== by 0x7287643: disconnect_session (plugin_transport_tcp.c:831) | ||
20 | ==9033== by 0x7289539: disconnect_notify (plugin_transport_tcp.c:1919) | ||
21 | ==9033== by 0x524BE24: ??? (server.c:645) | ||
22 | ==9033== by 0x524C040: ??? (server.c:752) | ||
23 | ==9033== by 0x5245734: ??? (network.c:810) | ||
24 | ==9033== by 0x5245881: ??? (network.c:850) | ||
25 | ==9033== by 0x524A497: ??? (scheduler.c:425) | ||
26 | ==9033== by 0x524A77A: GNUNET_SCHEDULER_run (scheduler.c:520) | ||
27 | ==9033== by 0x524FF5C: GNUNET_SERVICE_run (service.c:1326) | ||
28 | ==9033== by 0x4054F4: main (gnunet-service-transport.c:2644) | ||
29 | ==9033== Address 0x6edaec0 is 24 bytes inside a block of size 64 free'd | ||
30 | ==9033== at 0x4C2130F: free (vg_replace_malloc.c:323) | ||
31 | ==9033== by 0x523453A: GNUNET_xfree_ (common_allocation.c:109) | ||
32 | ==9033== by 0x403DC8: disconnect_neighbour (gnunet-service-transport.c:1885) | ||
33 | ==9033== by 0x4042EE: plugin_env_receive (gnunet-service-transport.c:2057) | ||
34 | ==9033== by 0x7287643: disconnect_session (plugin_transport_tcp.c:831) | ||
35 | ==9033== by 0x7289539: disconnect_notify (plugin_transport_tcp.c:1919) | ||
36 | ==9033== by 0x524BE24: ??? (server.c:645) | ||
37 | ==9033== by 0x524C040: ??? (server.c:752) | ||
38 | ==9033== by 0x5245734: ??? (network.c:810) | ||
39 | ==9033== by 0x5245881: ??? (network.c:850) | ||
40 | ==9033== by 0x524A497: ??? (scheduler.c:425) | ||
41 | ==9033== by 0x524A77A: GNUNET_SCHEDULER_run (scheduler.c:520) | ||
42 | ==9033== | ||
43 | |||
44 | |||
45 | ==9033== Invalid write of size 4 | ||
46 | ==9033== at 0x404308: plugin_env_receive (gnunet-service-transport.c:2061) | ||
47 | ==9033== by 0x7287643: disconnect_session (plugin_transport_tcp.c:831) | ||
48 | ==9033== by 0x7289539: disconnect_notify (plugin_transport_tcp.c:1919) | ||
49 | ==9033== by 0x524BE24: ??? (server.c:645) | ||
50 | ==9033== by 0x524C040: ??? (server.c:752) | ||
51 | ==9033== by 0x5245734: ??? (network.c:810) | ||
52 | ==9033== by 0x5245881: ??? (network.c:850) | ||
53 | ==9033== by 0x524A497: ??? (scheduler.c:425) | ||
54 | ==9033== by 0x524A77A: GNUNET_SCHEDULER_run (scheduler.c:520) | ||
55 | ==9033== by 0x524FF5C: GNUNET_SERVICE_run (service.c:1326) | ||
56 | ==9033== by 0x4054F4: main (gnunet-service-transport.c:2644) | ||
57 | ==9033== Address 0x6edaed8 is 48 bytes inside a block of size 64 free'd | ||
58 | ==9033== at 0x4C2130F: free (vg_replace_malloc.c:323) | ||
59 | ==9033== by 0x523453A: GNUNET_xfree_ (common_allocation.c:109) | ||
60 | ==9033== by 0x403DC8: disconnect_neighbour (gnunet-service-transport.c:1885) | ||
61 | ==9033== by 0x4042EE: plugin_env_receive (gnunet-service-transport.c:2057) | ||
62 | ==9033== by 0x7287643: disconnect_session (plugin_transport_tcp.c:831) | ||
63 | ==9033== by 0x7289539: disconnect_notify (plugin_transport_tcp.c:1919) | ||
64 | ==9033== by 0x524BE24: ??? (server.c:645) | ||
65 | ==9033== by 0x524C040: ??? (server.c:752) | ||
66 | ==9033== by 0x5245734: ??? (network.c:810) | ||
67 | ==9033== by 0x5245881: ??? (network.c:850) | ||
68 | ==9033== by 0x524A497: ??? (scheduler.c:425) | ||
69 | ==9033== by 0x524A77A: GNUNET_SCHEDULER_run (scheduler.c:520) | ||
70 | ==9033== | ||
71 | |||
72 | |||
73 | |||
74 | CORE: | ||
75 | * fails non-deterministically with empty /tmp directory | ||
76 | |||
77 | |||
78 | 3 | ||
79 | Util: | 4 | Util: |
80 | * improve disk API [Nils] (Nils, is this done? -Christian) | 5 | * improve disk API [Nils] (Nils, is this done? -Christian) |
@@ -226,6 +151,25 @@ Minor TODO items: | |||
226 | - should latency be included in the ReceiveCallback and | 151 | - should latency be included in the ReceiveCallback and |
227 | NotifyConnect or passed on request? | 152 | NotifyConnect or passed on request? |
228 | - FIXME's with latency being simply set to 0 in a few places | 153 | - FIXME's with latency being simply set to 0 in a few places |
154 | - Memory leak (running valgrind --trace-children=yes on test_transport_api: | ||
155 | ==28393== 16 bytes in 1 blocks are indirectly lost in loss record 1 of 5 | ||
156 | ==28393== at 0x4C2260E: malloc (vg_replace_malloc.c:207) | ||
157 | ==28393== by 0x52343E3: GNUNET_xmalloc_unchecked_ (common_allocation.c:62) | ||
158 | ==28393== by 0x5234389: GNUNET_xmalloc_ (common_allocation.c:53) | ||
159 | ==28393== by 0x524458A: GNUNET_NETWORK_socket_create_from_accept (network.c:289) | ||
160 | ==28393== by 0x524B2DA: ??? (server.c:332) | ||
161 | ==28393== by 0x524A4C7: ??? (scheduler.c:425) | ||
162 | ==28393== by 0x524A73D: GNUNET_SCHEDULER_run (scheduler.c:510) | ||
163 | ==28393== by 0x524FF8C: GNUNET_SERVICE_run (service.c:1326) | ||
164 | ==28393== by 0x405500: main (gnunet-service-transport.c:2645) | ||
165 | And also: | ||
166 | ==28393== 65,744 (65,728 direct, 16 indirect) bytes in 1 blocks are definitely lost in loss record 5 of 5 | ||
167 | ==28393== at 0x4C2260E: malloc (vg_replace_malloc.c:207) | ||
168 | ==28393== by 0x52343E3: GNUNET_xmalloc_unchecked_ (common_allocation.c:62) | ||
169 | ==28393== by 0x5234389: GNUNET_xmalloc_ (common_allocation.c:53) | ||
170 | ==28393== by 0x524473E: GNUNET_NETWORK_socket_create_from_accept (network.c:323) | ||
171 | (rest of trace identical) | ||
172 | |||
229 | * SETUP: | 173 | * SETUP: |
230 | - auto-generate "defaults.conf" using gnunet-setup from "config.scm" | 174 | - auto-generate "defaults.conf" using gnunet-setup from "config.scm" |
231 | - integrate all options into "config.scm" | 175 | - integrate all options into "config.scm" |