]> jfr.im git - irc/rqf/shadowircd.git/blob - TODO
Specify RTLD_LOCAL explicitly.
[irc/rqf/shadowircd.git] / TODO
1 / = in progress, x = done, ? = to be discussed, F = charybdis3.1 or next releases
2
3 [/] finish legacy code removal
4 [x] remove 2.8 report_error() in ratbox imported stuff
5 [F] client.c, channel.c is very 2.8 style still. it'd be nice to pack them into their own
6 namespace and such. moreover, the other 2.8 code needs similar rewriting/reworking too...
7 [x] merge m_join.c and m_sjoin.c in one module (same functions, done in ratbox3)
8 [ ] rewrite s_auth.c
9 [ ] authentication state/lock manager
10 [ ] move resolver/auth checker code into separated modules
11 [x] port to libratbox
12 [x] get it running
13 [x] clean up maxconnections kludges &c
14 [x] in-process SSL
15 [x] port and use ratbox ssld for server links
16 [x] merge with libratbox SVN
17 [x] ssl stuff
18 [x] client-to-client ssl
19 [x] server-to-server ssl
20 [x] ssl usermode (+Z)
21 [x] ssl channelmode (done by extban and chm_compat)
22 [x] tool for generating ssl certificates and other stuff
23 [x] gnutls backend for at least SSL connections (replacing libcrypto use in m_challenge would be nice too)
24 [x] merge some stuff from ircd-seven directly (to be determined what)
25 [x] remote d:lines support
26 [x] PASS selector:password for auth{} (useful for dynamic IPs)
27 [F] kline/xline/resv sync
28 [F] make an ability of using bandb instead of .conf files as bans storage
29 [x] drop non-TS6 (legacy protocol) support
30 [F] Doxygen code documentation
31 [?] Patch or core-feature - libguess on-fly any-charset-to-utf8 translation
32 [/] module engine rework
33 [/] more beautiful way of adding new channel modes by module
34 [x] basic functionality
35 [x] some example modules
36 [ ] think on how could we append privilege checking for simple chmode - like chm_staff, but additionaly limited (e. g. IsOperResv etc);
37 possibly move the same code for all functions into separated one and make it extern?
38 [x] another idea is too make that work with privilege groups, like "serveradmins" or "ircops"
39 [ ] make nick/user/host validation functions/match tables able to work in separated modules,
40 this will help us making support for native characters sets/slashes in host etc
41 [ ] auth checker module
42 [ ] resolver module
43 [ ] hooks
44 [ ] can_kick
45 which modules could we add in charybdis distro?
46 [ ] can_send_channel
47 [?] +C (ctcp)
48 [ ] can_send_user
49 [?] +C (ctcp)
50 [x] privilege system for privilege groups, something like
51 in .conf: helper { kill_global, rehash, kline_local }
52 in modules: privilege_add("kill_global"), has_privilege(source_p, "kill_global") etc, should work the way dynamic cflags/umodes done
53 -- this is done kinda like this, but not really. See HasPrivilege() calls. privilege_add() was not needed ~nenolod
54 [x] Remove glines entirely
55 [/] test suite as in ircu
56 [?] win32
57 [?] cygwin support
58 [?] mingw support
59 [?] native win32 (VS2005/VS2008)
60 [/] Bug fixes
61 [x] Compilation without zlib headers fails - fixed
62 [x] Compilation date and time in server welcome message is in OS locale - looks ugly 'cause often it's not match user's codepage
63 [ ] Improvments
64 [ ] ircd shouldn't need bison/byacc/yacc or flex for compilation
65 --- other stuff
66 [ ] allow to set up configfiles path (etc/) instead of separated configfiles names (kline.conf, ircd.conf etc) like it is in ratbox3?
67 [?] internally split out +o/+v "ranks" into a series of permissions. this could allow for configure-defined
68 special access levels, halfops, etc. (would need to match globally, somehow. extra SVINFO param?)
69 [?] somehow hide channel operators like ircnet can do?
70 [x] create chmode.h and put there all declarations of chm_* - this will make some modules clean
71 [?] Move oper override server WALLOPS to global server notices?