Age | Commit message (Collapse) | Author | |
---|---|---|---|
2013-04-28 | Merge insp20 | attilamolnar | |
2013-04-27 | Added RMODE command per suggestion #479 | Daniel Vassdal | |
2013-04-27 | Prevent /mode from being incredible näive after failed attempt to samode a ↵ | Daniel Vassdal | |
user. | |||
2013-04-27 | Move <performance:nouserdns> to <connect:nouserdns>. | Peter Powell | |
2013-04-26 | Fix Windows | Adam | |
2013-04-26 | Modularize DNS | Adam | |
The DNS modules are temporarily in commands/ so they're loaded automatically Thanks to Attila for helping with much of this. | |||
2013-04-24 | Release 2.0.12 | attilamolnar | |
2013-04-24 | Move SocketEngine::IgnoreError() code into socketengine.h and add test for ↵ | attilamolnar | |
EWOULDBLOCK | |||
2013-04-24 | m_ssl_gnutls Add ability to load DH params from file | attilamolnar | |
This greatly decreases the load time because the DH parameters no longer have to be (re)generated each time the module is loaded | |||
2013-04-23 | m_spanningtree Fix crash when connecting to a remote server that has the ↵ | attilamolnar | |
same name as we do and also there is a link block with our server name and their password See 49223cfe12ecd9071123f724e615e63841f2421d | |||
2013-04-23 | Add config option to disable somaxconn range() check | attilamolnar | |
2013-04-21 | m_rline Switch to OnUserRegister hook to disconnect banned users earlier | attilamolnar | |
2013-04-21 | m_filter, m_rline Remove rlines and filters when the regex engine changes or ↵ | attilamolnar | |
becomes unavailable | |||
2013-04-21 | m_spanningtree Move CacheTimer into utils | attilamolnar | |
2013-04-21 | Timer changes and TimerManager enhancements | attilamolnar | |
Timer::Tick() now has a bool return value: if false is returned the timer is deleted using operator delete, otherwise, if it's a repeating timer then it's rescheduled (readded) Timers are removed from the TimerManager automatically at destruction Timers are now stored in a multimap instead of a sorted vector | |||
2013-04-21 | m_filter Fix memory leak on unload | attilamolnar | |
2013-04-21 | Log some internal errors on DEFAULT loglevel instead of DEBUG, log detected ↵ | attilamolnar | |
errors in m_callerid | |||
2013-04-21 | m_permchannels Workaround for alphabetical module initialization order | attilamolnar | |
Read database after all modules have been inited Add exception logging Fixes #485 reported by @gholms | |||
2013-04-21 | Don't crop the channel name if it's too long in Channel::Channel() | attilamolnar | |
...and especially don't use the shortened name in one place and the original in another Having different <limits:maxchan> values on the same network is not supported | |||
2013-04-19 | Immediately stop processing whenever we detect and handle a RecvQ overrun | attilamolnar | |
Thanks to @SimosNap for the report and cooperation | |||
2013-04-19 | Fix uuids getting truncated in the nick hash in UserManager::AddUser() if ↵ | attilamolnar | |
nickmax is < 9 | |||
2013-04-19 | m_ident Invalidate cache after changing User::ident | attilamolnar | |
2013-04-19 | m_callerid Allow messaging yourself while +g regardless of the ACCEPT list | attilamolnar | |
2013-04-19 | Fix building with libc++. | Peter Powell | |
- Purged std::tr1::strlower (was never used). - Moved std::tr1::insensitive to irc::insensitive. - Added TR1NS macro to point to the correct C++ TR1 namespace. | |||
2013-04-18 | m_spanningtree Fix IS_LOCAL() check in OnRehash handler | attilamolnar | |
2013-04-18 | m_callerid Ignore duplicate entries when unserializing callerid_data | attilamolnar | |
2013-04-18 | m_callerid Fix bookkeeping error introduced when unserializing callerid_data | attilamolnar | |
This also fixes a memory leak that didn't occur naturally but was triggerable by remote servers Thanks to @SimosNap for the report | |||
2013-04-16 | Fix m_ssl_gnutls and perhaps some other things on Windows by recognizing ↵ | Adam | |
WSAEWOULDBLOCK | |||
2013-04-16 | m_kicknorejoin Store and compare uuids instead pointers | attilamolnar | |
Fixes the off chance scenario where we disallow a join because a previously kicked user has quit and the User who is trying to join happens to be allocated at the exact same memory location | |||
2013-04-16 | m_kicknorejoin Limit time to 30m by default | attilamolnar | |
In the current implementation we only expire entries when someone joins, without a limit it was possible to make us practically never remove entries and consume (a tiny amount of) memory for each entry until the mode was removed/parameter was changed The default limit of 30m is chosen to not surprise people when they upgrade. If you need to prevent rejoins for more than a minute then you should set a (timed)ban instead Config option is available to change the limit (2.0 only) | |||
2013-04-16 | m_kicknorejoin Minor improvements | attilamolnar | |
- Ignore remote users - Remove expired items in one pass | |||
2013-04-16 | Close listening sockets regardless of the return value of shutdown() | attilamolnar | |
2013-04-16 | Do not enable SO_LINGER on our sockets | attilamolnar | |
Using this option allowed close() to block for up to a second Thanks to Shamsdeen and Rix for their assistance that made this fix possible Fixes issue #445 reported by @shaggie76 Fixes issue #494 reported by @Rixcho | |||
2013-04-14 | Use std::string internally in UIDGenerator, move UUID_LENGTH into the class ↵ | attilamolnar | |
as a constant | |||
2013-04-14 | Simplify UID generation logic | attilamolnar | |
This loop is not required because we already set current_uid[pos] to 'A' before recursing if current_uid[pos] is 9 | |||
2013-04-14 | Extract UID/SID generation logic into a new class: UIDGenerator | attilamolnar | |
2013-04-13 | Remove const char* versions of ↵ | attilamolnar | |
InspIRCd::FindNick()/FindNickOnly()/FindUUID()/FindChan() | |||
2013-04-13 | m_spanningtree Remove redundant first parameter of PING/PONG | attilamolnar | |
2013-04-13 | m_spanningtree Ignore hopcount in incoming SERVER command, always send 0 at ↵ | attilamolnar | |
burst | |||
2013-04-13 | m_spanningtree Netburst: If a topic was ever set, send it even if it's empty | attilamolnar | |
A new but empty topic should override a non-empty old topic | |||
2013-04-13 | Merge pull request #476 from SaberUK/master+allowcoreunload | Attila Molnar | |
Add <security:allowcoreunload>. | |||
2013-04-13 | m_spanningtree Add channel timestamp to FTOPIC | attilamolnar | |
2013-04-13 | m_spanningtree Add channel timestamp to channel METADATA | attilamolnar | |
2013-04-13 | Add <security:allowcoreunload>. | Peter Powell | |
When enabled (the default) this setting prevents the unloading of core modules such as cmd_privmsg. | |||
2013-04-13 | m_spanningtree Introduce IJOIN and RESYNC | attilamolnar | |
When a local user joins an existing channel, instead of an FJOIN, send an IJOIN with the channel name being the first parameter. If the joining user received prefix modes, append the channel TS and the prefix mode letters as the second and third parameters. When receiving an IJOIN, first check if the target channel exists. If it does not exist, ignore the join (that is, do not create the channel) and send a RESYNC back to the source. If the channel does exist then join the user, and in case any prefix modes were sent (found in the 3rd parameter), compare the TS of the channel to the TS in the IJOIN (2nd parameter). If the timestamps match, set the modes on the user, otherwise ignore the modes. Outgoing IJOINs to 1202 protocol servers are converted to FJOINs, but the channel mode parameter is left empty ("+"). | |||
2013-04-13 | m_spanningtree Bump protocol version and remove unused CAPAB CAPABILITIES ↵ | attilamolnar | |
entries | |||
2013-04-13 | Channel::JoinUser() and Channel::ForceChan() changes | attilamolnar | |
Convert static Channel::ForceChan() to non-static Channel::ForceJoin() that joins a user to a channel, no permission checks The (static) Channel::JoinUser() now has a LocalUser parameter, and no longer have TS and bursting parameters. If the channel doesn't exist, it is created using current time as TS | |||
2013-04-13 | OnUserPreJoin is a local-only hook, change User* parameter to LocalUser* | attilamolnar | |
2013-04-13 | Remove the deprecated invite API | attilamolnar | |
2013-04-12 | m_spanningtree Remove unneeded #includes | attilamolnar | |