Age | Commit message (Collapse) | Author |
|
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
|
|
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6833 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
first fixed logout issue.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6817 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6816 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6815 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
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
|
|
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
|
|
left a concatenation outside the bracket
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6787 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
= in the string, it borks!
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6786 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6785 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6784 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6783 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6782 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6781 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6780 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6779 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6778 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6777 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
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
|
|
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
|
|
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6774 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6773 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6772 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6771 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6770 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
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
|
|
don't use this, it wont connect
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6768 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6767 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6766 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
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
|
|
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6761 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6760 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
reported by owine
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6738 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
Adds feature requested by bug #246
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6737 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
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
|
|
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6729 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6711 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6710 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
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
|
|
- Update ModDesc for m_hidechans
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6693 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6691 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
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
|
|
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6689 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6688 e03df62e-2008-0410-955e-edbf42e46eb7
|
|
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6686 e03df62e-2008-0410-955e-edbf42e46eb7
|