summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2013-05-02Fix gnutls (again) on Windows by using gnutls_transport_set_errno()Adam
2013-05-02Fix disabling IPV6_V6ONLY on sockets, issue #511Adam
2013-04-24Release 2.0.12attilamolnar
2013-04-24Move SocketEngine::IgnoreError() code into socketengine.h and add test for ↵attilamolnar
EWOULDBLOCK
2013-04-24m_ssl_gnutls Add ability to load DH params from fileattilamolnar
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-23m_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-23Add config option to disable somaxconn range() checkattilamolnar
2013-04-21m_rline Switch to OnUserRegister hook to disconnect banned users earlierattilamolnar
2013-04-21m_filter, m_rline Remove rlines and filters when the regex engine changes or ↵attilamolnar
becomes unavailable
2013-04-21m_filter Fix memory leak on unloadattilamolnar
2013-04-21Log some internal errors on DEFAULT loglevel instead of DEBUG, log detected ↵attilamolnar
errors in m_callerid
2013-04-21m_permchannels Workaround for alphabetical module initialization orderattilamolnar
Read database after all modules have been inited Add exception logging Fixes #485 reported by @gholms
2013-04-21Don'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-19Immediately stop processing whenever we detect and handle a RecvQ overrunattilamolnar
Thanks to @SimosNap for the report and cooperation
2013-04-19Fix uuids getting truncated in the nick hash in UserManager::AddUser() if ↵attilamolnar
nickmax is < 9
2013-04-19m_ident Invalidate cache after changing User::identattilamolnar
2013-04-19m_callerid Allow messaging yourself while +g regardless of the ACCEPT listattilamolnar
2013-04-18m_spanningtree Fix IS_LOCAL() check in OnRehash handlerattilamolnar
2013-04-18m_callerid Ignore duplicate entries when unserializing callerid_dataattilamolnar
2013-04-18m_callerid Fix bookkeeping error introduced when unserializing callerid_dataattilamolnar
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-16Fix m_ssl_gnutls and perhaps some other things on Windows by recognizing ↵Adam
WSAEWOULDBLOCK
2013-04-16m_kicknorejoin Store and compare uuids instead pointersattilamolnar
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-16m_kicknorejoin Limit time to 30m by defaultattilamolnar
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-16m_kicknorejoin Minor improvementsattilamolnar
- Ignore remote users - Remove expired items in one pass
2013-04-16Close listening sockets regardless of the return value of shutdown()attilamolnar
2013-04-16Do not enable SO_LINGER on our socketsattilamolnar
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-10m_spanningtree Create new TreeServers for incoming connections only when ↵attilamolnar
they've accepted our credentials, not when they send SERVER
2013-04-09Remove some uline checks that ran after an IS_LOCAL() checkattilamolnar
2013-04-05Don't attempt to unload or reload modules that are waiting to be unloadedattilamolnar
2013-04-05Fix LUSERS not working in a PURE_STATIC buildattilamolnar
2013-04-01cmd_stats List opers without iterating the whole userlistattilamolnar
2013-04-01cmd_invite Check if the inviting user is on the channel before potentially ↵attilamolnar
telling him the target is already on it
2013-03-29Release 2.0.11attilamolnar
2013-03-29cmd_kill Send snotice to servers when both the oper and the victim are on ↵attilamolnar
the same server
2013-03-29Update doc and fix the description of m_allowinviteattilamolnar
2013-03-29m_ldapoper Make the module actually workattilamolnar
Fixes #439 reported by @rhylan
2013-03-29m_ldapoper Fix memory leakattilamolnar
See 1813369adecc1efc9812e90c40c21dc32e4965c9 for details
2013-03-28Fix premature overwriting of OLDTIME that resulted in time drifts never ↵attilamolnar
being detected
2013-03-27cmd_lusers Fix miscountingattilamolnar
2013-03-26Merge pull request #443 from ShutterQuick/sasl_externalAttila Molnar
Added support for SASL EXTERNAL
2013-03-25Added support for EXTERNALDaniel Vassdal
2013-03-25m_xline_db Fix pointless excessive stack usage in ReadDatabase()attilamolnar
2013-03-25m_xline_db Major enhancementsattilamolnar
- Save database on a timer, not on every single change - Use the internal database instead of keeping track of xlines ourselves
2013-03-25Accept -c as a command line argument (equivalent to --config)attilamolnar
2013-03-24Initialize the FakeClient pointer in InspIRCd::InspIRCd()attilamolnar
2013-03-24m_timedbans Notice halfops and above when a timed ban is placedattilamolnar
Fixes #415 reported by @killerrabbit
2013-03-20Fix infinite loop when all DNS request slots are in useattilamolnar
This is not the best way to detect this scenario, a better detection mechanism will replace this in the future
2013-03-20Add support for mandatory tags in included config filesattilamolnar
If the mandatory tag is not found in the included config, the rehash is aborted. This is especially useful for remote includes, as it allows users to have a dummy tag at the end of the included config to indicate that the config has been wholly read. This method does not depend on exit codes so even situations where wget returns an empty or a wrong page that we would otherwise accept can be detected and an error can be generated before we assume that the contents have disappeared (and unload all modules, if the included file is supposed to contain module tags, for example). Usage: <include ... mandatorytag="namehere"> - if the included config doesn't contain a <namehere> tag then the rehash is aborted Fixes #30 reported by @Justasic
2013-03-20m_spanningtree Fix incoming channel modes being lost for 0-user permanent ↵attilamolnar
channels on the losing side of a netmerge This did not affect listmodes
2013-03-20m_permchannels Load channels from the config only at module load time and ↵attilamolnar
only when there are no linked servers to avoid desync