summaryrefslogtreecommitdiff
path: root/src/mode.cpp
Commit message (Expand)AuthorAgeFilesLines
* Use ServiceProvider for inter-module dependencies•••This will stop dependency chains from preventing module reloads when it is not actually needed; however, it removes some failsafes that will need to be reimplemented in order to avoid unmapped vtables. This deprecates Request as an inter-module signaling mechanism, although SQL still uses it. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12140 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-11-161-1/+1
* Add Inspircd::AddServices•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12135 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-11-151-2/+3
* Add ParamChannelModeHandler•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12134 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-11-151-0/+19
* Add ModeHandler* versions of channel mode access•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12133 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-11-151-5/+0
* Create m_halfop•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11997 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-11-031-8/+0
* Remove AllowHalfop item from server config•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11996 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-11-031-2/+2
* Get rid of ModePair•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11963 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-10-241-46/+0
* Change User::oper to an OperInfo reference•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11945 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-10-211-1/+1
* Clean up some log messages•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11917 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-10-191-1/+1
* Close files opened by configreader•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11915 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-10-191-3/+4
* Make classbase and refcountbase uncopyable; expand comments on their indended...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11888 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-10-171-3/+6
* Add ModeHandler::cull() for auto-deletion, fixes call of virtual method on pa...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11883 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-10-171-6/+10
* Clean up crash on destruction of statics at exit•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11877 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-10-161-1/+2
* Add m_namedmodes that adds pseudo-listmode Z that shows and manipulates modes...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11876 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-10-151-12/+7
* Remove Command and ModeHandler objects in their destructors; fixes possible p...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11872 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-10-131-16/+1
* Add names for all modes (part 1 of named channel mode list)•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11809 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-10-081-2/+2
* Make builtin modes static to eliminate confusing destructor exception•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11801 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-10-051-37/+46
* Deny TR_NICK mode changes with an invalid nick parameter•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11800 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-10-051-0/+6
* Run DelMode and DelModeWatcher in RemoveModule•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11799 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-10-051-3/+20
* Fix valgrind issues and crashes on exit•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11794 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-10-021-1/+1
* Change IS_FAKE and CheckTimeStamp to IS_SERVER and ResolveModeConflict to cla...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11765 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-261-2/+2
* Remove InspIRCd* parameters and fields•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11763 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-261-21/+21
* Properly spacify opertypes in error messages. Patch by dKingston•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11724 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar special2009-09-141-1/+1
* Fix access checks on chanprotect preventing use of SAMODE•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11717 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-131-14/+26
* Translate TR_NICK back from UID on mode parse•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11716 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-131-1/+8
* Remove redundant ServerInstance* fields•••It has been impossible to have more than one InspIRCd* object in the same address space for some time now, and this feature was never used. This formalizes class InspIRCd as a singleton object. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11703 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-131-4/+1
* Simplify ModeHandler constructor•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11701 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-131-64/+30
* 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 Gravatar danieldg2009-09-131-6/+1
* Module API changes to use Membership* where sensible•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11699 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-131-1/+1
* Membership* changes•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11697 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-131-81/+11
* Change SAMODE to source from the acting user, not the server•••This is a merge of the OOMODE command into SAMODE. This fixes SAMODE not working because of mode merging. An additional access check for umode changes is added for this command. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11647 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-021-10/+9
* Rip out VisData in preparation for replacing it with more flexible hooks•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11640 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-021-6/+0
* ModResult conversion: Change return type of all module functions•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11634 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-021-11/+11
* 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 Gravatar danieldg2009-09-021-20/+16
* Add Module* creator to Command and ModeHandler•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11631 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-021-18/+2
* Valgrind cleanup: deallocate RFC modes, clientlist, and uuidlist•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11614 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-021-2/+21
* Use CheckTimeStamp to merge modes on netburst•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11596 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-021-3/+10
* Rework mode parser into slightly smaller chunks•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11594 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-021-383/+263
* Replace std::deque with std::vector in spanningtree and related modules•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11593 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-09-021-1/+2
* Makefile updates: clean up command lines•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11395 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-06-011-3/+0
* Show correct server source to users on FTOPIC and FMODE•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11380 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-05-131-1/+1
* Use server source for RemoveMode, fixes bug #838•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11316 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-04-181-1/+1
* Update all wiki links to point to the new wiki. This was done automatically w...•••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 Gravatar psychon2009-03-151-1/+1
* Follow-up fix to r11081. Escalate minimum privileges from '%' to '@' if halfo...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11212 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar peavey2009-03-131-2/+4
* Correctly fill LastParseParams on servermode. Fixes bug 763, thanks Ankit•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11187 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-03-091-1/+1
* m_override: fix messages on multi-mode changes•••This fixes bug 664 git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11186 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-03-081-0/+3
* Include explicit parameter list in ProtocolInterface::SendMode•••Also leave the strings split into deque, there's no need to pack it into a string just to unpack it during the translate. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11181 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-03-071-5/+8
* Construct explicit parameter type list for MODE parameters•••Previously, we used TR_SPACENICKLIST on the parameters. This worked only because usually, if anything in the list parsed as a nick, then it was a nick. However, some modes like +k and +g allow free-form text, which could also resolve as a nick. Add extra parameters to allow modes to specify their TranslateType, defaulting to TR_TEXT. This fixes bug #757, found by Taros git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11180 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar danieldg2009-03-061-4/+12
* Remove/Add cmode h according to <option:allowhalfop>. Fixes bug #715 reported...•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11081 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar peavey2009-02-111-21/+8
* Update copyrights for 2009.•••git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10932 e03df62e-2008-0410-955e-edbf42e46eb7 Gravatar w00t2009-01-021-1/+1