aboutsummaryrefslogtreecommitdiff
path: root/src/modules/m_spanningtree/treesocket.h
Commit message (Collapse)AuthorAgeFilesLines
* Update copyright headers.Gravatar InspIRCd Robot2020-01-111-2/+7
|
* Fix linking servers with UNIX sockets.Gravatar Peter Powell2019-04-151-1/+1
| | | | | - Remove the address/port overloads of BeginConnect. - Change DoConnect to take a sockaddrs instead of an address/port.
* Improve X-line text consistency.Gravatar Matt Schatz2019-01-091-1/+1
| | | | | | | | | | - Change any "-Line", ":Line", or "*line" to "-line" throughout the X-line code, comments, and documentation. - Add periods to the end of some notices. - Correct a typo in the Q-line code comments. - Update the filter module documentation (shun addition). Co-authored-by: Robby <robby@chatbelgie.be>
* Fix message tags not being broadcast across the network.Gravatar Peter Powell2019-01-021-2/+6
|
* Fix conversion issues by replacing ConvToInt with ConvToNum<T>.Gravatar Peter Powell2018-12-121-1/+1
| | | | | | | The former was a thin wrapper around atol and brought with it all of the weird parsing logic of atol which is almost never what is actually wanted. It also almost never returned the numeric type which is actually wanted which can cause weird issues when casting.
* Improve CAPAB negotiation in the spanningtree module.Gravatar Peter Powell2018-10-271-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | - Remove the CHANMODES, USERMODES, and PREFIX tokens in the 1205 protocol. These have entirely been superceded by the CHANMODES and USERMODES CAPAB commands. - Only compare the 1202 PREFIX tokens if the remote server did not send CAPAB CHANMODES. This replicates the existing behaviour used for the CHANMODES token. - Fix checking whether the remote server has an appropriate case mapping. If it is not sent we assume it is the same as the local server as always. This should prevent issues with people using services packages that do not send this token yet. - Fix checking if the user modes are mismatched and then promptly overwriting the error message with mismatched channel modes. - Fix servers not being able to tell whether a mode on the remote server is a prefixless prefix mode. Requires the 1205 protocol. - Fix servers that receive CAPAB CHANMODES or CAPAB USERMODES not checking the type of those modes. Requires the 1205 protocol.
* Use CommandBase::Params instead of std::vector<std::string>.Gravatar Peter Powell2018-07-261-8/+8
| | | | | This is presently a typedef but will soon be replaced with a class that encapsulates both tags and parameters.
* Add CXX11_OVERRIDE to overridden members that lack it.Gravatar Peter Powell2017-07-121-5/+5
| | | | | This fixes a ton of warnings when building on compilers that default to C++11 or newer.
* m_spanningtree Get rid of some boilerplateGravatar Attila Molnar2015-01-201-1/+1
| | | | Make methods const while at it
* Merge insp20Gravatar Attila Molnar2014-10-271-2/+0
|\
| * Remove some dead code found by CoverityGravatar Attila Molnar2014-10-261-2/+0
| |
* | m_spanningtree Move squit logic into TreeServer from TreeSocketGravatar Attila Molnar2014-07-281-18/+0
| |
* | m_spanningtree Remove now needless TreeSocket::ConnectionFailureShownGravatar Attila Molnar2014-07-281-1/+0
| |
* | m_spanningtree Keep track of whether we've sent our burst, to be used for ↵Gravatar Attila Molnar2014-07-271-0/+6
| | | | | | | | translation
* | m_spanningtree Add TreeSocket::WriteLineNoCompat() to send a line without ↵Gravatar Attila Molnar2014-07-271-0/+5
| | | | | | | | doing any translation for old protocol servers
* | m_spanningtree Deduplicate server auth codeGravatar Attila Molnar2014-07-271-0/+9
| |
* | m_spanningtree Deduplicate auth finish codeGravatar Attila Molnar2014-07-271-0/+10
| |
* | Say "SSL certificate fingerprint" instead of "SSL fingerprint" everywhereGravatar Attila Molnar2014-07-191-1/+1
| |
* | m_spanningtree Extract logic that finds the source user for an incoming ↵Gravatar Attila Molnar2014-07-051-0/+12
| | | | | | | | command into a function
* | m_spanningtree Add TreeSocket::SendServerInfo() that sends all additional ↵Gravatar Attila Molnar2014-06-171-0/+3
| | | | | | | | data about a server
* | m_spanningtree Fix clang warning and wrong operator in ifGravatar Attila Molnar2013-12-181-1/+1
| |
* | Pass an interface to the OnSync hooksGravatar attilamolnar2013-09-131-3/+8
| | | | | | | | Remove Module::ProtoSendMetaData()
* | Send ListModeBase modes implicitly on channel syncGravatar attilamolnar2013-09-121-0/+4
| | | | | | | | Remove Module::ProtoSendMode() and ListModeBase::DoSyncChannel()
* | m_spanningtree Changes to TreeSocket::WriteLine() to avoid string copiesGravatar attilamolnar2013-08-271-1/+1
| | | | | | | | | | - Change argument type to a reference to avoid copies of the string object - If the std::string implementation is using copy-on-write then calling operator[] on a mutable string results in a copy; avoid this by calling .c_str() instead
* | m_spanningtree Move all server-to-server command handlers into handler classesGravatar attilamolnar2013-08-181-45/+0
| | | | | | | | These commands are not registered in or called by the core. When looking for the handler of a command a new command table is searched first which contains all server-to-server commands. If a handler cannot be found in there, the core command table is consulted.
* | m_spanningtree Propagate oper-only quit reason using METADATA, remove OPERQUITGravatar attilamolnar2013-08-181-4/+0
| |
* | m_spanningtree Remove SpanningTreeUtilities* fields and parametersGravatar attilamolnar2013-08-171-3/+2
| |
* | m_spanningtree Cleanup TreeServer and TreeSocket construction/destructionGravatar attilamolnar2013-07-241-1/+1
| |
* | Tidy up keywords on module methods.Gravatar Peter Powell2013-05-151-4/+4
| | | | | | | | | | - Remove virtual keyword from a ton of methods which don't need it. - Add override keyword to a ton of methods which do need it.
* | Merge insp20Gravatar attilamolnar2013-04-281-0/+11
|\|
| * m_spanningtree Create new TreeServers for incoming connections only when ↵Gravatar attilamolnar2013-04-101-0/+11
| | | | | | | | they've accepted our credentials, not when they send SERVER
* | m_spanningtree Ignore hopcount in incoming SERVER command, always send 0 at ↵Gravatar attilamolnar2013-04-131-6/+1
| | | | | | | | burst
* | m_spanningtree Add channel timestamp to channel METADATAGravatar attilamolnar2013-04-131-0/+4
| |
* | m_spanningtree Remove unneeded #includesGravatar attilamolnar2013-04-121-2/+0
| |
* | m_spanningtree Netburst: Refactor SendChannelModes()Gravatar attilamolnar2013-04-121-2/+2
| | | | | | | | Rename it to SyncChannel() and change it to take a Channel* parameter, move iteration into DoBurst()
* | Tidy up source files:Gravatar Peter Powell2013-04-121-5/+1
| | | | | | | | | | | | - Use #pragma once instead of include guards. - Move header files in src/modules to include/modules. - Fixed various spacing issues.
* | Fix linker error when linking spanningtree caused by ↵Gravatar Adam2013-04-011-3/+0
|/ | | | 56cae0f3a484cbcb20569b68917f1810a0c2f4a4
* m_spanningtree Netburst: Remove unused parameters and variablesGravatar attilamolnar2012-10-031-4/+4
|
* m_spanningtree: Resolve issue #250Gravatar ChrisTX2012-08-101-0/+1
|
* m_spanningtree Add function to easily determine whether a server was ↵Gravatar attilamolnar2012-07-081-0/+4
| | | | introduced to the network, use it to determine when to send SQUIT
* Replace copyright headers with headers granting specific authors copyrightGravatar Robby-2012-04-191-8/+17
|
* Fix some of the include guard names (requested by SaberUK)Gravatar Justin Crawford2012-04-141-2/+2
|
* Fixes for bug #12Gravatar Justin Crawford2012-04-141-2/+2
|
* Clean up treesocket naming confusion by adding a link block reference during ↵Gravatar danieldg2010-02-131-42/+10
| | | | | | negotiation git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12452 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix routing of KILL command when sourced from a serverGravatar danieldg2010-02-111-4/+0
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12432 e03df62e-2008-0410-955e-edbf42e46eb7
* Add random number generation functions to InspIRCd class.Gravatar danieldg2010-02-091-4/+0
| | | | | | | Default implementation uses libc random(), which can be better than rand(). If gnutls is loaded, gcrypt will be used to provide random numbers. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12404 e03df62e-2008-0410-955e-edbf42e46eb7
* Add DYING link state, push error messages on link, and only limit recvq on ↵Gravatar danieldg2010-02-041-2/+3
| | | | | | unauthenticated servers git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12370 e03df62e-2008-0410-955e-edbf42e46eb7
* Remove overrides for ADMIN, STATS, TIMEGravatar danieldg2010-01-191-9/+0
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12302 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix MOTD and RULES to work remotely (remove the old hacks for MOTD)Gravatar danieldg2010-01-191-3/+0
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12301 e03df62e-2008-0410-955e-edbf42e46eb7
* Move lots of spanningtree items to commandsGravatar danieldg2010-01-181-37/+0
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12296 e03df62e-2008-0410-955e-edbf42e46eb7