50 Commits

Author SHA1 Message Date
brain
cd712c40e1 ...because every now and again, i have to do a massive commit.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12248 e03df62e-2008-0410-955e-edbf42e46eb7
2010-01-11 03:07:32 +00:00
danieldg
3cd1a24a51 Remove mode counter, not reliable and only used for umode +i
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12246 e03df62e-2008-0410-955e-edbf42e46eb7
2010-01-09 17:48:40 +00:00
danieldg
8ab1381e8d Add ParamChannelModeHandler
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12134 e03df62e-2008-0410-955e-edbf42e46eb7
2009-11-15 18:26:44 +00:00
danieldg
df37ab42f4 Hide channel mode structures
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12132 e03df62e-2008-0410-955e-edbf42e46eb7
2009-11-15 18:26:25 +00:00
danieldg
17cc3b8490 Create m_halfop
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11997 e03df62e-2008-0410-955e-edbf42e46eb7
2009-11-03 17:12:36 +00:00
danieldg
b868bb52c5 Get rid of ModePair
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11963 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-24 03:29:58 +00:00
danieldg
ee913368d7 Change IS_FAKE and CheckTimeStamp to IS_SERVER and ResolveModeConflict to clarify their use
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11765 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-26 16:40:58 +00:00
danieldg
6d03943426 Remove InspIRCd* parameters and fields
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11763 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-26 14:13:13 +00:00
danieldg
7892c8a031 Replace OnAccessCheck with OnPreMode to remove a number of redundant checks
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11700 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-13 20:31:23 +00:00
danieldg
3d8ec5dbd9 Remove "servermode" parameter, replace with IS_FAKE() which is more reliable
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11633 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-02 00:49:24 +00:00
danieldg
fbe8169b82 Use CheckTimeStamp to merge modes on netburst
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11596 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-02 00:44:06 +00:00
psychon
b6dbd6caab Update all wiki links to point to the new wiki. This was done automatically with the following command, only .Makefile.inc got some indent fixups by hand.
for file in $(find -type f -and -not -path '*/.svn/*' -and -not -name '*.so') ; do sed -e 's#http://www.inspircd.org/wiki#http://wiki.inspircd.org#' -e 's#http://wiki.inspircd.org/index.php/#http://wiki.inspircd.org/#' -i $file ; done


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11223 e03df62e-2008-0410-955e-edbf42e46eb7
2009-03-15 12:42:35 +00:00
w00t
43847ec9c7 Update copyrights for 2009.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10932 e03df62e-2008-0410-955e-edbf42e46eb7
2009-01-02 18:16:05 +00:00
brain
db7a49b071 Move all the parameters around AGAIN. See docs shortly
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10364 e03df62e-2008-0410-955e-edbf42e46eb7
2008-08-31 13:00:12 +00:00
brain
985c2bd1e6 Add OnParameterMissing to modehandler, called when the mode handler should have a parameter, but the parser found none
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10149 e03df62e-2008-0410-955e-edbf42e46eb7
2008-08-17 16:16:49 +00:00
w00t
f610b723f0 Move umode_n to umode_s, second half of last commit
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10075 e03df62e-2008-0410-955e-edbf42e46eb7
2008-07-29 16:36:10 +00:00
w00t
5db3290d93 After discussions and thought, move umode +n to +s. This increases cross-ircd compat (both charybdis and unreal use +s for snomasks, others might in the future). This also decreases complexity for new users, and removes the redundancy. This means that just +s +cC for example will be required to view connects. (files to be renamed in next commit to not confuse svn).
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10074 e03df62e-2008-0410-955e-edbf42e46eb7
2008-07-29 16:28:37 +00:00
brain
0376f1d8be Convert to SimpleUserModeHandler and SimpleChannelModeHandler
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9599 e03df62e-2008-0410-955e-edbf42e46eb7
2008-05-01 19:56:16 +00:00
brain
57608fe351 Fixes for bug #493, tidyups to clearing of channel modes on losing FJOIN. Module unloads may also be tidied at a future date but it means reordering some loops in mode.cpp. See around the comment added.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9283 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-02 23:53:29 +00:00
brain
32a26fa539 Someone please help me fix the warnings in modules caused by this change. All mode handler OnMode events, ModeWatcher::BeforeMode/AfterMode, plus OnRawMode now have a bool servermode parameter
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8964 e03df62e-2008-0410-955e-edbf42e46eb7
2008-02-18 16:55:27 +00:00
w00t
e4acbc95b8 Header update: 2007 -> 2008
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8694 e03df62e-2008-0410-955e-edbf42e46eb7
2008-01-10 13:27:07 +00:00
w00t
b57c7f4e46 In the grand tradition of huge fucking commits:
- chanrec -> Channel
 - userrec -> User
