summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2006-07-07 14:22:55 +0000
committerbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2006-07-07 14:22:55 +0000
commit4cb72aee7374889ce3f11a0ff516ac716c16b5b7 (patch)
treec929ac7dec07f0d288c73b98d5184c06fe335c02 /src
parent598aedf098347155dfd589c0040b9ddf190a6d29 (diff)
Added cmode_s, skeleton mode handler for channel mode +s.
The naming convention for this dir is as follows: cmode_* -> channel modes umode_* -> user modes. Case sensitive mode letters on the end of the name such as cmode_s etc. Note, this dir can only hold the core RFC modes, so we won't get name collisions e.g. S and s. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4123 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'src')
-rw-r--r--src/modes/Makefile2
-rw-r--r--src/modes/cmode_s.cpp19
2 files changed, 20 insertions, 1 deletions
diff --git a/src/modes/Makefile b/src/modes/Makefile
index 10afd15d8..35ec4b915 100644
--- a/src/modes/Makefile
+++ b/src/modes/Makefile
@@ -3,7 +3,7 @@ CC = i am cornholio
CXXFLAGS = -I../../include ${FLAGS}
all: ../../include/base.h ../../include/modules.h ../../include/inspircd.h ../../include/channels.h ../../include/users.h ../../include/globals.h ../../include/inspircd_config.h ../../include/mode.h $(CPPFILES)
- $(CC) -pipe -export-dynamic -c $(CPPFILES)
+ $(CC) -pipe $(CXXFLAGS) -export-dynamic -c $(CPPFILES)
ar r modeclasses.a *.o
ranlib modeclasses.a
diff --git a/src/modes/cmode_s.cpp b/src/modes/cmode_s.cpp
new file mode 100644
index 000000000..16c446eec
--- /dev/null
+++ b/src/modes/cmode_s.cpp
@@ -0,0 +1,19 @@
+#include "inspircd.h"
+#include "mode.h"
+#include "channels.h"
+#include "users.h"
+
+class ModeChannelSecret : public ModeHandler
+{
+ public:
+ ModeChannelSecret() : ModeHandler('s', 0, 0, 0, MODETYPE_CHANNEL, false)
+ {
+ }
+
+ ModeAction OnModeChange(userrec* source, userrec* dest, chanrec* channel, std::string &parameter, bool adding)
+ {
+ channel->modes[CM_SECRET] = adding;
+ return MODEACTION_ALLOW;
+ }
+};
+