summaryrefslogtreecommitdiff
path: root/src/modules/m_spanningtree
AgeCommit message (Collapse)Author
2014-07-24Update example configuration files, fix typos and caseAttila Molnar
Mention m_regex_stdlib in the list of regex providers after m_filter
2014-07-24m_spanningtree Always treat the remote client as the winner on nick ↵Attila Molnar
collision if the nick is used by a (local) client that isn't fully registered
2014-06-06m_spanningtree Forward NICK messages when they cause a collision with the ↵Attila Molnar
new nick param rewritten to the uuid Suppressing these messages meant that we relied on an appropriate NICK to come from the direction the SAVE was sent to; this left all servers behind us uninformed until the target server of the SAVE reacted with a nick change to uuid. This was problematic because someone can legitimately change nick to the past nick of the SAVEd user on a server that already has the SAVEd user with the uuid nick and that nick change message can reach servers that haven't yet seen the nick change to uuid of the SAVEd user.
2014-06-06m_spanningtree Fix cleanup of connections when unloading a module that ↵Attila Molnar
provides an IOHook
2014-05-21Update server.cppDan Parsons
Rewrote "invalid credentials" error message to remove confusion regarding "server snomask", which some users interpreted as "I must make sure the snomask on each server is identical" (which makes no sense), when really the intention is basically "look at the logs on the other server".
2014-04-29m_spanningtree Advertise the availability of m_globops in CAPAB CAPABILITIESAttila Molnar
2014-04-26m_spanningtree Set the bursting flag in the FJOIN handler based on whether ↵Attila Molnar
the source of the FJOIN is bursting or not Previously the flag was true if our route to the source was bursting, which resulted in m_joinflood incorrectly registering netjoins when a remote server was bursting Fixes issue #839 reported by @joshtek0
2014-04-04Add REG_ALL checks to treat unregistered users as nonexistent in more casesAttila Molnar
2014-03-02m_spanningtree Do pointer comparison before deleting one of the pointers in ↵Attila Molnar
TreeSocket::Squit() While the previous code worked fine in practice, it was incorrect in theory
2014-03-02m_spanningtree Don't send snotices to servers about remote servers splittingAttila Molnar
The snotice is sent to opers when the SQUIT is processed by their server
2013-12-15m_spanningtree Fix nick TS desync on SVSNICKAttila Molnar
Don't accept invalid timestamps
2013-11-09Use case insensitive comparison for server names for (auto)connects, issue #662Adam
2013-11-09Fix parsing ADDLINE with expiration or creation dates past ~2038 probablyAdam
2013-11-09Fix issue #657, fix sending FNAME with spacesAdam
2013-08-31m_spanningtree Fix timestamp in AWAYattilamolnar
2013-08-21m_spanningtree When an IOHook goes away close all pending connections that ↵attilamolnar
use it
2013-07-26Use server ids when propagating squitsAdam
2013-06-12m_spanningtree FJOIN handler: Merge and take maxmodes into consideration ↵attilamolnar
when applying non-prefix modes
2013-06-05Remove unnecessary string copies and dead codeattilamolnar
2013-06-04m_spanningtree Fix FIDENT routingattilamolnar
A new FIDENT was broadcast for each incoming FIDENT causing harmless but unnecessary server to server traffic
2013-05-16Remove unused variables, avoid copies where possible, check empty() instead ↵attilamolnar
of size() == 0 Most of these were detected by cppcheck
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-18m_spanningtree Fix IS_LOCAL() check in OnRehash handlerattilamolnar
2013-04-10m_spanningtree Create new TreeServers for incoming connections only when ↵attilamolnar
they've accepted our credentials, not when they send SERVER
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-02-01Remove unused variables detected by Clang 4.2.Peter Powell
2013-01-14m_spanningtree Fix rare desync when a KILL crosses a message that has the ↵attilamolnar
killed user's prefix and modifies global state
2012-12-15Add a flag to Command that controls whether an empty last parameter is ↵attilamolnar
allowed or not
2012-12-15Add IS_SERVER() and REG_ALL checks to (mostly oper only) commands taking a ↵attilamolnar
target nickname If a SID was passed as the target user parameter or when it's an unregistered user reply with the "no such nick" (or the moral equivalent) message
2012-11-29cmd_rehash, m_spanningtree Fix REHASH messages duplicating at each hopattilamolnar
Fixes #375 reported by @JDowny
2012-11-28m_spanningtree Remove redundant params.size() checksattilamolnar
TreeSocket::ProcessConnectedLine() and CommandParser::CallHandler() only call the handler when there are enough parameters
2012-11-19Remove usage of deprecated CallCommandHandler() and IsValidModuleCommand()attilamolnar
2012-11-12Remove usage of the deprecated ConfigReaderattilamolnar
2012-11-09m_spanningtree SVSNICK needs 3 parametersattilamolnar
2012-11-09m_spanningtree Refuse bogus NICK messagesattilamolnar
If the new nick looks like an uid verify that its the correct uid
2012-10-21Make better use of User::GetFullRealHost()attilamolnar
2012-10-12Windows: In-depth cleanup (see details)ChrisTX
-Fix x64 builds for Windows. Now all configurations compile. -Remove the non-working rebase stuff. -Remove the Windows fork hack and instead use FreeConsole() to emulate the behavior. This directly allows us to compile with ASLR, which is turned on now. -Remove the old IPC mechanism for the removed GUI. This is not needed anymore as the GUI wasn't ever supported on anything newer than 1.2 -Remove the WIN32/WINDOWS macros. _WIN32 is supported on all x86-based VC++ targets, so that's what we need. -Enable optimizations for release builds. -De-duplicate printf_c(), it was previously copy-pasted into colors.h for configure -Add the VC++ specific bad files in .gitignore -Disable PID writing on Windows. This is only making sense for *nix builds. -Replace the CPU usage retrieval with an algorithm analogous to the *nix behavior. Also supports separated now/total values. (Tested with a dummy busy loop - seems working) -Removed certain unused functions and variables -Remove stdint defines from the windows wrapper -Remove CRT debug alloc. This is a bad idea as it would define a macro to replace free which breaks builds. -Re-evaluated the warnings list, commented it. -Moved inspircd_config/_version to include/ to match *nix -Removed the creation of inspircd_se_config, as it isn't used at all. -Made non-git builds show as "r0" instead of "r" (thanks to @SaberUK for pointing this out) -Fixed up m_spanningtree's project paths. Now all configurations (debug/release x86/x64) have been tested and build properly. -Moved FindDNS out of the wrapper and matched its log behavior with *nix. (It's pointless having it in the wrapper after the recent slimming down) -Replaced random/srandom wrappers with a mechanism that tries to use Windows' Random API first is no SSL module is loaded. -Removed more old junk from support for compilers older than VC++ 2010 (we don't have project files for these, so compiling them would be hard anyways) -Removed the unused ClearConsole() -Removed unused includes from the wrapper. Also, do not include psapi.h here if we don't link psapi.lib. This should be done where appropriate. -Made inet_aton an inline function for increased performance -C4800, performance warning about bool forcing, resolved at all occurrences. -C4701, uninitialized variable 'cached', resolved at all occurrences. -dlerror() was migrated out of the wrapper for more thread safety (no global buffer being shared) and increased performance. -Removed the wrong CRT debug flags. This drains a lot of performance. -Removed the clock_gettime/gettimeofday wrappers -Replaced all TCHAR/ANSI mix-ups of functions with the correct respective function. -Added a block of C4355 for < VS2012 -Update project files for c870714
2012-10-12Remove superfluous std::string()sattilamolnar
2012-10-07m_spanningtree Fix undefined behavior caused by referencing the returned ↵attilamolnar
buffer by std::string::c_str() when the object is temporary
2012-10-03m_spanningtree Fill a parameterlist in OnAddLine/OnDelLineattilamolnar
2012-10-03m_spanningtree Simplify OnMode and OnSetAway handlersattilamolnar
2012-10-03m_spanningtree Remove empty RedoConfig()attilamolnar
2012-10-03m_spanningtree Utils: Remove unused functionsattilamolnar
2012-10-03m_spanningtree OPERTYPE handler: Return when finished processing instead of ↵attilamolnar
changing execution path with a flag
2012-10-03m_spanningtree Remote WHOIS handler: Find target with FindNickOnly (don't ↵attilamolnar
accept uids, like in cmd_whois)
2012-10-03m_spanningtree Netburst: Remove unused parameters and variablesattilamolnar
2012-10-03m_spanningtree Netburst: Prefix SERVER and VERSION lines with SIDs instead ↵attilamolnar
of server names
2012-10-02m_spanningtree Netburst: Remove unnecessary variables from DoBurst()attilamolnar
2012-10-02m_spanningtree Use iterators in CAPAB handler and when generating reply to ↵attilamolnar
spanningtree related /stats, use std::find() in TreeServer::DelChild()
2012-10-02m_spanningtree Only allow uuids in SVSJOIN, METADATA and OPERQUITattilamolnar