source: branches/ithildin-win32/TODO @ 591

Revision 591, 3.4 KB checked in by wd, 7 years ago (diff)

Add "unused data" tag to module loader/unloader macros. Update TODO.

  • Property svn:keywords set to Id Rev
Line 
1-------------------------------------------------------------------------------
2$Id$
3-------------------------------------------------------------------------------
4
5There are two sets of lists here.  The first is the list for desired core
6functionality.  The second is the list for desired module functionality.  In
7some cases the two may have overlapping features.  Additionally, milestones and
8a release path are provided.
9
10-------------------------------------------------------------------------------
11Core system (source/*)
12-------------------------------------------------------------------------------
13The core system is largely finished and will receive only minor functtionality
14updates from this point on (hopefully).  As such the list of work  to be done
15is short, and will hopefully remain short.
16
17For 1.2:
18 - Add an option to output PID to a file (duh?)
19 - Make the configuration reader modular (support for bindconf and XML at
20   least)
21 - Make the configuration reader do better error checking (allow spec files
22   with all possible options to be supplied which will allow for unknown value
23   checks and the like)
24 - Write /dev/poll support (anybody want to contribute a Solaris box for me to
25   test this on? :)
26 - Add support for compressed socket connections (using zlib I guess)
27 - Change the hook API to use varargs to make it easier to pass data around
28For 2.0:
29 - All of the above and..
30 - Add a real string handling system.  This will consist of a few smaller
31   categories:
32   . Create a string type with accompanying functions that cannot be
33     overflowed using documented APIs and will grow as necessary/desired.
34   . Add support for at least UTF-8 handling and translation tables.
35   . Take the ircd module's "message format' code and generalize it a little
36     more
37 - Add threading support.  This will wrap the local thread implementation
38   and provide some extra bonuses like easier condition variable use and
39   some extra statistics.
40 - win32 support
41 - re-assess multibyte character support.  right now I wrap the libc
42   functions for strings to not bother with it (efficiency) but the world is
43   moving that way, so perhaps that's not a good idea.
44 - re-assess module dependency graphs.  it might make more sense for
45   dependent modules to be compiled with links to the shared libs they need
46   rather than the whole EXPORT_SYMBOL tomfoolery i do now
47
48-------------------------------------------------------------------------------
49Proxy scanning module (modules/proxyscan/*)
50-------------------------------------------------------------------------------
51The proxy scanner is largely finished, and needs only minor changes
52(hopefully).
53
54 - Fix the HTTP proxy scanner to handle broken HTTP servers which do not return
55   proper replies for requests, but still detect broken HTTP servers which are
56   open but return no reply at all.
57 - Fix the cacheing/etc system to handle huge influxes of queries, and create
58   backlogs if necessary.
59 - Add some kind of support to store found proxies in a database, and work with
60   the db to handle repeat offenders.
61
62-------------------------------------------------------------------------------
63Non-blocking DNS module (modules/dns/*)
64-------------------------------------------------------------------------------
65The dns module is mostly finished.
66
67 - Add referer/CNAME support (usually not necessary)
68 - Add TCP socket support to handle 'tc' packets
69
Note: See TracBrowser for help on using the repository browser.