IRCNowd: IRC at Scale

IRCNowd is an attempt to build an IRC server that can scale up to handle a network with millions of users. It is forked from ngircd 26.1 which was developed under the GPL. Additional code will be permissively licensed. IRCNowd aims to remain portable with free and open platforms, to be easy to configure and administer, to be easy for users to understand.

Goals:

  1. Keep ngircd's minimalist software philosophy
  2. Keep the code highly portbale
  3. Improve ngircd's spam defenses
  4. Improve ngircd's reliability and uptime

Proposed changes:

  1. Add connection limit exemptions (ilines)
  2. Add scriptable filter so teams can optionally block spam, obscenity. Scripting interface should support yahoo open nsfw; dynamically customizable per server
  3. Have proxy monitor use +r restricted user mode for spam protection
  4. Add defcon mode: during a connection/join/part flood, all new users are automatically given +r user mode until the attack ends
  5. Allow users to enable/disable cloaking
  6. Allow closed loops in the network topology to end netsplits forever
  7. Fix buffer exhaustion issues
  8. Fix SSL connection issue
  9. End netsplits by allowing closed loops
  10. Add ELIST functionality for IRCCloud since this client cannot use /list
  11. Add /ns and /cs aliases