5704 Commits

Author SHA1 Message Date
brain
ae4e6c3bf6 Added options:deprotectothers, this is like options:deprotectself, but if set allows one user with +a to remove another users +a, and a user with +q to remove another users +q.
Default behaviour is to turn this option off like previous versions of insp defaulted to. Thanks to Bricker for the idea and w00t not getting pissy at me :p


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6806 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-16 20:18:08 +00:00
brain
c50668bc9b Now this looks like it was supposed to.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6805 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-16 16:33:01 +00:00
brain
de46c72bb1 Fix the restart stuff that bricker noticed while testing an feature request
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6804 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-16 16:11:00 +00:00
peavey
5025402f6c Document <connect:port>
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6803 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-16 03:10:31 +00:00
brain
9af6ca54c0 Fix for bug that took ages to track down and was very subtle.
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-15 22:18:01 +00:00
brain
b98126b544 Whoooooooooooooooooooops. Forgot to initialize a varaible, so wether insp starts up or not is random :p
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6801 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-15 21:05:50 +00:00
brain
df34a888b6 Add --version parameter to the binary bin/inspircd, i remember someone requesting this
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6800 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-15 12:15:39 +00:00
brain
84b7dc1bf7 Add tweaks to support feature request in bug #256, now awaiting QA test
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6799 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-15 11:47:54 +00:00
brain
b1d06ea1d3 Feature request outlined in bug #257, allow connect/allow lines by port
Needs QA test


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6798 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-15 11:42:42 +00:00
brain
e72a125ccd View the diffs for a giggle.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6797 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-15 00:55:11 +00:00
brain
9f1a81b424 Report the correct MAXMODES value
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6796 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-15 00:27:44 +00:00
brain
0ff8bc01c2 Don't send SYNTAX to clients which havent registered fully yet. Nothing says we cant but its a bit 'odd' and may break something
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6795 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-14 23:39:41 +00:00
brain
8ffcf6fc3d Working in m_filter_pcre.
Thanks DarkPrince (PingBad) for the idea we messed with - when a match is successful move that match to the head of the list (O(1) operation)
The original suggestion was to sort, this would be far too expensive


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6794 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-14 12:05:27 +00:00
brain
5289be4268 Add move-match-to-head-of-queue stuff to pcre filter
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6793 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-14 11:54:20 +00:00
brain
35521473bb Working for m_filter, needs implementing in m_filter_pcre
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6792 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-14 11:43:00 +00:00
brain
26e22f0cad Some tweaks suggested by pingbad, dont use yet :p
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6791 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-14 11:33:59 +00:00
brain
5fdf364a22 Add a pair of curly braces because gcc will whine otherwise about declaration of a variable within a case statement
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6790 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-14 10:57:08 +00:00
brain
09e1cd32a3 Find out from the commit notices that we're still using ctime() here and should be using InspIRCd::TimeStr (ick)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6789 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-14 10:47:23 +00:00
brain
6b99d038e5 Dont use send_mode_explicit protocol call, use send_mode, which doesnt try and force the mode through via non-FMODE
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6788 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-12 19:28:57 +00:00
brain
bb848f8fd2 The hmac stuff was slightly wrong, calculating the 2nd part
left a concatenation outside the bracket


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6787 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-09 20:24:04 +00:00
brain
f94d5010fc D'oh, this is what causes it to randomly not allow the HMAC, when theres an = in the string, it borks!
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6786 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-09 18:43:11 +00:00
brain
7fe2cda433 And spell it right.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6785 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-09 18:38:23 +00:00
brain
88e768d246 Minor change, easy to roll back if it fucks up
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6784 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-09 18:37:55 +00:00
brain
30c9ff84e8 Whoopsie
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6783 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-09 18:15:43 +00:00
brain
715074dd10 Wait longer before sending data on the connect than on the accept
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6782 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-09 18:12:13 +00:00
brain
21f284647b Revert
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6781 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-09 18:06:33 +00:00
brain
eedb276bcb Test tweak to make it sync faster
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6780 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-09 17:59:00 +00:00
brain
ca7ac1c188 Different way of generating random string
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6779 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-09 17:48:52 +00:00
brain
54f4abc93d Give information in snomask +l to what type of auth was used
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6778 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-09 17:17:17 +00:00
brain
3a89c8e89e Handle non-hmac servers smarter without having to globally turn off hmac
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6777 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-09 17:11:33 +00:00
brain
7f00015727 Add config <options:disablehmac> to support disabling of HMAC, and tidy up 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-09 16:42:09 +00:00
brain
96798509ac Remove debug: This now works!
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-09 16:21:38 +00:00
brain
90566d23b1 I think we're almost there now
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6774 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-09 16:15:13 +00:00
brain
39361603e3 More fucking around
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6773 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-09 16:04:13 +00:00
brain
a22c47d19a This is likely fucked up beyond all recognition. Today is fubar day :p
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6772 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-09 15:55:06 +00:00
brain
8eec77bdde Debug, and we seem to be sending capab twice
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6771 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-09 15:34:14 +00:00
brain
4e6b5f4b56 Check against the HMAC challenge now: *UNTESTED*
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6770 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-09 15:24:43 +00:00
brain
fdecf7fb70 Add basic HMAC suggested by jilles to make the auth not suck -- this is 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-09 15:18:13 +00:00
brain
663a113180 Test code that pretends to send a hashed value if its got a challenge - 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-09 14:46:39 +00:00
brain
be36d92f3d Added ability to send and receive a challenge, dont do anything with it yet
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6767 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-09 14:07:18 +00:00
brain
4af9d41436 Add methods needed for storing challenge string
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6766 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-09 13:51:33 +00:00
brain
54b211e175 Make the max '3 dots' and not 2
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6765 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-08 22:36:32 +00:00
brain
b4ebbfad6f Fix to reinsert sockets into the list as read event
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6764 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-08 19:48:57 +00:00
brain
772dc6c474 Add support for solaris 10 IO Completion Ports, contributed by nenolod
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6763 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-08 18:08:20 +00:00
brain
feebd9bbc3 It might be slightly slower, but memset the array as we're using it as a 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-08 17:10:48 +00:00
brain
6357a5887e Should change the header too
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6761 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-08 17:04:50 +00:00
brain
d05aafc228 Make the lines wide enough to hold the new data
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6760 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-08 17:03:45 +00:00
brain
a772b4dbf5 Add licensing headers to files which are missing them and make sure they are 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-07 21:01:01 +00:00
brain
0a6adff4e0 Set the signals to 'quick exit' before the fork, not straight after, because theres a very slight chance of minor race condition if the child process sends kill() before we signal() otherwise.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6758 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-07 16:12:12 +00:00
brain
45d76881d8 Gorgonzola!
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6756 e03df62e-2008-0410-955e-edbf42e46eb7
v1.1.5
2007-04-06 21:19:58 +00:00