X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=TODO;h=a51ebb40bc2f181b55f2446e8ac5d0551e90a25d;hb=e60e3503e55317edfcf697f7bc2de4b2dd14ba5a;hp=fd6a251ac316d8aa2db244bc43fe6b76d72d2556;hpb=c45ae3089f9c7dfd619cf978726a6be5c317c47d;p=oweals%2Fgnunet.git diff --git a/TODO b/TODO index fd6a251ac..a51ebb40b 100644 --- a/TODO +++ b/TODO @@ -1,26 +1,36 @@ -0.9.0pre3: [2'11] -* NAT/UPNP: [Milan / Ayush / MW] - - [#1609] code clean up - - testing - - integration with transport service: - + test TCP - + implement UDP, HTTP/HTTPS +0.9.0pre3: +* connections fail if transport-plugin/nat produces + some addresses that don't work (enable 'use_localaddr' with bindto for example, + so that some of the 'local' IPs do not work due to the bindto); the result + seems to be that the plugin tries some of the broken addresses, fails and the + transport-level connection never comes up. +* Mantis: + - 1727 --- investigate (NEW) + - 1694 --- try to reproduce (non-deterministic, w. testcase, need core/valgrind) + - 1725 --- try to reproduce (non-deterministic, w. testcase, need core) + - 1724 --- try to reproduce + - 1709 --- need more data (Nate) + - 1717 --- need more data (Nate) + - 1701 --- try to reproduce (Nate) + - 1705 --- try to reproduce (Nate) +* clean buildbots + +0.9.0pre4: +* NAT library: [CG/MW] + - make code used by gnunet-setup asynchronous, add timeout (external-ip can hang!) * Transport: - - UDP fragmentation -* DHT: [Nate] - - track paths content travels (PUT, reply-to-get) in messages, - pass to client (client API & protocol already support this!) -* FS: [CG] - - implement multi-peer FS performance tests - + insert - + download - + search + - integration of new NAT/plugin API with HTTP/HTTPS plugin + - testing (again) * GNUNET-GTK: [CG] - figure out where in the GUI we should show active upload operations and allow aborts - handle events: + search error + publish error -* Determine RC bugs and fix those (release should have no known real bugs) +* FS [CG] + - implement multi-peer FS performance tests + gauger them! + + insert + + download + + search 0.9.0: * new webpage: @@ -31,24 +41,16 @@ 0.9.1: * TRANSPORT: [MW] - - WiFi transport backend [DB] - - Implement method of learning our external addresses from - other peers; need some kind of threshold-based - scheme, limiting both the total number of addresses that we accept - this way as well as requiring multiple confirmations; also, we - should possibly try to confirm that the given address works for - us ourselves (loopback-style) before adding it to the list - + we may be able to simplify WELCOME messages (no need to add - addresses there anymore, but may help to learn them there anyway...). - + we probably want some kind of voting/counting for learning IP addresses - (maybe including IP addresses in ads proportional to how often others - report them? we at least need some protection against >64k HELLOs!), - + provide a way to give the user a list of "learned" IP addresses and - a way to easily "veto" addresses off the list! - => If MiM attacker uses vetoed address, blacklist the specific IP for - the presumed neighbour! - - need to periodically probe latency/transport cost changes & possibly switch transport -* DV: [Nate?] + - 'TransmitFunction' requires plugins to have "unbounded" queue (or at least + queue of size > 2), might be better to have at MOST one message pending + per plugin/target and only send the next one after the continuation was + called (or use 'notify_transmit_ready-style API?) + - WLAN transport backend [DB] + - need to periodically probe latency/transport cost changes & possibly switch transport + (working ATS) +* DATASTORE: [CG] + - check indexes / SQL for performance +* DV: - proper bandwidth allocation - performance tests * PEERINFO: @@ -62,6 +64,8 @@ - Remove KBlocks in gnunet-unindex (see discussion with Kenneth Almquist on gnunet-devs in 9/2009) - use different queue prioritization for probe-downloads vs. normal downloads - re-implement gnunet-auto-share + - implement 'GNUNET_FS_file_information_create_from_directory', avoiding + code duplication with gnunet-gtk's similar code (!) * GNUNET-GTK: [CG] - add tool bar - do meaningful update to status line (starting up, peer running, #connections, shutdown, ...) @@ -74,15 +78,11 @@ - finish publish dialog details: + normalize keywords (edit subdialog) - implement download by URI dialog; figure out where to display those downloads! -* ARM: [CG/Safey] + - add combo box to select desired mime type for search +* ARM: [CG] - better tracking of which config changes actually need to cause process restarts by ARM. - handle gnunet-arm -k in combination with auto-start magic (what is the right thing here?) - discover dependencies between services -* MONKEY: [Safey] - - better crash management (attach debugging support, capture and analyze - debug output, detect random vs. deterministic crashes) - - '-m EMAIL' option for alternative e-mail TO - - '-f FILENAME' option to write report to file instead of e-mail (for testing!) 0.9.2: * PEERINFO: [NN] @@ -90,19 +90,14 @@ we have not 'used' (for their public keys) in a while; need a way to track actual 'use') - make sue we also trigger notifications whenever HELLOs expire -* TCP: +* NAT: - repeatedly resolve hostname and look up interfaces to determine our own IP - - [./transport/plugin_transport_tcp.c:391]: (style) struct or union member 'Plugin::address_update_task' is never used (related to issue above) -* TRANSPORT: - - [./transport/gnunet-service-transport.c:173]: (style) struct or union member 'TransportPlugin::rebuild' is never used (related to TCP not refreshing external addresses?) - - WiFi transport backend - * nice signal strength adjustment [MW] - * energy cost in ATS [MW] +* WLAN: + - nice signal strength adjustment [MW] + - energy cost in ATS [MW] * BLOCKS: - testcase would be nice - - generic block support for DHT * STATISTICS: - - test notification-based statistics API - implement statistics GUI (=> start from gnunet-gtk by button!) * PEERINFO: [NN] - move peerinfo to new GUI (=> start from gnunet-gtk by button!) @@ -116,9 +111,7 @@ - rate limiting - improved batching - resource limit integration with ATS -* VPN [PT] - - TCP entry/exit - - internal services - - integration with DHT routing +* VPN + - "DNS" .gnunet [MW] +* MESH: - optimized routes (beyond DHT/DV) - - "DNS" .gnunet