shadowircd / TODO

/ = in progress, x = done, ? = to be discussed, F = charybdis3.1 or next releases

[/] finish legacy code removal
  [x] remove 2.8 report_error() in ratbox imported stuff
  [F] client.c, channel.c is very 2.8 style still. it'd be nice to pack them into their own 
      namespace and such. moreover, the other 2.8 code needs similar rewriting/reworking too...
  [ ] rewrite s_auth.c
    [ ] authentication state/lock manager
    [ ] move resolver/auth checker code into separated modules 
[x] port to libratbox
  [x] get it running
  [x] clean up maxconnections kludges &c
  [x] in-process SSL
  [x] port and use ratbox ssld for server links
[/] ssl stuff
  [x] client-to-client ssl
  [x] server-to-server ssl
  [x] ssl usermode (+Z)
  [x] ssl channelmode (done by extban and chm_compat)
  [ ] acknowledgement message for SSL users like '* *** You are connected using SSL cipher "DHE RSA-AES 128 CBC-SHA"'
  [ ] ssl stuff files generator in ./configure time
[x] merge some stuff from ircd-seven directly (to be determined what)
  [x] remote d:lines support
[F] kline/xline/resv sync
[F] make an ability of using bandb instead of .conf files as bans storage
[F] drop non-TS6 (legacy protocol) support
[F] Doxygen code documentation
[F] module engine rework
  [F] more beautiful way of adding new channel modes by module
  [F] make nick/user/host validation functions/match tables able to work in separated modules,
      this will help us making support for native characters sets/slashes in host etc
  [F] auth checker module
  [F] resolver module
[x] Remove glines entirely
--- other stuff
  [?] PASS selector:password for auth{} from ircd-seven? (useful for dynamic IPs)
  [?] +C (noctcp) channel/usermode from ircd-seven?
  [?] internally split out +o/+v "ranks" into a series of permissions. this could allow for configure-defined 
      special access levels, halfops, etc. (would need to match globally, somehow. extra SVINFO param?)
  [?] somehow hide channel operators like ircnet can do?
  [x] merge m_join.c and m_sjoin.c in one module (same functions, done in ratbox3)
  [x] create chmode.h and put there all declarations of chm_* - this will make some modules clean
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.