InspIRCd

InspIRCd is a highly modular lightweight IRC Daemon written in C++
Download

InspIRCd Ranking & Summary

Advertisement

  • Rating:
  • License:
  • GPL
  • Price:
  • FREE
  • Publisher Name:
  • ChatSpike Development Team
  • Publisher web site:
  • http://www.inspircd.org

InspIRCd Tags


InspIRCd Description

InspIRCd is a highly modular lightweight IRC Daemon written in C++ InspIRCd is a modular C++ IRC Daemon for Linux, BSD and Windows systems created to provide a stable, modern, lightweight ircd (irc server) from scratch and provide a vast number of features in a modularised form using an advanced module API.By keeping the functionality of the main core to a minimum we hope to increase the stability and speed of our project and make it customisable to the needs of many users. InspIRCd is designed primarily to be a custom irc server for the chatspike irc network (irc.chatspike.net) but we are releasing it into the public domain under GPL so that you may benifit yourself from our work.InspIRCd is written from scratch, avoiding the inherent instability under large loads which can be seen in many other IRC server distributions which have the same feature set. Requirements: · GCC (at least version 3.0) · Perl (at least version 5.6) · Optional: pcre, openssl, mysql, gnutls What's New in This Release: · Yes, Square Meater is a real cow breed. Only aussies would come up with something so funny. · Default 'noisy' to false. Until i hear from w00t i cant see how this can be of use right now (non-opers get spammed with crap just from doing regular things like joining channels) · Some documentation corrections, thanks jdhore. · Convert a number of modules to using privs. · Tie settings in mode and whowas to privs. · Tie a number of /who settings to servers/auspex and users/auspex respectively. · Tie display of realhost in USERHOST to users/auspex priv. · Tie /stats that aren't explicitly marked for users into servers/auspex. · Tie module version display to servers/auspex priv. · Add priv channels/high-join-limit. · Use servers/auspex and users/auspex privs where needed. · Document users/auspex priv, also clarify documentation a tiny bit to make them sound less mysterious. · Document servers/auspex priv. · Implement channels/auspex priv for /names and /list. · Document channels/auspex permission: allows opers with this priv to see more information about channels than normal users. · Document priv users/mass-message. · Make use of privs for PRIVMSG also. · Working privs implementation, and example usage in NOTICE for mass messaging. · Migrate oper commands to an std::set, add a set for privs also. Change the API a bit. · Add skeleton of HasPrivPermission. · Patch from Namegduf to use established numerics for HELPOP instead of notices. · Don't neglect calling User::CheckClass after SetClass, so that users don't end up lingering with a NULL class if they shouldn't. · Remove space indenting. (Brain, *smack*) · Remove the duplicate checking/disabled setting of < connect > craq, there is a (better) way to do this, which is to hunt for a new connect class on all users once /rehash happens. · Add notices on successful add or remove to callerid list. · Patch from dz for bug #620, thanks. · possible fix for bug #623, reported by MacGyver. Untested please test · Fixes and improvements from jdhore, thanks · Temporary usable quick conf by jdhore, thanks · I changed my mind, i uncommented · Numerous fixes for m_dccallow - only the first banfile tag mattered, improper behavior with no banfile tags, incorrect check for adding yourself to the dccallow list, and several cosmetic issues. · m_ssl_openssl is sending log messages and calling itself m_ssl_gnutls.. · Add , allows networks to hide channels of a +I user even from opers, for added privacy. · Modify $copy macros in comments, fixes bug #617 · hidechans is not oper only. · Remove outdated TODO · Don't send an override notice if no modes were actually applied, thanks Ankit. · Patches for updated config from jdhore, thanks! · Make wget syntax correct for executable includes example · Latest config file tweaks from jdhore, thanks! :) · Fix messageflood not working (bug #615). Big thanks to dz. · Update comment that says we dont send simplemodes in FJOIN, we do now. · Fix the description of the m_operinvex module in the example config. · Apply patch from jmb, for bug #593. Snotices on override are now sent regardless of noisy setting. Done in preparation for b2 sometime soon. · Fix memory leak in helpop config loading, thanks Macgyver. · Fix crash caused by me being retarded. · Fix: call OnRawSocketAccept for server connections. This isn't yet done in an ideal fashion, but it should work for now. Fixes bug #616, reported by dz. Thanks. · Remove this, we're not going to keep the .old, makes it twice as much work to document stuff · Add jdhore's nicer config files with better readable comments, thanks tons! · Test commit · Some more safety checks to catch out invalid client introductions (e.g. from atheme when its too old (for some reason its no longer checking the protocol ID for this)) · Header tidyups. Apart from module to module API stuff and external deps, modules dont really need to include much but inspircd.h (and xline.h if they create new xline factories) · We are including tons more than we need to here, its a mess · Fix for bug #613 reported by Casey, m_regex_glob's parameters were back to front! · Comments here too · Mention ulines too · Comment on potentially confusing code · The module hook is kinda required. · Fix for bug #601 · Some suggestions from jilles about handling unknown prefix errors, and some ideas of my own about handling unknown modes in client introduction to prevent leaving a desynched user on the source server · Fix for bug #604 reported by Phoenix, thanks · Make topic optional for permanent channels tags. · Fix inverted logic in restrictchans that caused it to not play nice with permchannels. · Replace the IP (in addition to hostname) for CGIIRC clients; fixes glines and zlines on IPs affecting cgiirc users. Thanks to Saz|Laptop · I think this fixes the mode +k weirdness. Keys were never being set correctly in the channel data. gcc doesnt warn on cast from char* to bool. · Suggested by nenolod, lets add this for thread signal safety · Fix causing +o (and +q!) not being correctly given on channel create · Initialise SSL session pointer to NULL to prevent a potentially unsafe comparison, thanks Macgyver.


InspIRCd Related Software