Enjoy.

git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8204 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-15 20:59:05 +00:00
brain
644c5992ca Proper fix for end-of-list numerics on restricted lists in bug #386, rather than a hackish nonmodular one.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7838 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-26 21:01:04 +00:00
peavey
f2acdbc382 OOPS! We try again, since I'm smoking craq. LF is 0x0a NOT CR.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7456 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-16 17:30:04 +00:00
peavey
bab14f0dd2 'svn propset -R svn:eol-style CR *' Set to UNIX-style always. Binaries are auto skipped by svn.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7454 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-16 17:14:45 +00:00
brain
5e9a6b9186 Add counter system for umodes to get rid of some O(n)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6163 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-29 23:34:47 +00:00
w00t
a7cbd51d45 Still more massive commit fun. Headers in include/ still to be done, else that's it.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5997 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-15 22:03:27 +00:00
brain
26e4582c2e Actually make +ovhk removable with DelMode (just in case somebody wants to, or we have need to in the future)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5112 e03df62e-2008-0410-955e-edbf42e46eb7
2006-09-02 17:40:33 +00:00
brain
8b864c8a82 Mode handlers handling listmodes where a listmode item is a nickname can now specify prefixes!!!!!!
This isnt documented yet.


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4997 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-23 20:20:41 +00:00
brain
ff5376b7b6 Document base modes
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4908 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-12 01:22:26 +00:00
brain
f9636a2eff So much stuff changed in this one, i forgot most of it.
Oh yeah, main thing is ModeHandler and ModeWatcher classes now take an InspIRCd* to their constructor


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4858 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-10 22:40:57 +00:00
brain
a1f073f66f Change std::pair<bool,std::string> to neater typedef "ModePair"
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4557 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-27 19:40:47 +00:00
brain
98a92e20f1 Mode merging during FJOIN with ourts==theirts. Only +k and +l have CheckTimestamp methods atm, needs to be finished by me and TIDIED.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4556 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-27 17:59:20 +00:00
brain
f4d202cdbb Add extra method to mode handler, ModeHandler::ModeSet().
Returns a std::pair<bool,string>.
if the bool is true, the mode is set, and the second item in the pair is the parameter set on it, if any
If the bool is false, the mode is not set, and the parameter given is returned as the second item of the pair

To be used in mode bouncing, to build a safe set of bounced modes (dont ask yet)


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4549 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-26 21:54:36 +00:00
w00t
2816a3ff87 - Add usermode +n for notice masks - our implementation of snomasks. We're not sure how this will tie in with +s yet.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4274 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-10 15:20:41 +00:00
brain
4fa01bc07b Implement DisplayList virtual method calls, and implement it in cmode_b
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4185 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-08 19:46:55 +00:00
brain
9fb4cb8d33 Add usermode +o, with special checking so that an oper may only remove the mode not set it (on himself or others) -
Finish off facility for oper-only user and channel modes


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4183 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-08 18:37:01 +00:00
brain
d40e1e5b0b Added usermodes +swi.
Note the usermode system needs a bit of a refactor to combine
module and core modes into the same storage neatly (as we did 
with channels) this is next on my todo.


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4174 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-08 17:04:18 +00:00
brain
56917208cd Add cmode +v - that's all the RFC channel modes done now
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4172 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-08 16:46:05 +00:00
brain
2d4621658d Add support for cmode +h
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4170 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-08 16:10:34 +00:00
brain
2f32d64790 Add cmode +o (op/deop) and in the process change a lot of char* to const char* to avoid unneccessary casts
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4165 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-08 15:05:33 +00:00
brain
4260fd6227 Add channelmode +l
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4163 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-08 14:20:25 +00:00
brain
abe417a809 Add chmode +k, cut down includes in use in mode.cpp
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4162 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-08 14:03:05 +00:00
brain
40320969da Add support for channelmode +i
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4159 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-07 22:55:47 +00:00
brain
7f4ee2f9f2 Add channel modes +n and +t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4156 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-07 22:46:35 +00:00
brain
21480d6f65 Move BanItem into the class
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4152 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-07 21:51:33 +00:00
brain
adb17635ee Added cmode_m (channel mode +m)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4141 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-07 20:03:17 +00:00
brain
8f9d0a68cd Mode +b stuff, probably wont work yet
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4133 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-07 17:37:20 +00:00
brain
2d27d1f9f4 Add cmode_p (private)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4131 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-07 15:35:36 +00:00
brain
2d05d8bc33 Header for cmode_s.cpp
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4124 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-07 14:31:05 +00:00