aboutsummaryrefslogtreecommitdiff
path: root/src/command_parse.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Nuke trailing spacesGravatar peavey2009-02-141-5/+3
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11105 e03df62e-2008-0410-955e-edbf42e46eb7
* Update copyrights for 2009.Gravatar w00t2009-01-021-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10932 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix a comment too.Gravatar w00t2008-12-271-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10920 e03df62e-2008-0410-955e-edbf42e46eb7
* Use std::set instead of std::map needlessly.Gravatar w00t2008-12-271-4/+4
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10919 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix naming convention to be consistant. (cmd_ -> Command)Gravatar w00t2008-12-151-2/+2
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10891 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix silly oversight discovered by tra26 (thanks!) where the core tries to ↵Gravatar brain2008-12-081-1/+11
| | | | | | handle hash providers other than plaintext by direct string comparison, allowing someone to oper up by specifying the md5 sum of an md5 password, etc! git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10870 e03df62e-2008-0410-955e-edbf42e46eb7
* Move stuff to use ASCII map where required.Gravatar w00t2008-12-071-1/+1
| | | | | | Also move this out of being a member totally, as it breaks (gah) and is already untidy.. to be revisited. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10858 e03df62e-2008-0410-955e-edbf42e46eb7
* Remove lines_in and reset_due flood protection mechanism, recvq/sendq on ↵Gravatar w00t2008-12-011-24/+0
| | | | | | | | their own now fill this role, as we have proper penalties. This tidies up *a lot* of code, and also saves a further sizeof(time_t) + sizeof(unsigned int) per user. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10838 e03df62e-2008-0410-955e-edbf42e46eb7
* Remove m_operflood, add privs: users/flood/no-throttle & ↵Gravatar w00t2008-12-011-1/+1
| | | | | | | | users/flood/increased-buffers. This also saves another sizeof(bool) per user. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10837 e03df62e-2008-0410-955e-edbf42e46eb7
* Remove OverPenalty, saves sizeof(bool) per user.Gravatar w00t2008-12-011-2/+0
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10836 e03df62e-2008-0410-955e-edbf42e46eb7
* This was never supposed to be invoked on /rehash, only startup.. so move it ↵Gravatar w00t2008-11-021-30/+11
| | | | | | to startup only. Also remove (redundant) user arg. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10792 e03df62e-2008-0410-955e-edbf42e46eb7
* Leak fix on /rehashGravatar w00t2008-11-021-1/+7
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10787 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix a compiler warning about a redefinition of some symbol.Gravatar psychon2008-10-301-1/+1
| | | | | | | Does nobody else read compiler warnings? Oo git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10751 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix for "unknown commands" w/ m_abbreviation, thanks dz for making me ↵Gravatar w00t2008-10-291-4/+15
| | | | | | understand this. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10749 e03df62e-2008-0410-955e-edbf42e46eb7
* Explain the duplicate OnPreCommand call.Gravatar w00t2008-10-251-0/+4
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10717 e03df62e-2008-0410-955e-edbf42e46eb7
* By moving OnPreCommand call in two places, modules (even with unverified ↵Gravatar w00t2008-10-251-8/+10
| | | | | | commands) can still recieve the command with max_params at most if it exists. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10716 e03df62e-2008-0410-955e-edbf42e46eb7
* Add optional max_params for commands, which means that we can compress ↵Gravatar w00t2008-10-251-0/+37
| | | | | | 'extra' params, while still accepting ':' terminated params, etc. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10715 e03df62e-2008-0410-955e-edbf42e46eb7
* Add <disabled:fakenonexistant> - ircd will pretend that a disabled command ↵Gravatar w00t2008-08-271-1/+10
| | | | | | just doesn't exist (for austnet), document <disabled:usermodes> and <disabled:chanmodes> (bad aquanight.) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10327 e03df62e-2008-0410-955e-edbf42e46eb7
* nuke some debug not needed anymoreGravatar peavey2008-08-231-2/+0
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10226 e03df62e-2008-0410-955e-edbf42e46eb7
* Match with the right args at least..Gravatar w00t2008-08-221-1/+3
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10218 e03df62e-2008-0410-955e-edbf42e46eb7
* match() is no longer a function+no header, now a static method of InspIRCd ↵Gravatar w00t2008-08-211-2/+1
| | | | | | class, blah blah blah. Also rip out the 1.2 matcher, as it was slow, and replace it with one adapted from znc, which happens to be a tiny bit faster than 1.1's (and the fastest I've seen so far that works properly) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10212 e03df62e-2008-0410-955e-edbf42e46eb7
* Remove last vestige of libircdfoo, by changing tag into a single ↵Gravatar w00t2008-07-291-1/+1
| | | | | | identifier marking object as requiring compilation into a .o (minor commit) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10076 e03df62e-2008-0410-955e-edbf42e46eb7
* 304 -> RPL_SYNTAXGravatar brain2008-07-201-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10052 e03df62e-2008-0410-955e-edbf42e46eb7
* More conversion, and a note to client coders.Gravatar w00t2008-07-131-6/+6
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10011 e03df62e-2008-0410-955e-edbf42e46eb7
* m_abbreviation completed. :)Gravatar brain2008-06-061-6/+6
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9845 e03df62e-2008-0410-955e-edbf42e46eb7
* Update commentGravatar w00t2008-05-201-4/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9778 e03df62e-2008-0410-955e-edbf42e46eb7
* char -> std::string conversionGravatar w00t2008-05-201-2/+2
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9777 e03df62e-2008-0410-955e-edbf42e46eb7
* Convert connection::hostGravatar brain2008-05-191-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9768 e03df62e-2008-0410-955e-edbf42e46eb7
* Make User:: nick/ident/dhost/fullname and some other things std::string ↵Gravatar aquanight2008-05-181-14/+14
| | | | | | instead of char*/char[] (MODULES DO NOT COMPILE) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9748 e03df62e-2008-0410-955e-edbf42e46eb7
* Add sanity checks to LoopCall to prevent miscalls like this by broken 3rd ↵Gravatar brain2008-05-051-0/+6
| | | | | | party modules git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9643 e03df62e-2008-0410-955e-edbf42e46eb7
* *param.c_str() -> param[0]Gravatar brain2008-05-041-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9612 e03df62e-2008-0410-955e-edbf42e46eb7
* < MAXPARAMETERS for the size() check here can now be <= insteadGravatar brain2008-05-041-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9611 e03df62e-2008-0410-955e-edbf42e46eb7
* Conversion of command handler params from "const char* const* parameters, ↵Gravatar brain2008-05-041-53/+43
| | | | | | | | | | int pcnt" to "const std::vector<std::string>& parameters". All of core is converted, but cant test it till the modules are converted. IMPORTANT: The mode parser public calls have had to be tweaked a bit to also use the string vector. Note that this makes a LOT of our core a bit messy and paves the way to convert a lot of stuff from the mess of .c_str() calls to using std::string params directly. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9608 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix RemoveCommands to remove all commands (this function had some really odd ↵Gravatar brain2008-04-201-12/+3
| | | | | | removal logic?) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9554 e03df62e-2008-0410-955e-edbf42e46eb7
* Apply patches to remove 200-odd dll limit on windows, made by GreenReaper, ↵Gravatar brain2008-04-181-1/+2
| | | | | | lots of thanks! git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9533 e03df62e-2008-0410-955e-edbf42e46eb7
* Wheeee for HUGE commits. Convert all numerics to WriteNumeric so that ↵Gravatar brain2008-03-221-7/+7
| | | | | | OnNumeric can capture them. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9175 e03df62e-2008-0410-955e-edbf42e46eb7
* Convert remaining InspIRCd::Log() calls to new logging systemGravatar aquanight2008-02-221-4/+4
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9001 e03df62e-2008-0410-955e-edbf42e46eb7
* Wheee, mass commit! this adds const stafety, throwing a compile error if ↵Gravatar brain2008-02-201-4/+4
| | | | | | | | | anyone does: "parameters[n] = blahvar;" in a command handler etc. where they REALLY SHOULD NOT fuck with the value and should copy the pointer. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8971 e03df62e-2008-0410-955e-edbf42e46eb7
* Seems trivial now, looking at it. Still to test then will commit to trunk.Gravatar brain2008-02-201-2/+0
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8969 e03df62e-2008-0410-955e-edbf42e46eb7
* Seperate USERIO into USERINPUT and USEROUTPUTGravatar brain2008-02-171-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8949 e03df62e-2008-0410-955e-edbf42e46eb7
* Add -Wshadow to cflags, and fix a bunch of warnings that come with it. Add a ↵Gravatar w00t2008-02-111-1/+1
| | | | | | note to webirc that needs looking at. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8892 e03df62e-2008-0410-955e-edbf42e46eb7
* Add a printf-type override for LogManager::Log(). We need to find a way to ↵Gravatar w00t2008-02-091-1/+1
| | | | | | see if a log call would have any interest, to avoid unnecessary printf() here though. Convert a bunch of stuff to using new logging (added targets: USERS, USERIO) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8860 e03df62e-2008-0410-955e-edbf42e46eb7
* Change API OnOperCompare to OnPassCompare, password hashing is now available ↵Gravatar aquanight2008-01-271-2/+2
| | | | | | for <connect:allow>, <power die= restart=>, <title> (m_customtitle.so), <vhost> (m_vhost.so), this works the same was as for <oper>: load m_password_hash.so (after all hasher modules, of course), and add hash="md5/sha256/whatever" to the relevant tag. Also fix m_callerid.cpp crashing on unload. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8755 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix.. snomask O is already taken (ffs) so use A insteadGravatar w00t2008-01-171-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8729 e03df62e-2008-0410-955e-edbf42e46eb7
* Remove InspIRCd::WriteOpers in favour of snomask OGravatar w00t2008-01-171-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8728 e03df62e-2008-0410-955e-edbf42e46eb7
* Two stage commit: don't set user->muted except in QuitUser (duplicate ↵Gravatar w00t2008-01-161-5/+3
| | | | | | setting), also, change muted to drop all socket operations instead of just not reading the user's buffer if muted is set (no point wasting time - they're going away). Also revert culllist back to once per mainloop iteration now it is much cheaper than previously. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8716 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix a stupid crash on unknown commands caused by me blindly applying a 1.1 ↵Gravatar w00t2008-01-151-2/+5
| | | | | | patch.. doesn't affect 1.1 git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8710 e03df62e-2008-0410-955e-edbf42e46eb7
* Header update: 2007 -> 2008Gravatar w00t2008-01-101-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8694 e03df62e-2008-0410-955e-edbf42e46eb7
* Don't send 421 to unregistered clients, per RFC (thanks nenolod)Gravatar w00t2008-01-081-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8661 e03df62e-2008-0410-955e-edbf42e46eb7
* this should fix any of the crashes w00t outlined where User::MyClass == NULL.Gravatar brain2007-10-251-14/+19
| | | | | | | | The simplest fix seems to be that if the user has no class, skip all the code that uses the class values. This makes sense because the only situation where User::MyClass == NULL is when they arent authorised to connect and are being quit so checking flood levels and max sendq etc are irrelevent. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8358 e03df62e-2008-0410-955e-edbf42e46eb7