summaryrefslogtreecommitdiff
path: root/src/modules/m_spanningtree
AgeCommit message (Collapse)Author
2007-04-26Make error reporting work properly, it seemed to loose errors.brain
First change: Add a culling list of inspsockets waiting to be closed, so the close() is less likely to be called before the buffer is entirely empty. This seems to work well on my LAN. Second change: Add a SendError() method, rather than WriteLine("ERROR : ..."). This can be used to effect by also echoing out "Sent ERROR to %s: ..." onto the +l snomask meaning at least one end will always see the error even if the ERROR command is lost due to latency or design of the transport (e.g. ssl which may be writing during a read event etc) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6844 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-25dhost and host are both char[65], so let stringcopy take up to 64 chars here.peavey
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6833 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-20Fix bug #259 proper by doing what I should have done back in r6618 when I ↵peavey
first fixed logout issue. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6817 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-20Revert this back to previous.peavey
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6816 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-19Do not add empty strings to outgoing lines. *needs testing, may break stuff*peavey
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6815 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-19Check some userrec values in remote whois, so that it wont crash if a user ↵brain
has quit before the IDLE command arrives. Fixes bug #260 git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6814 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-15Fix for bug that took ages to track down and was very subtle.brain
During authentication the flow of commands is as follows: > SERVER aaaaaa < SERVER bbbbbb > BURST < BURST ... what can happen is that between the two server commands we can introduce SERVER aaaa to server bbbbb again, from a different socket. As server aaaaa doesnt exist yet and we're waiting for it to say yes or no to our own SERVER command over at bbbbbb, it cant be found with FindServer. Therefore we need a second list of servers that arent yet authenticated, but are waiting TO authenticate, by the pointer their socket has and the name they want to become after auth. If two servers introduce themselves at the same time, triggering what was the race condition, both servers are disconnected with "ERROR :Negotiation collision" and must try again until only one succeeds. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6802 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-09The hmac stuff was slightly wrong, calculating the 2nd partbrain
left a concatenation outside the bracket git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6787 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-09D'oh, this is what causes it to randomly not allow the HMAC, when theres an ↵brain
= in the string, it borks! git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6786 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-09And spell it right.brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6785 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-09Minor change, easy to roll back if it fucks upbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6784 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-09Whoopsiebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6783 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-09Wait longer before sending data on the connect than on the acceptbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6782 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-09Revertbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6781 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-09Test tweak to make it sync fasterbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6780 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-09Different way of generating random stringbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6779 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-09Give information in snomask +l to what type of auth was usedbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6778 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-09Handle non-hmac servers smarter without having to globally turn off hmacbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6777 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-09Add config <options:disablehmac> to support disabling of HMAC, and tidy up ↵brain
to detect if the other side hasnt got it enabled and we did, or if we enabled it and dont have sha256 (that would be an oops) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6776 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-09Remove debug: This now works!brain
WARNING: I have no idea how this will react to being linked to a past version without HMAC-challenge-response.. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6775 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-09I think we're almost there nowbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6774 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-09More fucking aroundbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6773 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-09This is likely fucked up beyond all recognition. Today is fubar day :pbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6772 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-09Debug, and we seem to be sending capab twicebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6771 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-09Check against the HMAC challenge now: *UNTESTED*brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6770 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-09Add basic HMAC suggested by jilles to make the auth not suck -- this is ↵brain
probably buggy, and the other side doesnt auth yet. do not use. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6769 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-09Test code that pretends to send a hashed value if its got a challenge - ↵brain
don't use this, it wont connect git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6768 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-09Added ability to send and receive a challenge, dont do anything with it yetbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6767 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-09Add methods needed for storing challenge stringbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6766 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-08It might be slightly slower, but memset the array as we're using it as a ↵brain
matrix not a simple char*. This will mean that the possibility of past data being left behind in the buffer wont happen git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6762 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-08Should change the header toobrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6761 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-08Make the lines wide enough to hold the new databrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6760 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-07Add licensing headers to files which are missing them and make sure they are ↵brain
up to date in others (e.g. point at the developer page on the wiki not list names) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6759 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-06We had to roll our own time function because some craqsmoker thought having ↵brain
a carriage return on the end of ctime and asctime was a great idea, and the only other solution is to fanny around with strftime. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6749 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-06Show expiry times of glines, klines, qlines and elines as the time theyre ↵brain
due to expire rather than number of secs (thanks bricker) Oh, and i hate C time formatting functions. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6748 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-06Fix bug #224 by refreshing the security ip cache every hour. The easier ↵brain
solution of course is not use crappy dynamic ips :p git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6745 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-05Fix for bug #199 (Feature request) submitted by owine. Ended up adding an ↵brain
extra parameter to <uline> for this. It turned into a biggie :P git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6742 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-05Add support for <link:hidden> fixes feature request documented in bug #247 ↵brain
reported by owine git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6738 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-05Add extra /map info (connection uptime, and lag time) to /MAP for opers. ↵brain
Adds feature requested by bug #246 git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6737 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-02This needs some general QA-ing. Add support to new parser (introduced in ↵brain
1.1) for empty final params (just the colon) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6731 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-02The other half of special's LUSERS fixbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6729 e03df62e-2008-0410-955e-edbf42e46eb7
2007-03-25Allow some commands to use a mask of * (this usually finds the 'root' server)brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6711 e03df62e-2008-0410-955e-edbf42e46eb7
2007-03-24Test stuff to fix remote stats brokagebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6710 e03df62e-2008-0410-955e-edbf42e46eb7
2007-03-24Check validity (length) of all NICK parameters to make sure we're not ↵brain
introducing a dodgy client (such as one introduced by dmb's dodgy program) Normally, NICK parameters longer than allowed are weeded out by CAPAB but sending CAPAB is optional. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6705 e03df62e-2008-0410-955e-edbf42e46eb7
2007-03-20Update a notice on server already existing to be more clearw00t
- Update ModDesc for m_hidechans git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6693 e03df62e-2008-0410-955e-edbf42e46eb7
2007-03-18Change back to FMODE for channel mode changes from usersbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6691 e03df62e-2008-0410-955e-edbf42e46eb7
2007-03-18set the TS of a channel in JoinUser, not after the entire FJOIN, this is ↵brain
safer and may fix the odd desync here and there git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6690 e03df62e-2008-0410-955e-edbf42e46eb7
2007-03-17Abort link at +/- 300secs, warn at +/- 30 secsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6689 e03df62e-2008-0410-955e-edbf42e46eb7
2007-03-16Remote /MODULESbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6688 e03df62e-2008-0410-955e-edbf42e46eb7
2007-03-16Now syncs with the master every 10 minsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6686 e03df62e-2008-0410-955e-edbf42e46eb7