summaryrefslogtreecommitdiffstats
path: root/src/modules/m_spanningtree
Commit message (Collapse)AuthorAgeFilesLines
* Fix crash in ADDLINE handler when the command had no parametersGravatar attilamolnar2012-10-041-1/+1
|
* Fix set-but-not-used and var shadowing warningsGravatar Sir Poggles2012-06-121-2/+2
|
* Merge pull request #183 from attilamolnar/insp12+invitefixGravatar Robin Burchell2012-06-121-0/+1
|\ | | | | [1.2] Fix pending invites not being removed on channel deletion
| * Fix pending invites not being removed when a channel was deleted or had its ↵Gravatar attilamolnar2012-06-021-0/+1
| | | | | | | | | | | | TS lowered Store pointers to channels instead of their names in User::invites
* | m_spanningtree Interpret ENCAPs also if they were targetted to our SID ↵Gravatar attilamolnar2012-05-301-2/+11
| | | | | | | | | | | | (retain old behavior) Drop single targetted ENCAPs if target is reachable via the server who sent the command to us
* | Don't forward SVSJOIN/SVSPART at all if the destination is the same as the ↵Gravatar attilamolnar2012-05-272-2/+18
| | | | | | | | source
* | m_spanningtree Kill duplicated code in OnUserMessage/Notice, put code shared ↵Gravatar attilamolnar2012-05-196-102/+45
| | | | | | | | with the protocol interface into the utility class
* | m_spanningtree Remove low level stuff from ↵Gravatar attilamolnar2012-05-191-18/+8
| | | | | | | | SpanningTreeProtocolInterface::SendUserPrivmsg/Notice, use utility functions like the rest of the protocol interface
* | m_spanningtree Fill a parameterlist in OnAddLine/OnDelLine instead of ↵Gravatar attilamolnar2012-05-191-27/+14
| | | | | | | | printf'ing parameters
* | m_spanningtree Remove no-op instructions and simplify codeGravatar attilamolnar2012-05-195-31/+15
| |
* | m_spanningtree Fix potential crash in SVSPART handler, don't broadcast ↵Gravatar attilamolnar2012-05-192-8/+12
| | | | | | | | incoming SVSJOIN/SVSPART but send it to the destination only, and don't pass it anywhere if they were talking to us
* | m_spanningtree Fix various bugs related to protocol interface and ENCAP handlingGravatar attilamolnar2012-05-192-11/+13
| | | | | | | | | | | | | | | | Most importantly: - Match the server name not the SID for determining if an incoming ENCAP should be processed by us - Handle the ? wildcard properly in the server name parameter of an ENCAP - Send single target ENCAPs to the destination only instead of broadcasting it - Make ProtocolInterface::SendMetaData accept TYPE_OTHER as target_type (on par with ProtoSendMetaData) instead of throwing an exception
* | m_spanningtree Call ProtocolInterface::PushToClient when writing to remote ↵Gravatar attilamolnar2012-05-196-59/+19
| | | | | | | | client instead of sending PUSH commands manually
* | m_spanningtree Use iterators in loops instead of subscript operatorGravatar attilamolnar2012-05-197-36/+30
|/
* Replace copyright headers with headers granting specific authors copyrightGravatar Robby-2012-04-2064-496/+953
|
* Fix MaxModes check when bursting bans for a channel to compare the number of ↵Gravatar attilamolnar2012-04-181-1/+1
| | | | | | bans not the length of the parameters it queued for sending. This has caused nearly every ban to be sent in a seperate FMODE.
* Fixes for OnDelLine checking hardcoded line type 'K' instead of ↵Gravatar attilamolnar2012-04-181-1/+1
| | | | IsBurstable() and not obeying loopCall, thus broadcasting a redundant DELLINE for every DELLINE received.
* Fix crash when a remote server has the same name as we doGravatar Daniel De Graaf2010-04-161-2/+3
|
* Send module load/unload notifications as metadataGravatar danieldg2010-03-221-0/+2
| | | | git-svn-id: http://svn.inspircd.org/repository/branches/1_2_stable@12647 e03df62e-2008-0410-955e-edbf42e46eb7
* Remove server deletion from OnError, fixes crash on ping timeoutGravatar danieldg2010-02-214-13/+11
| | | | git-svn-id: http://svn.inspircd.org/repository/branches/1_2_stable@12511 e03df62e-2008-0410-955e-edbf42e46eb7
* Close and delete server sockets when they are in DYING state, should avoid ↵Gravatar danieldg2010-02-161-1/+4
| | | | | | 100% CPU in other socketengines git-svn-id: http://svn.inspircd.org/repository/branches/1_2_stable@12473 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix race where two servers with the same name can enter WAIT_AUTH_2 and ↵Gravatar danieldg2010-02-152-9/+9
| | | | | | cause a double-free crash git-svn-id: http://svn.inspircd.org/repository/branches/1_2_stable@12461 e03df62e-2008-0410-955e-edbf42e46eb7
* Call OnClose() before changing link state to DYING to clean up introduced ↵Gravatar danieldg2010-02-143-2/+8
| | | | | | servers git-svn-id: http://svn.inspircd.org/repository/branches/1_2_stable@12458 e03df62e-2008-0410-955e-edbf42e46eb7
* Set link state to DYING on more error pathsGravatar danieldg2010-02-071-2/+3
| | | | git-svn-id: http://svn.inspircd.org/repository/branches/1_2_stable@12393 e03df62e-2008-0410-955e-edbf42e46eb7
* Restart server_hash iteration after quitting dead and pinged out serversGravatar danieldg2010-02-071-1/+5
| | | | git-svn-id: http://svn.inspircd.org/repository/branches/1_2_stable@12391 e03df62e-2008-0410-955e-edbf42e46eb7
* Remove users from uuidlist/clientlist on QuitUser, not during cull (allows ↵Gravatar danieldg2010-01-301-1/+3
| | | | | | UID reuse on fast netsplits) git-svn-id: http://svn.inspircd.org/repository/branches/1_2_stable@12327 e03df62e-2008-0410-955e-edbf42e46eb7
* If SVSNICK is sent to force a change to a UID-lookalike, just change nick to ↵Gravatar danieldg2010-01-241-3/+4
| | | | | | UID. Fixes bug #932 git-svn-id: http://svn.inspircd.org/repository/branches/1_2_stable@12319 e03df62e-2008-0410-955e-edbf42e46eb7
* Add DYING state, and use it instead of asking the core to delete the socket ↵Gravatar danieldg2010-01-234-4/+18
| | | | | | without SQUIT. Should fix the crash in bug #943 git-svn-id: http://svn.inspircd.org/repository/branches/1_2_stable@12316 e03df62e-2008-0410-955e-edbf42e46eb7
* Check channel name in SVSJOIN to avoid propegating an invalid channel, fixes ↵Gravatar w00t2009-12-311-7/+12
| | | | | | | | bug #928. This will result in a mild desync if someone has (ab)used SVSJOIN when linking a server running this to their network, but since those channels are screwed anyway.. git-svn-id: http://svn.inspircd.org/repository/branches/1_2_stable@12234 e03df62e-2008-0410-955e-edbf42e46eb7
* Where there are hidden servers, report the /map server count as the hidden ↵Gravatar brain2009-09-151-3/+3
| | | | | | | | | count if the user cant see these servers. and calculate the user average over this number of servers too. -- Reported by Syloq, thanks! git-svn-id: http://svn.inspircd.org/repository/branches/1_2_stable@11728 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix a regression from fcb51634669e6ed588e42f2072c6f910e267126f ("fix uid ↵Gravatar w00t2009-08-191-1/+3
| | | | | | | | collision on spanningtree reload") caused by access-after-free. Thanks to transnet for the report. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11533 e03df62e-2008-0410-955e-edbf42e46eb7
* Allow forward linking compatability by accepting higher protocol version ↵Gravatar danieldg2009-08-172-10/+13
| | | | | | numbers (other server should fail the link if it becomes link-incompatable) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11531 e03df62e-2008-0410-955e-edbf42e46eb7
* win: Last part of support required for VS2010:Gravatar w00t2009-08-151-1/+1
| | | | | | | | | | | | | | | | NEEDS COMPILE TESTING ON: gcc3 (if possible), gcc4, vs2008. - Check for vs2010 in hash_map.h - use unordered_map if it exists - change all map creations to: #if defined(WINDOWS) && !defined(HASHMAP_DEPRECATED) // old windows crap #else #if HASHMAP_DEPRECATED // tr1/gcc crap #endif #endif git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11524 e03df62e-2008-0410-955e-edbf42e46eb7
* Print line on empty prefix errors to track down a bugGravatar w00t2009-08-141-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11517 e03df62e-2008-0410-955e-edbf42e46eb7
* Use server name for source of remote TIME rather than SIDGravatar danieldg2009-07-031-1/+2
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11438 e03df62e-2008-0410-955e-edbf42e46eb7
* Roll back mysterious DNS change from 2007 which broke multiple-answerGravatar w00t2009-06-302-6/+3
| | | | | | | DNS requests (CNAME, A). It looks like this was to be related to bitmask dnsbl support, but it would never have worked anyway (resultnum was always 0..). git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11419 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix ENCAP forwarding with multiword final parameter, noticed by NamegdufGravatar danieldg2009-06-151-0/+2
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11413 e03df62e-2008-0410-955e-edbf42e46eb7
* Allow SSL fingerprint-based server authenticationGravatar danieldg2009-06-077-11/+48
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11404 e03df62e-2008-0410-955e-edbf42e46eb7
* OnRehash changes: split to multiple hooks to clarify use and prevent ↵Gravatar danieldg2009-05-242-5/+8
| | | | | | explosion of rehashes on a /REHASH * git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11388 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix UID collision on reload of m_spanningtree.soGravatar danieldg2009-05-141-0/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11386 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix some incorrect STL iterations (using < end() instead of != end())Gravatar special2009-05-142-3/+3
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11385 e03df62e-2008-0410-955e-edbf42e46eb7
* Show correct server source to users on FTOPIC and FMODEGravatar danieldg2009-05-131-1/+2
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11380 e03df62e-2008-0410-955e-edbf42e46eb7
* Use Utils->ServerUser instead of ServerInstance->FakeClient in m_spanningtreeGravatar danieldg2009-05-133-17/+7
| | | | | | | This makes it possible to determine which server initiated a mode change, instead of having only a flag saying that some server did. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11379 e03df62e-2008-0410-955e-edbf42e46eb7
* Make the previous patches actually workGravatar danieldg2009-05-132-3/+5
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11378 e03df62e-2008-0410-955e-edbf42e46eb7
* Replace loopCall detection in OnUserKick with a check for the m_spanningtree ↵Gravatar danieldg2009-05-131-12/+6
| | | | | | fake user git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11377 e03df62e-2008-0410-955e-edbf42e46eb7
* Use a FakeUser source for server-sourced commands in spanningtreeGravatar danieldg2009-05-133-51/+16
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11376 e03df62e-2008-0410-955e-edbf42e46eb7
* Remove handshake timer on server sockets that die before completing handshakeGravatar danieldg2009-05-074-21/+27
| | | | | | | | This fixes some very subtle and hard-to-trace bugs that are triggered when a file descriptor and memory address of an EventHandler* are reused after being deallocated. Impossible to trigger in valgrind; has been seen in live networks. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11369 e03df62e-2008-0410-955e-edbf42e46eb7
* Enable lag-check pings on active servers - if bandwidth waste is an issue, ↵Gravatar danieldg2009-04-261-6/+0
| | | | | | there should be an option to disable lag pings git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11331 e03df62e-2008-0410-955e-edbf42e46eb7
* Remove lag reporting in /map from servers that do not yet have a valid ↵Gravatar danieldg2009-04-261-1/+1
| | | | | | value; <1ms is misleading. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11330 e03df62e-2008-0410-955e-edbf42e46eb7
* rollback r11326, we're going to make vc9 the officially supported windows ↵Gravatar peavey2009-04-232-2/+2
| | | | | | build methods since the few of us doing win dev can't keep up maintaining the others. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11327 e03df62e-2008-0410-955e-edbf42e46eb7