mirror of
https://github.com/inspircd/inspircd.git
synced 2025-03-12 12:09:03 -04:00
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3212 e03df62e-2008-0410-955e-edbf42e46eb7
935 lines
51 KiB
Plaintext
935 lines
51 KiB
Plaintext
1.0 Final
|
|
|
|
* Optimized WriteServ - why use %s!%s@%s when we have the more optimal userrec::GetFullHost() ?
|
|
* Added new event into m_spanningtree, event id send_metadata, which allows arbitary posting of metadata outside of the netburst, see line 529 of m_ssl_gnutls for an example of how to use it.
|
|
* Added check that forbids configuration as root >:-)
|
|
* Major updates to CBANs...like they're reasonably functional
|
|
* Added support for TYPE_OTHER metadata, where void* target will be NULL, e.g. its not bound to a user or a nick
|
|
* Fix to send 403 on invalid channel name
|
|
* Moved Write() call so that it can send the NICK message properly and force the client to change
|
|
* Allow ulines to still notice the channel regardless of +T
|
|
* Created OnPostOper that can be gauranteed to be called *after* opering (by ALL modules) is done
|
|
* "Oper of unknown type" -> "313 %s %s :is an IRC operator"
|
|
* Auto-assume "+" on the start of opermode block if not included
|
|
* Removed example commands that never actually existed
|
|
* OpenSSL detection and cert generation in ./configure
|
|
* Changed length of password field to 64, giving us a maximum password length of 63 plus null terminator
|
|
* Fixed uninitialized ExtMode::list
|
|
* Added some extra debug
|
|
* Make m_services use InsertMode (are we done yet?)
|
|
* Changed On005Numeric to use InsertMode (we left one out?)
|
|
* Deleted the semicolon that had half the dev team wondering...
|
|
* Incorporated Craig's friendlier SQL class (documentation to come later)
|
|
* m_sqlauth: Fix small memory leaks in some cases (bad password, bad query, lost mysql server connection etc..)
|
|
* Correctly initialize userrec::password (should fix a few m_sql issues)
|
|
* Add m_conn_waitpong, require clients to reply with a correct PONG to a server PING before they can connect
|
|
* Remove unused includes and rename classes from ModuleSSL to ModuleSSLGnuTLS so we can be consistent across multiple SSL modules
|
|
* Added warnings to opers when session limits are exceeded
|
|
* Improved IP handling. Now uses in_addr to store client ip, not char[16]!, Added global and local session limits
|
|
* Problems removing +t due to wrong bit-value being used in comparison
|
|
* Altered so that if running in -debug mode, will not erase its .so files from /tmp to allow a clean backtrace
|
|
* Removed unneccessary strlcpy
|
|
* Removed a load of unneeded includes (poll.h etc)
|
|
* Added <ident:timeout> example so that people remember to set this when using m_ident.so
|
|
* Default ident timeout to 1 sec if not defined (a bit low, but better than 0!)
|
|
* Updated m_ident to use inspsocket, should be more reliable
|
|
* Added missing modules (newer ones)
|
|
* Removed excessive debug for something thats now fixed
|
|
* Merged Andy Church's isnick() and isident() patches - faster, more efficient, and doesnt accidentally allow "-" as the first character of a nickname, Also adapted to iterate over a char* pointer rather than using unsigned int for the for() loops
|
|
* Added m_opersha256 module created by Special
|
|
* Add module for anti-autorejoin channel mode +J
|
|
* Changes to INVEX and EXCEPTS 005 tokens
|
|
* Changed +l to drop the mode if the limit is same as current., Optimized check on numeric chars
|
|
* Remove last relic of last goto in inspircd (an unused label)
|
|
* Fixed to not have ohv in CHANMODES type A,, Added proper MAXMODES output in 005 instead of hard coded '13'
|
|
* One goto is now no gotos.
|
|
* Change m_redirect, m_joinflood and m_messageflood to put their modes in the correct section and to use InsertMode()
|
|
* Add InsertMode function to helperfuncs.(cpp|h) for easily adding modes to the CHANMODES section of the 005 numeric
|
|
* Added patch from Andy Church re spaces in SETNAME
|
|
* Fixed line endings when skipping ssl cert generation
|
|
* Documented some functions that were missing comments
|
|
* Properly check that existing key resides in conf/ and not current dir
|
|
* Added PRIORITY_BEFORE and PRIORITY_AFTER (see src/modules/m_hostchange.cpp for how it works, function Prioritize())
|
|
* Added -modupdate to regenerate modules makefile, Added SSL option, as well as a 'Build Certificate' section (If avaliable)
|
|
* Adding the +e and +I modules m_banexception and m_inviteexception, also adding their shared utility header
|
|
* Added trick to allow local server to unset -r only in one specific condition (the nickchange)
|
|
* Added joinflood +j
|
|
* Made bans check both real and fake host
|
|
* Patched to allow FTOPIC from users (so that chanserv can update the settime and the topic still come from chanserv)
|
|
* Added <link:hidden> to docs
|
|
* Optional IP-Hiding for servers
|
|
* Use libgnutls-config --libs to configure linker options
|
|
* Make relative paths in the config file tags be relative to the insp config directory
|
|
* Change 974 numeric to 490 to avoid collision with Insp's failed to load module error
|
|
* Make m_sslmodes messages appear in the channel window
|
|
* Updated with new docs for maxtargets
|
|
* Updated 005 to show changeable MAXTARGETS
|
|
* Allowed for configuration of maxtargets in <options:maxtargets>
|
|
* Wrong nicklen is shown in the 005 numeric, fixed (noticed by ThaPrince)
|
|
* Initial commit of m_sslmodes, supplying chanmode +z
|
|
* Allow for <bind> tags with no or empty type, as well as 'clients' ones
|
|
* Set vendor and static module flags...even though the booms from trying to unload it would be fun sad.gif
|
|
* Make errors loading certificates DEFAULT level
|
|
* Inital commit of the first SSL module \o/ \o/ \o/ Also Ommeh's first official svn commit \o/
|
|
* Added MakeWildHost to userrec (*!*@dhost), Added ban stuff to messageflood
|
|
* Fixes to server kick (i hope)
|
|
* And yae, the compiler sayeth to brain, fix thine warning. and thou warning art fixeth.
|
|
* Made '*' ban-specifier work
|
|
* Added OnChannelDelete() method (called on KICK, PART or QUIT where a channel is deleted for cleanup of metadata), Added m_messageflood.so
|
|
* Tweaks for openssl compatibility
|
|
* Stopped lines longer than 512b from being killed, instead, warning sent and dropped.
|
|
* Fix to m_redirect to prevent circular link to self
|
|
* Added <allowchannel:name> to allow specific channels
|
|
* Test-fix for crazy's bug (/who 0 * as oper while on no channels)
|
|
* Tony hart stars in a new show, to replace hart attack. YES, ITS CRAQ ATTACK! Now starring the cmd_invite 401 numeric fuckup! grin.gif
|
|
* Umode +R was broken (only worked for channels) -- fixed
|
|
* Removed all strncpy() calls and replaced with strlcpy()
|
|
* strncpy sucks ass! -- Old code was using strncpy which doesnt null terminate a string if the string fills a buffer (!!!) - our strlcpy implementation fixes this.
|
|
* Added unlink() to tidy up /tmp after each dlopen()
|
|
* Added support for part messages in the module API (and therefore between servers too)
|
|
* Fixed bug with {} -> [] etc in NICK where nick == newnick apart from irc-case:, [15:41] --- Brain is now known as [Brain], [15:41] --- {Brain} is now known as {Brain}, Now correct:, [15:41] --- Brain is now known as [Brain], [15:41] --- [Brain] is now known as {Brain}, Was just a strlcpy BEFORE the NICK output instead of AFTER.
|
|
* Fixed so that ONLY ports of type "" or type "clients" are bound by the core, *everything else* is passed over now, not just "servers" type.
|
|
* Changed lots of icky #define's to enums
|
|
* Made <disabled> non-manditory, added check for when singular tags arent defined at all
|
|
* Fixed SIGHUP rehash to actually send rehash event to modules
|
|
* Added checks to forbid declaring certain config tags twice (ones which should only exist once like <server> and <admin>)
|
|
* Added m_vhost, authenticated vhosts from the conf similar to unrealircd's way, requested by PinkFreud
|
|
* Changed some .cpp to .so in the this->source field
|
|
* Removed deprecated default= for bind tags
|
|
* Removed deprecated LocalOp type
|
|
* Added support for <options customversion> to customize the second part of VERSION
|
|
* Bug found by PinkFreud - If an oper deopers themselves by removing the +o mode, their userrec::oper field isnt cleared. Clear it forcibly before DeleteOper.
|
|
* Updated copyrights in headers etc using perl inplace edit
|
|
* Made inspircd close and reopen its log on rehash
|
|
* Removed some redundant (and commented out) functions
|
|
* Made InspSocket::Read return an empty but non-NULL string when it receives EAGAIN (this method didnt know how to cope with EAGAIN before, may be causing random splits?)
|
|
* Extra m_sql field checking
|
|
* Fixed 'stops responding after server pingout, while using select' bug as found by merwin
|
|
* Added RemoveSocket as a test fix for merwins bug
|
|
* Replaced some 'n' with '*n' that was breaking userrec::MakeHost
|
|
* Added extra safety check for a condition that should NOT happen (in theory, but still)
|
|
* xline tweaks
|
|
* Replaced sprintf's with some char* voodoo
|
|
* Changed channel user lists from vector to map
|
|
* Changed makefile to use 'install'
|
|
|
|
|
|
1.0 Final - RC2 (KingArthur)
|
|
|
|
* Added 'a' flag to STATS c which indicates autoconnect state
|
|
* Removed tab characters from example conf
|
|
* Added oper-only-stats option
|
|
* Added 005 stuff after VERSION
|
|
* m_park.cpp fixes (and anything else using UserToPseudo and PesudoToUser)
|
|
* Used mkstemp trick similar to anope and unreal which copies the .so's to temp names under /tmp before loading them, using the current process's PID. This allows for module developers to *safely* rebuild a module (NOT the core) without a segfault while the ircd is up.
|
|
* Aligned % fields in map
|
|
* Changed printf specifiers in map to right-align digits
|
|
* Added User Counts to /map
|
|
* Nicer mode character loop
|
|
* Revise some serious craq++ in AddBan
|
|
* Fixed to not crash on /PARK (still more to test)
|
|
* Added CASEMAPPING and CHARSET to ISUPPORT (005)
|
|
* GCC 4.1 is more strict about extra qualification on members
|
|
* Updated example configuration file
|
|
* Fixes to typos and change to return by reference on GetClass
|
|
* Changes to how classes are looked up (connects slightly faster) and fix for case sensitive passwords
|
|
* Removed cvsignores, set svn:ignore property using -F .cvsignore
|
|
* Added specific errors relating to invalid link tags (requested by Strike)
|
|
* Tidyup of K&R style indenting, comments in silly places, and pointless curly braces around non-blocks
|
|
* Changed to QueryType rather than short int for query types
|
|
* Removed crappy linked list stuff and replaced with faster std::map
|
|
* Improving niceness of DNS code, i WILL make this readable!, Changed a ton of ugly firedns #define's to enums
|
|
* Minor cosmetic fault pointed out by Trystan
|
|
* Blockcolor now blocks reverse and other mirc sillies
|
|
* Ommitting \r and \n from debug display of outbound lines
|
|
* Now uses two AES contexts, an 'in' context and an 'out' context
|
|
* CBC encryption type in AES rather than ECB
|
|
* Changed background stuff to occur more often
|
|
* Made socket.cpp flush its write buffer more often (fixes odd lag on server to server connections)
|
|
* Fixed broken checks to allow overriding
|
|
* Optimized out some more redundant va_args voodoo
|
|
* Double copies due to bad chop()
|
|
* More removal of formatting where its not neccessary x("%s",str) == bad!
|
|
* Attempt to cut out unneccessary printf() va_args voodoo (ugleh)
|
|
* Cached ISUPPORT
|
|
* Added output of error if file descriptor given to AddFd is > MAX_DESCRIPTORS
|
|
* Changed to MAX_DESCRIPTORS
|
|
* Changed 65535 to MAX_DESCRIPTORS calculated at configure-time
|
|
* *FIX* 'No more connections allowed' was comparing against the network-wide limit rather than the local limit (ICK!)
|
|
* Added extra checking to socketengine to refuse connections after we reach the max
|
|
* Added counters for MAX_DESCRIPTORS etc which allows the socket engine to refuse new fd's once you hit the OS limit
|
|
* Initial revision of /devoice.
|
|
* Removed an unused OnUserConnect() method
|
|
* Changed some little bits and bobs here
|
|
* Fixed an extremely n00bish mistake involving referencing a global copy of ServerEngine when we now use one local to class InspIRCd, (everyone point and laugh at Brain)
|
|
* Optimizing to not use so much cpu with high user loads
|
|
* Made 'fake direction' less loud, removed 'invalid source'
|
|
* Added SetSignals()
|
|
* Signal handlers were not being set when -nofork was enabled
|
|
* Changed some other stuff that used the old vector/deque style commandlist
|
|
* Changed from std::map to hash_map
|
|
* Command search function now uses std::map, should be faster (i hope)
|
|
* Removed useless isnick() checks in Give* and Take*, in the name of tidiness
|
|
* Tidyups to mainloop, why were we using isnick() to check if a user was registered?
|
|
* New system for client exits using CullList seems stable, needs testing
|
|
* Changes to the way clients are exited during mainloop - MAY BE UNSTABLE USE WITH CAUTION
|
|
* Check on upper bounds of base64 decode
|
|
* Added checking for bad base64 decodes
|
|
* Updated chanfilter to use irc::string
|
|
* Modified to omit unimplemented module methods
|
|
* Fixed and implemented /modules debug <glob>
|
|
* Added /modules debug
|
|
* Added global_implementation array, bypasses calls which *NO* modules are currently implementing
|
|
* Fixed missing I_On005Numeric
|
|
* New 'Implements' system
|
|
* Added support for implementation hooks
|
|
* Adding hook type checking to event calls to speed them up
|
|
* Allow halfop to dehalfop themselves`
|
|
|
|
|
|
1.0 Final - RC1
|
|
|
|
* Improved efficiency of chanrec constructor (removed strcpys)
|
|
* Changed two fields in ConnectClass to strings, moved constructor stuff to init-list
|
|
* Added 'build complete' message
|
|
* Somehow, the examples had gotten into the conf/ dir, they belong in docs/
|
|
* Improved m_alias to only capture complete commands and rewrite them (bug #92 as reported by strike)
|
|
* Added more verbose error output during link
|
|
* Added CAPAB checking to prevent some obvious n00biness that may occur
|
|
* Initial revision of CBAN. It doesn't do anything useful just yet.
|
|
* LD_LIBRARY_PATH setting is no longer required by core or m_sql.so
|
|
* Changed $CompileFlags to seperate $CompileFlags and $LinkerFlags
|
|
* Added -Wl,--rpath -Wl,LIBDIR to linking parameters to allow users to directly start the binary without the launcher, if they wish
|
|
* Improved makefile dependency lists
|
|
* Removed some redundant code that was commented out
|
|
* Added extra sanity check in squit to make sure REMOTE Servers dont try and squit a server from itself!
|
|
* Added Socket = NULL for local server class to prevent it being 'selectable' by squit
|
|
* Made linking more nazi, will drop connections that send bad commands
|
|
* Fixed to not allow :Abc NICK Abc, where the case of the old and new nick are *identical*
|
|
* Added extra diagnostic messages during connect, if connect fails
|
|
* Added stricter checking for encryption on connect, if enabled
|
|
* Fixed case-change nicks not being propogated
|
|
* Allow case changes in nick w00t -> w00T
|
|
* Added extra key length checks, documented encryption in example conf
|
|
* Added AES encryption to spanningtree links
|
|
* Added IOHookModule stuff to allow for different modules to hook different ports
|
|
* Fixed spanningtree to not allow malformed conf tags (missing/empty values), Added m_spanningtree, m_swhois and some clarifications to example conf
|
|
* Split all commands into seperate files and redid command system to take classes, not function pointers (function pointers suck ass)
|
|
* Moved serverstats* stats to InspIRCd class
|
|
* Moved SocketEngine* SE into InspIRCd class
|
|
* Moved mode stuff into modeparser
|
|
* Moved command_parse functions into class CommandParser
|
|
* Optimized away a memset made it potentially 10x faster
|
|
* Fixed BUG, If an opers SendQ exceeded, it would bring down the server!
|
|
* Added 'local users' vector
|
|
* Full removal of inspircd_util.h
|
|
* Improved pointer voodoo in chanmodes(), many less strlcats
|
|
* Made apply_lines apply perm lines again
|
|
* Added documentation for CullItem and CullList
|
|
* Updated so that netsplits use the cull_list.
|
|
* Added CullList class
|
|
* Added Server::GetVersion()
|
|
* Added new docs for class InspIRCd and globals.h etc
|
|
* Removed depreciated docs
|
|
* moved declarations of typedefs for user_hash and chan_hash etc to typedefs.h
|
|
* Fixed a couple of missing \n's at request of Special
|
|
* optimized a ton of strcmps down to an integer comparison!
|
|
* Optimized accept() stuff to eliminate loop, idea while talking to w00t
|
|
* Got rid of the evil loopy horrid mess in dnsqueue.cpp (singlethreaded dns lookups)
|
|
* Made dnsqueue clean up its sockets from the socketengine properly
|
|
* Prevented zlines from being allowed with a username/ident in them
|
|
* Modified chlist() and whois to allow output of multi line channel membership list (!)
|
|
* Made MAXCHANS growable for opers/ulines
|
|
* Removed some logging that can cause excessively huge logs when select() is being used
|
|
* Removed some remnants from mesh linking
|
|
* Moved some stuff out to userprocess.cpp
|
|
* Efficiency suggestion by w00t, faster processing of module sockets at the expense of a bit of ram
|
|
* New version doesnt yield() any more
|
|
* Made socket loop flush a users buffer if they still remain after processing each line
|
|
* Changed how background processing works, now once per second repeating until nothing left to do
|
|
* Tied in DNS to SocketEngine
|
|
|
|
|
|
1.0 Beta 6
|
|
|
|
* Added SPANNING TREE LINKING support, allowing for STABLE FAST and EFFICIENT linking of InspIRCd servers (m_spanningtree.so)
|
|
* Added m_swhois module, allows setting of arbitary descriptions on users
|
|
* Added a 'Base' installation path to allow installing of the launcher (handy)
|
|
* Added support for the new <include:file> system.
|
|
* Fixed Bug causing the base directory to always overwrite the other dirs
|
|
* Added Base Directory Path to the Path list at the end of ./configure
|
|
* Added Library Path to the path list at the end of ./configure
|
|
* Improved layout
|
|
* Added -lstdc++ for GCC 4 support
|
|
* Removed connection.cpp and servers.cpp
|
|
* Removed static meshed linking from core
|
|
* Fixed code so that it will still work with kernel 2.8, 3.0, 3.2... whoops.
|
|
* Added a chomp() just to be sure on kernel 2.6 check
|
|
* Fix for bug #72 reported by Hal9000
|
|
* Configuration errors now go to the error log
|
|
* Updated to allow users to specify their compiler by hand
|
|
* Added warning about gcc2
|
|
* A lot more of the core consts are now configurable at compile time
|
|
* Fixed removal of mesh linking from core
|
|
* Added cvsignores
|
|
* Added Metadata API (for transferring extensibles over a network transparent to the protocol)
|
|
* GCC4.0 warning fixes
|
|
* Added BoolSet utility class
|
|
* Removed cross-server mesh stuff
|
|
* Fixed missing constructor on class connection
|
|
* Tons of DNS debugging and stability fixes
|
|
* Added experimental multi-threaded DNS using pthreads!
|
|
* Added notice-to-servermask
|
|
* Added ability to output 'is an oper but i dont know what type' in WHOIS
|
|
* Added clever code to propogate module's special commands (SAJOIN, KNOCK etc) transparently!
|
|
* Added opaque protocol functions
|
|
* Highly optimized userrec saving 1.5k per user
|
|
* Added tons of extra documentation to Module class
|
|
* Added OnCleanup function
|
|
* Added OnChangeHost
|
|
* Added OnChangeName
|
|
* Added OnWallops
|
|
* Removed old OnUserSync and OnChannelSync
|
|
* Added Server::RehashServer
|
|
* Added onrehash parameter
|
|
* Added OnGetServerDescription (mainly for link modules)
|
|
* Added OnPostLocalTopic
|
|
* Added OnUserInvite
|
|
* Added remote kill
|
|
* Added opertype to OnOper and added OnMode function
|
|
* Added reason to OnUserQuit
|
|
* Added OnUserMessage and OnUserNotice (why have these been missing so long?)
|
|
* Removed mesh module functions
|
|
* Added OnLoadModule and OnUnloadModule (OnLoadModule was not triggering)
|
|
* Tidied up socket engine code, moved into a specialized header full of #defines
|
|
* Fixed to compensate for ~ in ident length
|
|
* Optimized xline system (much faster, more efficient, less cpu usage)
|
|
* Added insane tag (prevents wide gline etc)
|
|
* Now shows remote quits differently
|
|
* Fixed RFC-non-complaince of TOPIC and NAMES with +s channel (As reported by Ghost)
|
|
* Fixed LUSERS and MAP to display 'dummy' data when no linking module is loaded
|
|
* Changed behaviour of module API to pass Server* to the constructor, rather than have to create one (makes more sense)
|
|
* DNS safety and logging
|
|
* Fixed 'fake direction' messages being put out by user->registered = 7 being set too early
|
|
* Removed the MESHED 005 numeric token
|
|
* Changed epoll delay
|
|
* Allowed ulined servers to by pass all oper permissions checking
|
|
* Added stricter checking for listening sockets
|
|
* Fixed compile time glitches in new code, removed obselete variables
|
|
* Added ability for ulined servers to set any arbitary channel mode (even from outside the channel)
|
|
* Added ability to put command named * into a class to make it cover all
|
|
* Fixed Case sensitivity Bug (BugTrack #88) in m_chanfilter.cpp
|
|
* Changed m_chghost.cpp to silently set hosts if uline sets it
|
|
|
|
|
|
1.0 Beta 5
|
|
|
|
* Added windows comments to module section. Added m_denychans. -katsklaw
|
|
* Added 557 numeric (from MS Exchange chat server) to indicate too many results from /WHO
|
|
* RPL_WHOLIMEXCEEDED changed to 523 to match bahamut
|
|
* Added .cvsignore files
|
|
* Added a ton of missing prompts wink.gif
|
|
* Added cvsignore
|
|
* Changed representation of MAXNICK in isnick() to allow for a non-incremented size
|
|
* Fix for bug #70 (only first item working properly)
|
|
* Fixed max channel length
|
|
* Added ability to update the helpop file on rehash (Bug #69)
|
|
* Added denychans module, allows blocking of channels
|
|
* Added parameters to comments
|
|
* Changed so that when the first in the channel gets founder, the +q mode change is sent to keep the client synched (requested by katsklaw)
|
|
* Fixed nicklength perpetually increasing on each run (reported by katsklaw)
|
|
* Fixed to never append double sums
|
|
* Fixed to preserve epoll/select/kqueue choices
|
|
* Operhosts are now optional (in the type tag)
|
|
* Added check to not flush disconnected buffers
|
|
* Added code to not try and increment buffer if wrote 0 chars
|
|
* Added extra code to notify mainloop when the iterator has been mangled (e.g. by netsplit quits)
|
|
* Added more immediate disconnect when a server isnt routable any more
|
|
* Added ping checks for server links (experimental)
|
|
* Added stuff for /map improvements
|
|
* Autoconnection of servers added
|
|
* Changed to not show remote quits (we don't show remote connects after all)
|
|
* Fixed compile glitch on 3.4
|
|
* Fixed inbound server errors
|
|
* Fixed to erase .so and binaries before trying to overwrite them so mmap doesnt mess up and segfault any running copy (thanks jilles)
|
|
* Fixed to flush buffers when connection closed
|
|
* Fixed to not autoconnect servers we already have!
|
|
* Nonblocking connect() for outbound server links (why was this blocking anyway)
|
|
* Changed /map to show authenticating servers with a * similar to hybrid
|
|
* Now clears the autoconns map on rehash
|
|
* Sum not being propogated properly fix
|
|
* Example conf update from katsklaw
|
|
* Buffer size limits (hard coded to 1mb for now, will allow to raise in config later)
|
|
* Fixed bug where when a server split all other servers would stop responding
|
|
* Fixed the server names reported in /stats l
|
|
* Output buffering on server connections
|
|
* Removed m_globops setting +g automatically on oper, m_opermodes.so can do this now
|
|
* Tidied up some socket stuff into userrec
|
|
* Changed revision id's to std::string
|
|
* Added m_opermodes.cpp, allows addition and removal of modes on oper up
|
|
* Added COMMANDS command (yes, really)
|
|
* Added detail to /COMMANDS
|
|
* Changed cygwin warning
|
|
* Changed to fix minor typo in dynamic-build makefile
|
|
* Edited to properly detect strlcpy on netbsd (different declaration in string.h didn't match regexp)
|
|
* Fixed /COMMANDS
|
|
* Fixed case-sensitivity typo in module name for Addcommand
|
|
* Fixed crappy const stuff
|
|
* Modified to detect kqueue on netbsd
|
|
* Removed stupid consts
|
|
* Updated helpop docs
|
|
* Added eg++ stuff
|
|
* CC fixes
|
|
* Changed to use gmake on ALL bsd variants
|
|
* Kill fixes
|
|
* Warning message for openbsd users that try and use gcc
|
|
* Added -lresolv for solaris
|
|
* Added -lrt for solaris
|
|
* Bzero removed for compatibility with solaris 10
|
|
* Fix to minor typo in solaris stuff
|
|
* Fixes for solaris
|
|
* Fixes to bad filehandle
|
|
* Removed unncessary sched_yield calls
|
|
* Updated for solaris -lsocket / -lnsl
|
|
* Added configurable SOMAXCONN size
|
|
* Changed epoll_wait timeout
|
|
* Default epoll/kqueue to yes
|
|
* Added: Epoll support
|
|
* Kqueue and epoll default to enabled now
|
|
* Made prompts clearer
|
|
* Mass-connect speedups, also now uses less processor time
|
|
* Moved a load of servers-only stuff into serverrec out of the way of userrec
|
|
* Shrunk some datatypes
|
|
* Removed __single_client_alloc again because gcc devs were smoking crack and removed it
|
|
* Added hashcomp.cpp, seperates out the stl hash_map stuff
|
|
* Added a few simple output lines (similar to gnu autoconf so people know what's happening)
|
|
* Added better detection of strlcpy that doesn't involve compiling a test program (faster)
|
|
* Added detection for kqueue, so if your BSD system doesn't have it, the configure doesnt ask you smile.gif
|
|
* Added docs for hashcomp
|
|
* Added idea from ircu: /invite with too few params shows the channels youve been invited to but have not yet joined
|
|
* Added irc::string
|
|
* Specified namespace std in *all* files
|
|
* Fixed typo in die tag
|
|
* GCC 3.4/4.0 fixes
|
|
* Made 'make clean' make cleaner :-P
|
|
* Made modules use irc::string where they were using strcasecmp()
|
|
* Moved StrHashComp and InAddr_HashComp into the irc:: namespace
|
|
* Moved a ton of functions into helperfuncs.h to speed up recompiles
|
|
* Updated strhashcomp to use irc::string internally rather than a combination of strlower and strcasecmp
|
|
* Updated to keep lowermap const within hashcomp.cpp
|
|
* Added 'uniqueness sums': http://www.inspircd.org/wiki/InspIRCd_Serv...Uniqueness_Sums
|
|
* Added RFCs
|
|
* Updated example conf to list all non-extra modules with a description of what they do.
|
|
* Modules now commented out by default, admin must uncomment them to use them. Suggested by lag``
|
|
* Added Server::GetServerDescription() at request of Craig
|
|
* Re-added the dot graphs again
|
|
* Added docs for new smaller memory footprint classes
|
|
* Changed the type of struct whowas records are stored in (no need to waste a big heavy userrec)
|
|
* Customizable by-byte-size recvq stuff
|
|
* Documented new recvq and sendq stuff
|
|
* Fixed wrong number being shown when sendq exceeded
|
|
* Honking great memory leak fixed that's been there since the early alphas :/
|
|
* Optimized some static structs
|
|
* Structure optimizations, changed a lot of bools into binary bitmasks
|
|
* Updated default sendq size to 256k
|
|
* Added sendq stuff, see example config
|
|
* Fixed weird bug where on mass join/part flood, the channel would be purged before it was actually empty due to its counters being screwed up
|
|
* Added Cache support for the KQueue Question
|
|
* Fixed Optimisations not being set.
|
|
* Added ability to accept() more pending sockets at once
|
|
* Added socket engine to version response
|
|
* Fixed crash when socket reads 0 whilst in kqueue mode
|
|
* Fixed kqueue setting not being changed
|
|
* Made ping check loop less regular in kqueue version
|
|
* Changed pool size from 64 to 1024
|
|
* Fixed some of Brains bastardization of configure biggrin.gif
|
|
* Fixed Craig's buggy configure tongue.gif
|
|
* Fixes to way allocations are handled
|
|
* Hit dns with spork. Repeat until crispy.
|
|
* Modified to rm the .o files from the modules dir
|
|
* Modified to use -pipe
|
|
* New way of building modules, this is supposedly more portable
|
|
* Now secures binaries with 0700 perms as theyre installed
|
|
* Optimised strlower (much faster, uses a lookup table)
|
|
* Optimized userlist() (a lot faster with many users online)
|
|
* Fixed bug where another users buffer could end up in the buffer of an exiting client before they quit
|
|
* /WHOIS as oper now shows real ip as well as real host
|
|
* Added USERIP numeric 005 output
|
|
* Added m_userip.cpp requested by Selphie
|
|
* Changed the final bunch of udp_* vars to server_*/tcp_*
|
|
* Fixed ircservices sending PING
|
|
* Changed to fully dynamic core (should be faster compile times)
|
|
* Fix naming glitches
|
|
* Fixed remote kills to display the correct source (spotted while talking to aquanight)
|
|
* Fixed to use numeric 340-
|
|
* Renamed core files to all be libIRCD*
|
|
|
|
|
|
1.0 Beta 4
|
|
|
|
* Fixed configure bug resulting in osflags being called BEFORE getcache (Making it redundant.)
|
|
* Fixed output of src/modules/Makefile saying it was made by Craig.net tongue.gif
|
|
* Updated for test gcc4 compatibility
|
|
* Added support back for ./inspircd
|
|
* Added a line to automatically chmod ./inspircd to 0744 ('Last Second Save!')
|
|
* configure now supports any future .file.inc includes (Yes, i can see into the future)
|
|
* Updated makefile
|
|
* New Perl ./configure
|
|
* Added -Woverloaded-virtual to catch annoying module typos
|
|
* Fixed to always look for the ircd.log within the bin/ dir
|
|
* Fixed to not spool the error log after ./inspircd debug
|
|
* Sanity checks for fd_ref in addclient
|
|
* Fixed 'server ignores me forever if i throttle the server with connections' bug
|
|
* Debugging now allowed from ./inspircd (./inspircd debug)
|
|
* Added LD_LIBRARY_PATH hacks/kludges to the .inspircd.inc file to make it find libmysql in funny situations
|
|
* Added final documentation for inspircd Beta 4
|
|
* Added important note relating to ip addresses in <link:ipaddr>
|
|
* Added schema for m_sqllog.so
|
|
* Added m_sqloper, allows storage of opers within a mysql database
|
|
* Commented new functions
|
|
* Major *MAJOR* optimizations by double-referencing channels to users (never need to scan the entire user hash again except in very rare circumstances)
|
|
* Added channel 'counter', increases speed of quits, parts, kicks
|
|
* commented some users and connections code
|
|
* added remote @* notice
|
|
* Added remote versioning
|
|
* Fixed dicky buffer (due to cleanup the wrong variable was being used)
|
|
* Services speedups for stupid buffered i/o uplinks
|
|
* Added server input buffers (for systems that decide buffering is fun)
|
|
* Major code tidyup (-W)
|
|
* Fixed some flood checking
|
|
* added noticeall
|
|
* Added a Server:: method to send server notices to channels
|
|
* Added explicit oper tracking in a vector of userrec* pointers, optimizes sending out oper notices
|
|
* Fixed: +s and +p channels wouldn't be synched correctly
|
|
* Fixed: +s and +p never show in whois even when you're a member of them
|
|
* Fixed: +s and +p never show in list even if you're a member of them
|
|
* Added Server::FindDescriptor
|
|
* Added and tested fd crossreference table - improves speed a lot, and fixes one of the /STATS chars which has been broken a while
|
|
* Added OnAddBan and OnDelBan module api calls, and fixed glitch which required them in m_timedbans module
|
|
* Added OnOperCompare function to override strcmp in password check for /oper
|
|
* Added module message passing architecture
|
|
* Added a few anti-flood features
|
|
* Updated buffering, faster and more sensible (old code sucks)
|
|
* Added password field
|
|
* Removed some debug output
|
|
* Added /stats T
|
|
* Empty but non-null string passed to is_uline now returns true
|
|
* Added numeric 318 to /WHOIS when nick is not found (end of whois should still be there as its a list response)
|
|
* Added numeric 412 "no text to send"
|
|
* Changed to handle : as a NOP token so that 'assuming' inspircd knows RFC commands wont cause tons of errors
|
|
* Fix to a mode parsing bug (eating wrong version of parameter?)
|
|
* fixed warning of redefinition of RUSAGE_SELF
|
|
* Fix annoying off-by-one error in connection::RecvPacket
|
|
* Added more fault tolerance to server links
|
|
* Added new /stats z
|
|
* Fixes to /who output
|
|
* Added mode 'compression', stops abuse with modes like: +s-s+s-s+s-s
|
|
* Test fixes for /version strings not being set in burst
|
|
* Fixed a reversed strcmp
|
|
* Added 901 numeric - end of modules list
|
|
* Added support for /SQUIT <mask> and checks against /SQUIT *
|
|
* Changed remote kill reason text
|
|
* Fixed strange leading ":" on remote Z/K/G lines
|
|
* Fixed so that quitprefixes are shown in client exit notices
|
|
* Added global oper monitoring through modules and global connect monitoring through modules
|
|
* Fixed weird issues when anope sends large amounts of text at once to the uplink
|
|
* Fixed dodgy poll()
|
|
* Added new and improved GetBuffer function based on research on crappy redhat 7.3
|
|
* Fixed park crash bug #63 reported by ViaraiX
|
|
* Reordered some on-connect network stuff to stop services being so confused
|
|
* Extra safety checks to avoid trying to write() remote users
|
|
* Optimized WriteCommon and WriteCommonExcept
|
|
* Fixed weird line wrapping bug with extremely long lines
|
|
* Made xline notices neater when notifying of unknown connections
|
|
* Fixed WriteCommon not writing to the source user when not on any channels
|
|
* Changed "is now running" message to AFTER port bind checks
|
|
* Added PID reporting and testing before daemonize
|
|
* Changed startup ascii to green. Elphaba would be so proud tongue.gif
|
|
* Fix to prevent empty umodes
|
|
* Fixed empty modes from nickserv
|
|
* Optimized modes (removed strlens etc)
|
|
* Fixed empty modes issue that emerged after dodgy code was corrected
|
|
* Fixed services not being informed of force joins
|
|
* Fix to prevent quits being sent onto the network for nonexistent users
|
|
* Added faster wildcard checking routines
|
|
* Fix for bug #62 (replaces only occur once per line in m_censor)
|
|
* m_chanfilter now works on gcc 2.95.x again.
|
|
* m_chanprotect fixed to remove privilages upon kick
|
|
* Fixed WriteChannelWithServ
|
|
* Added module which provides MD5 encryption for oper passwords plus /mkpasswd
|
|
* Added another check for 'NoServerUline' type thing in m_services.
|
|
* Added Check for 'NoServer' when +r ing a channel in m_services.
|
|
* Added m_timedbans (timed bans module for channel ops/halfops)
|
|
* Added m_sql, module to provide sql db access to other modules
|
|
* Added m_sqlauth - allows authorizing of connections via an arbitary mysql table with a username and password field
|
|
* Added m_sqllog - allows you to log your irc information to an sql database
|
|
* Added m_sqloper, allows storage of opers within a mysql database
|
|
|
|
1.0 Beta 3
|
|
|
|
Added rm -rf src/modules/*.so to make modclean
|
|
Added module message passing architecture
|
|
added Module::OnMeshToken
|
|
added Server::MeshSendAll
|
|
added Server::MeshSendCommon
|
|
added Server::MeshSendAllAlive
|
|
added Server::MeshSendUnicast
|
|
added Server::MeshSendAllExcept
|
|
added Server::MeshCheckChan
|
|
added Server::MeshCheckCommon
|
|
added Server::FindModule
|
|
added New docs for API
|
|
added Module::OnRawMode
|
|
added Module::OnCheckInvite
|
|
added Module::OnCheckKey
|
|
added Module::OnCheckLimit
|
|
added Module::OnCheckBan
|
|
added Module::OnStats
|
|
added Module::OnChangeLocalUserHost
|
|
added Module::OnChangeLocalUserGECOS
|
|
added Module::OnLocalTopicChange
|
|
Added Server::AddGLine
|
|
Added Server::AddKLine
|
|
Added Server::AddZLine
|
|
Added Server::AddQLine
|
|
Added Server::AddELine
|
|
Added Server::DelGLine
|
|
Added Server::DelKLine
|
|
Added Server::DelZLine
|
|
Added Server::DelQLine
|
|
Added Server::DelELine
|
|
Added Server::Duration
|
|
Fixed /LUSERS server count
|
|
Updated documentation of <connect> tags at request of Strike
|
|
Fixed somebody putting double closing tags, nullifying the effect of allowhalfop in the example conf
|
|
Removed deprecated class 'packet'
|
|
Fixed Dns free() errors
|
|
Added ability for modules to hold users in a 'holding pattern' while they do stuff on connect
|
|
Added OnUserDisconnect method to modules.* to fix fd leak in m_ident.cpp
|
|
Added the m_chanfilter module, implements chanmode +g which allows channel specific badwords (YAY)
|
|
Added Module::OnSendList
|
|
Added m_conn_lusers.so: Sends /LUSERS on connect
|
|
Added m_ident.so: nonblocking ident lookup module
|
|
Fixed /kill bug in m_operlevels (couldnt kill non-opers)
|
|
Changed m_override: Fine-grained control over what can be overridden by whom
|
|
Added m_park, user parking to keep ops during a ping timeout (suggested by Ib3N)
|
|
Fixed limit checking in core and m_redirect.so
|
|
Added m_setidle, allows opers to set their idle times
|
|
Added Module::OnBackgroundTimer method, ticks approximately every 5 seconds
|
|
Yet more optimizations!
|
|
Added 'server already exists' check for u-type links
|
|
Fixed bug when ordering a bot to leave using anope services
|
|
Fixed anope module sending L tokens with 2 instead of 3 params (made code more tolerant instead of changing module)
|
|
Fixed broken server/server handshake for U-type server links (services)
|
|
Fixed strhashcomp to forbid matching scandanvian nicks properly eg. [Brain] and {Brain}
|
|
Fixed lingering (SO_REUSEADDR was being set to 0?)
|
|
Added Module::OnCheckReady and Module::OnUserRegister
|
|
Updated /INFO
|
|
Fixed to allow server to server traffic again (DOH)
|
|
Added PID reporting and testing before daemonize
|
|
Changed "is now running" message to AFTER port bind checks
|
|
Fixed strange join behavior reported by w00t (mirc requesting MODE immediately after JOIN)
|
|
Fixed bug #47 reported (and suggested fix) by Om
|
|
Fixed bug where if channel limit was lower than the user count users could still join, but not if it was equal
|
|
Added Module::OnUserKick and Module::OnUserPreKick
|
|
Added Server::PseudoToUser and Server::UserToPseudo
|
|
Made setrlimit a commandline option
|
|
Removed some old uneeded code
|
|
Made cmode and chanmode more safe
|
|
Fixed a double free in dnsqueue.cpp
|
|
Fixed a resolver issue (weird segfault on gentoo?) in server linking
|
|
Double 367 numeric glitch fixed
|
|
Added Server::IsValidHostMask
|
|
Added getrlimit/setrlimit to set process limits to allow a core dump
|
|
Removed some logging from wildcard.cpp
|
|
|
|
1.0 Beta 2
|
|
|
|
* Added a lot of small fixes based on feedback of beta 1
|
|
* Fixed compile issues on freebsd due to an icky shellscript expression that failed to detect strlcat
|
|
* Added more advanced m_override.cpp module due to user request (thanks Rob)
|
|
|
|
1.0 Beta 1
|
|
|
|
* Enough optimizations to shake a very big stick at
|
|
* Added asyncronous DNS
|
|
* Changed /MODULES to allow simplified output for non-opers
|
|
* Added module flags to /MODULES for opers
|
|
* Added /UNLOADMODULE
|
|
* Added /LOADMODULE
|
|
* Added resource tracking for modules
|
|
* Added extra log output for oper success and failure
|
|
* Added hostname checking for opers (someone left it out *looks around nonchalantly*)
|
|
* Added module API OnUserPostNick method
|
|
* Added E:Lines and /ELINE (ban exceptions)
|
|
* Security fixes to /MODE and /TOPIC
|
|
* Fixed a cosmetic bug in /WHO
|
|
* Fixed random crashes when user connecting
|
|
* Fixed 'unlikely' crash if nick was changed before dns lookup completed
|
|
* Fixed to actually check the password of linking servers (someone left this out too!)
|
|
* Added error checking to make sure opertypes exist before opering a user!
|
|
* Added 005 handling for modules
|
|
* Added onKill event for modules
|
|
* Added OnModuleLoad event for modules (notified of all module loading)
|
|
* Added <disabled:commands> tag
|
|
* Added ability to disable any command for non-opers
|
|
* Added customizable ping frequency to <connect:allow>
|
|
* Added optional module path to the configuration file
|
|
* Added support for Rehashing to allow adding and removal of modules
|
|
* Added module VersionFlags support
|
|
* Fixed a resolver issue (weird segfault on gentoo?) in server linking
|
|
* Changed the loglevel of some startup failure messages to DEFAULT (were DEBUG)
|
|
* Optimized connects - motd is sent faster
|
|
* InspIRCd now logs value of <die> to the logfile on failure
|
|
* Added new <banlist> tags, allows dynamic banlist sizes on a per channel basis rather than hard coded or network wide
|
|
* Fix for bug #39, m_redirect returning invalid/random value for OnUserPreJoin method of the module class
|
|
* Added code to shutdown listening sockets on exit
|
|
* Added pid file support, and documentation for it
|
|
* Fixed string format vunerability, thanks again to the #ratbox people for helping find it
|
|
* Fixed 005 numeric to only output 13 tokens per line (thanks anfl)
|
|
* Replaced some 005 constants with their configured values
|
|
* Fixed "error in free()" and other bugs going to open sockets
|
|
* Config files read by the ircd are now chmod'ed 0600
|
|
* Fixed parsing error with comments that have tabs before them
|
|
* Added implementation of strlcpy and strlcat for systems that dont have it
|
|
* Fixes to crash when setting the key of a channel youre not a member of
|
|
* Fixed issue where failing modules would bail by calling exit (deprecated) -- modules should now just disable their functionality if they are missing data
|
|
* Added GetVersion() to m_showwhois.cpp
|
|
* m_chanprotect.so fixed to take away +q and +a when the user parts the channel (double DOH)
|
|
* Added 005 numeric handling to most of the modules
|
|
* Added m_hostchange module, our own homebrew implementation of the unreal pay module!
|
|
* Added m_nicklock module, a module which allows opers to lock a user to a nickname until they quit
|
|
* Added m_operlevels, prevents opers designated as above other opers from being killed
|
|
* Fixed Crash bug cause by multiple declarations of 'Srv' in m_randquote.so (Bug #35)
|
|
* Added m_remove by om, uses a force part to replace a kick to thwart auto rejoin
|
|
* Added module to restrict channel creation to opers only (requested by [ed])
|
|
* Added a module at request of [ed] which stops anyone messaging all but opers
|
|
* Added m_silence.so - implementation of /SILENCE command
|
|
* Added ./inspircd (start|stop|restart|rehash|status|cron|Cheese-Sandwich) (Happy luigiman?)
|
|
* Made a slightly nicer method for .Makefile.inc
|
|
* Updated ./configure to reflect the above changes.
|
|
* Removed reference to depricated ./makeconf and updated command to exec to build the daemon.
|
|
* Added dynamic src/modules/Makefile generation, during ./configure the script will search modules for /* $CompileFlags: */ and append any given flags to its g++ line.
|
|
* Startup script modified to kill -9 if a kill -TERM fails.
|
|
* Makefile will ignore if cp fails to copy the binaries.
|
|
* Added <disabled:commands> to the example config (commented out by default!)
|
|
* Documented /LOADMODULE and /UNLOADMODULE plus new /MODULES behaviour
|
|
* New docs to match extra module Version class stuff, etc
|
|
* Added new documentation for ELine class and OnUserPostNick method
|
|
* Added DNS class to documentation
|
|
|
|
1.0 alpha 12
|
|
|
|
* Updated ./configure to detect GCC 3.4.x
|
|
* Added m_showwhois.so - lets opers see when theyre WHOISed
|
|
* Added m_opermotd.so - Gives opers an opermotd on oper-up
|
|
* Added m_operjoin.so - Forces opers to join a given channel when they oper
|
|
* Security audit resulting in more secure and stable code
|
|
* Added lots of error checking to the configuration parser
|
|
* InspIRCd now works with BOPM, please see the tutorial on our forums
|
|
* UMODE issues with SVSMODE finally addressed, working fine again
|
|
* Services issues addressed and fixed
|
|
* Added generic error output to the ConfigReader class (ConfigReader::DumpErrors())
|
|
* Fixed sys/socket.h error on earlier versions of GCC (2.95.x)
|
|
* Redone documentation
|
|
* Fixed mode changes (they actually work now!)
|
|
* Module passes service names to its uplink now
|
|
* ChanServ actually sets channel modes rather than the server!
|
|
* NickServ actually sets umodes rather than the server!
|
|
* Double-mode-changes no longer occur
|
|
* User nickname registration tracking with +r works properly again
|
|
|
|
1.0 Alpha 11
|
|
|
|
* Added lots of bugfixes
|
|
* Optimised, works faster, and smoother
|
|
* Added support for non-mesh servers
|
|
* Added services support
|
|
* Implemented example ircservices module (working with ircservices 5)
|
|
* Added m_services module
|
|
* Added m_antibottler module
|
|
* Added m_alias module
|
|
* Added glines (local and global)
|
|
* Added klines
|
|
* Added qlines (local and global)
|
|
* Added zlines (local and global)
|
|
|
|
1.0 Alpha 10
|
|
|
|
* Added server linking support (tcp based mesh link)
|
|
* Lots of stability fixes
|
|
* Speed improvements
|
|
* Optimisations, no longer eats cpu so much
|
|
* GCC3 and GCC2 support
|
|
* Even bigger module API
|
|
* More documentation
|
|
* m_antibottler, labels bottler bots
|
|
* m_chghost, gives you a /chghost command
|
|
* m_cloaking, gives you hostname cloaking and mode +x
|
|
* m_filter, filters glob patterns on channels and private
|
|
* m_globops, provides /GLOBOPS and mode +g support
|
|
* m_helpop, gives /HELPOP and mode +h support
|
|
* m_sajoin, force-join a user to a channel
|
|
* m_sapart, force-part a user from a channel
|
|
* m_samode, force a mode change on a user or channel
|
|
* m_saquit, force a quit of a client without /kill
|
|
* m_sethost, allows opers to change their hostmasks
|
|
* m_setname, allows users to change their name
|
|
* HELPOP documentation accessible with the helpop module loaded
|
|
* Split the ircd into many smaller files for faster compiling
|
|
* Improved configure and makefile phase
|
|
* Added all oper commands (CONNECT, SQUIT etc)
|
|
* Added remaining server->server commands such as /MAP
|
|
* Connection pooling, uses less CPU for the same tasks as before
|
|
* High-powered server to server link protocol unlike any other ircd
|
|
|
|
1.0 alpha 9.5
|
|
|
|
* Added support for /connect (no sync yet!)
|
|
* Added extra module support and improved api
|
|
* Improved developer docs, see http://www.inspircd.org/docs/
|
|
* FINALLY fixed crash-on-disconnect bug
|
|
* Fixed many stability bugs
|
|
* Fixed length and buffer overrun issues that caused user records to become corrupted without crashes (!)
|
|
|
|
1.0 alpha 9
|
|
|
|
* Added /WHOWAS
|
|
* Made ircd cache message of the day in a vector (faster!)
|
|
* Added support for multiple lines of /NAMES on large channels
|
|
* Added hostname/ip caching to speed up connects
|
|
* Added '/stats z'
|
|
* Added Server class
|
|
* Added more code to example module demonstrating use of Server class
|
|
* Added Admin class (holds /admin info for modules)
|
|
* Added methods to Server class
|
|
* Added m_cloaking.so module, provides host masking
|
|
* Added /AWAY
|
|
* added /ISON command (for mIRC etc basic notify)
|
|
* Added /USERS stub
|
|
* Added /SUMMON stub
|
|
* attemted to fix weird crash on /kill
|
|
* added pause= value to /die and /restart in config
|
|
* Attempted to fix closed client sessions not being detected
|
|
* Added wildcard support
|
|
* Added channel bans
|
|
* Changed user and channel structs to classes (finally)
|
|
* Fixed parameter error in QUIT code (was showing junk chars on BSD)
|
|
* fixed some ugly pointer bugs (thanks dblack and a|KK|y!)
|
|
* Added /INVITE command and relevent structures
|
|
* Added CONNECT ALLOW and CONNECT DENY config tags
|
|
* Added PASS command
|
|
* Fixed: /LUSERS cant count :P
|
|
* added /TRACE command
|
|
* Implemented channel mode +m
|
|
* Added channel modes, +k, +l, +i, +m etc
|
|
* Added user and channel modes +i, +p, +s
|
|
* Implemented usermode +s
|
|
* Fixed dodgy mode glitches (the ones Craig loves to play with, awww)
|
|
* Added code to tidy up bans (e.g. max nick length) - i blame mIRC!
|
|
* fixed multiple /MODE +l bugs (thanks to akky and BOFH bugging meh!)
|
|
* Fixed ident max length to 10
|
|
* fixed random crash on kill_link (AGAIN) - was /stats
|
|
* improved speed 10x (because i can...)
|
|
* optimisations galore!
|
|
* Added FileReader file-caching class
|
|
* Changed m_randquote to use FileReader class
|
|
* Neater source tree (binaries in bin, source in src, headers in include, etc)
|
|
* Added /WHOWAS
|
|
* Tidied up makefiles
|
|
* Much nicer configure program
|
|
* makeconf program (very nice config maker by Craig)
|
|
|
|
|
|
1.0 alpha 8
|
|
|
|
* Added Admin class (holds /admin info for modules)
|
|
* Added methods to Server class
|
|
* Added m_cloaking.so module, provides host masking
|
|
* Added Server class
|
|
* Added more code to example module demonstrating use of Server class
|
|
* ./configure improved by Craig (better prompts, dir creation)
|
|
* /stats z added detail
|
|
* Added '/stats z'
|
|
* Added hostname/ip caching to speed up connects
|
|
* Made ircd cache message of the day in a vector (faster!)
|
|
* Added support for multiple lines of /NAMES on large channels
|
|
|
|
1.0 alpha 7
|
|
|
|
* Added /USERHOST command
|
|
* Added '/STATS O'
|
|
* removed random debug output
|
|
* Fixed random crash on nickchange
|
|
* Fine tuned ability to handle >300 users
|
|
* added '/stats L' (connect-info)
|
|
* '/stats u' support added (server uptime)
|
|
* added '/stats M' command
|
|
* Added extra dynamic module support, new methods to Module class
|
|
|
|
1.0 alpha 6
|
|
|
|
* Changed command table to a vector of command_t types
|
|
* Dynamix module support, preliminary release
|
|
* Fixes random crash on nickchange
|
|
* Fixed wallops and command parameter counting bugs
|
|
* fixed "user lingering" problem in kill_link
|
|
* updated example config
|
|
* developed a simple sample module (m_foobar.so)
|
|
|
|
1.0 alpha 5
|
|
|
|
* Changed channel array to a hash_map similar to the one used for users, faster and more efficient
|
|
* Changed ./configure, no longer asks for hard channel limit (depreciated)
|
|
* Added support for users to be disconnected once MAXUSERS is reached
|
|
* Changed code a lot, major overhauls for C++ and STL use for added stability and speed
|
|
* Changed entire user system to use the hash_map container type instead of an array
|
|
* Added /TIME command
|
|
* Added /INFO command
|
|
* Added restart and die passwords
|
|
* Partially implemented /RESTART command
|
|
* Fixed amusing bug which allowed partially connected clients to issue commands under the context of other users! *gulp!* (reported again by Craig)
|
|
* Fixed SegFault caused when doing a /who 0 or /who * whilst not in channels (Reported by Craig, Fixed by Craig :p)
|
|
* Added /who 0 o to display online Opers (Craigs First Scratch of Code :p)
|
|
* Fixed Typo in LUSERS (Reported by MrBOFH and CC)
|
|
* Fixed Joining Channels withough a # bug. (Reported by MrBOFH)
|
|
|
|
|
|
1.0 alpha 4
|
|
|
|
* Fixed parameters bug discovered by Allan
|
|
* Fixed /NICK repeating bug found by piggles.
|
|
* Added /REHASH command
|
|
* Added /LUSERS command
|
|
* Added ability to kill -HUP to rehash
|
|
* Fixed lock up after ping timeout
|
|
* Added system to /VERSION
|
|
* Added DNS lookups on connect (*FIXME* this needs to be asyncronous!)
|
|
* Fixed IRCop status shown on wrong users
|
|
* Fixed socket linger option via setsockopt (can restart faster as sockets arent in use after shutdown!)
|
|
* Added operators can now see real userhost in WHOIS
|
|
* Added oper-up failed msg to online opers
|
|
* Changed layout of /motd command start numeric
|
|
* Fixed empty channels are now purged upon user quit
|
|
* Changed: support for WHO * as well as WHO 0 (do the same thing)
|
|
* Fixed ability to kick users when you arent on the channel :)
|
|
* Fixed grammatical error when halfop tries to kick an op, "You must be at least a half-operator"
|
|
|
|
|
|
1.0 alpha 3
|
|
|
|
* Fixed problem where nicks containing control codes were allowed
|
|
* Added support so that ircd honours channel mode +n
|
|
* Added support so that ircd honours channel mode +t
|
|
* Fixed linefeeds in middle of line bug (reported by Craig)
|
|
* Fixed buffer overflow in channel names (reported by Allan)
|
|
* Fixed close() on nonblocking sockets problem
|
|
* Added /KILL command >:)
|
|
* Added /KICK command
|
|
|
|
1.0 alpha 2
|
|
|
|
* addition of /oper and several Channel Modes.
|
|
* new config file format
|
|
|