aboutsummaryrefslogtreecommitdiffstats
path: root/src/xline.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Ok, now each xline will be in two places. The sorted vector and a map, each ↵Gravatar brain2007-10-291-5/+5
| | | | | | | | | line type having its own map stored in a map of maps. (RTFS when its done) This allows for faster checking for simple existence of a line for removal/adding without O(n) lookups git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8420 e03df62e-2008-0410-955e-edbf42e46eb7
* This commit is untested and breaks a lot of xline stuff. work in progress.Gravatar brain2007-10-291-189/+99
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8418 e03df62e-2008-0410-955e-edbf42e46eb7
* Make ELines cached, and check for ELined status in all the Matches for all ↵Gravatar w00t2007-10-281-25/+34
| | | | | | the linetypes. Brain, SVN up before you overwrite my fixes to bits of this again :P git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8417 e03df62e-2008-0410-955e-edbf42e46eb7
* Update User::exempt all the time we change an E:Line. Brain, can you check ↵Gravatar w00t2007-10-281-4/+28
| | | | | | I've done this okay, and fix my XXX if you know how? ta. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8416 e03df62e-2008-0410-955e-edbf42e46eb7
* YAR!Gravatar brain2007-10-281-82/+3
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8415 e03df62e-2008-0410-955e-edbf42e46eb7
* GrrGravatar brain2007-10-281-5/+5
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8413 e03df62e-2008-0410-955e-edbf42e46eb7
* Add Apply and DefaultApply.Gravatar brain2007-10-281-0/+39
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8412 e03df62e-2008-0410-955e-edbf42e46eb7
* FixifyGravatar w00t2007-10-281-4/+4
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8411 e03df62e-2008-0410-955e-edbf42e46eb7
* Rewrite of XLineManager::ApplyLines to only apply pending lines. This ↵Gravatar w00t2007-10-281-56/+94
| | | | | | ..doesn't seem to compile at the moment for me. Not tested, at all. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8410 e03df62e-2008-0410-955e-edbf42e46eb7
* I think this is done. Add overloaded Matches() which takes std::string and ↵Gravatar brain2007-10-281-1/+21
| | | | | | implement it in zline and qline, the rest dont need it git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8409 e03df62e-2008-0410-955e-edbf42e46eb7
* Move matches_qline to Matches, though this won't work properly .. :sGravatar w00t2007-10-281-1/+4
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8408 e03df62e-2008-0410-955e-edbf42e46eb7
* Make E:Line/G:Line use the Matches stuffGravatar w00t2007-10-281-16/+20
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8407 e03df62e-2008-0410-955e-edbf42e46eb7
* Make ZLine use Matches()Gravatar w00t2007-10-281-4/+4
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8406 e03df62e-2008-0410-955e-edbf42e46eb7
* Done my partGravatar brain2007-10-281-3/+4
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8404 e03df62e-2008-0410-955e-edbf42e46eb7
* Add a virtual Matches to XLine class, and override it appropriately for all ↵Gravatar w00t2007-10-281-7/+39
| | | | | | derived classes. Most still need to be converted to use it, however. This will make ApplyLines change much easier than it is currently .. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8403 e03df62e-2008-0410-955e-edbf42e46eb7
* Forgot it should return falseGravatar brain2007-10-281-0/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8402 e03df62e-2008-0410-955e-edbf42e46eb7
* Fixed w00tGravatar brain2007-10-281-0/+4
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8401 e03df62e-2008-0410-955e-edbf42e46eb7
* PERL PIE FOR ALL: Rename a fuckload of XLineManager's methodsGravatar w00t2007-10-281-24/+24
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8399 e03df62e-2008-0410-955e-edbf42e46eb7
* - Tear out a useless load of XLine clutters that did nothing much except ↵Gravatar w00t2007-10-281-378/+144
| | | | | | | | | | | confuse things - Revert back to early 1.0 design of using a single list for line storage. We'll make this work more efficiently than 1.0 though of course. This simplifies the code for expiry, checking, etc. - Merge a bunch of sort callbacks into a single sort callback for class XLine. - Horribly break apply_lines() for the time being. .. and that's probably it. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8398 e03df62e-2008-0410-955e-edbf42e46eb7
* Remove the need for a bunch of the hard coded arrays/hashes by scanning the ↵Gravatar brain2007-10-221-0/+2
| | | | | | src/ dir for tag comments, like in modules git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8307 e03df62e-2008-0410-955e-edbf42e46eb7
* In the grand tradition of huge fucking commits:Gravatar w00t2007-10-151-28/+28
| | | | | | | | - chanrec -> Channel - userrec -> User Enjoy. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8204 e03df62e-2008-0410-955e-edbf42e46eb7
* Remove more unnecessary header trafficGravatar w00t2007-08-271-2/+0
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7887 e03df62e-2008-0410-955e-edbf42e46eb7
* Convert some ancient GlobalCulls usage into userrec::QuitUserGravatar w00t2007-07-241-16/+16
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7534 e03df62e-2008-0410-955e-edbf42e46eb7
* OOPS! We try again, since I'm smoking craq. LF is 0x0a NOT CR.Gravatar peavey2007-07-161-1/+897
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7456 e03df62e-2008-0410-955e-edbf42e46eb7
* 'svn propset -R svn:eol-style CR *' Set to UNIX-style always. Binaries are ↵Gravatar peavey2007-07-161-897/+1
| | | | | | auto skipped by svn. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7454 e03df62e-2008-0410-955e-edbf42e46eb7
* Optimizations and code tidyups. QA please check that svsnick and other ↵Gravatar brain2007-07-011-2/+2
| | | | | | forced nick changes still work right after this git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7416 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix for bug #324 reported by HiroPGravatar brain2007-06-141-36/+72
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7303 e03df62e-2008-0410-955e-edbf42e46eb7
* Add options:moronbanner. Yes really, thats what its called. See the example ↵Gravatar brain2007-06-041-0/+16
| | | | | | config. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7232 e03df62e-2008-0410-955e-edbf42e46eb7
* Fixed hidebans behavior to not always be on as well; there are probablyother ↵Gravatar special2007-03-151-8/+32
| | | | | | issues here, see #243 git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6674 e03df62e-2008-0410-955e-edbf42e46eb7
* This properly fixes options:hidebans and options:hidesplits by providing the ↵Gravatar brain2007-03-061-9/+9
| | | | | | | | | facility to have two different quit messages for a user, one an oper sees and one a normal user sees. There are default values on the oper_quit parameters through the entire source so that if oper_quit parameter is not given it defaults to the same as the user_quit git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6630 e03df62e-2008-0410-955e-edbf42e46eb7
* Move quitting of clients to a central Cull List, and do quitting outside ↵Gravatar peavey2007-02-051-30/+21
| | | | | | userrec and in main loop. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6497 e03df62e-2008-0410-955e-edbf42e46eb7
* It says something about how excessive our debug output is when the ssl ↵Gravatar brain2007-01-171-4/+0
| | | | | | modules have 'cascades' of 'if-then-else' whos job is ONLY to output debug! git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6365 e03df62e-2008-0410-955e-edbf42e46eb7
* If we have a bitmask of 0 in apply_lines, dont even bother to run the function!Gravatar brain2007-01-101-0/+3
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6291 e03df62e-2008-0410-955e-edbf42e46eb7
* Massive speedups for applying and checking perm xlines - matches_*line() now ↵Gravatar brain2007-01-041-64/+157
| | | | | | | | | has a permonly optional param, and apply_lines can be passed an APPLY_LOCAL_ONLY. Also, improve speed of config reading stuff when reading in the lines git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6223 e03df62e-2008-0410-955e-edbf42e46eb7
* Jesus, look who's the commit whore today. More header updates, and removal ↵Gravatar w00t2006-12-151-8/+3
| | | | | | of namespacing. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5996 e03df62e-2008-0410-955e-edbf42e46eb7
* Tons of tweaks to the config stuff for the coreGravatar brain2006-11-141-12/+12
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5744 e03df62e-2008-0410-955e-edbf42e46eb7
* Show ident when expiring g and k linesGravatar brain2006-11-041-3/+3
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5645 e03df62e-2008-0410-955e-edbf42e46eb7
* Update expiries when we update the set timeGravatar brain2006-09-191-0/+4
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5306 e03df62e-2008-0410-955e-edbf42e46eb7
* Make the check against z/k/q/e/g methods return a pointer to the whole ↵Gravatar brain2006-09-191-30/+30
| | | | | | object rather than just the reason string git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5305 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix crashes, and in the process make xline even faster!Gravatar brain2006-09-191-131/+141
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5304 e03df62e-2008-0410-955e-edbf42e46eb7
* Make xline more memory-efficient and faster/neater. Eliminate a mass of ↵Gravatar brain2006-09-191-66/+11
| | | | | | fixed-size buffer and strlcpy git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5300 e03df62e-2008-0410-955e-edbf42e46eb7
* Remove unused buffer and call to MakeHost()Gravatar brain2006-09-101-2/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5205 e03df62e-2008-0410-955e-edbf42e46eb7
* Make /stats k/g/e work rightGravatar brain2006-09-101-6/+6
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5204 e03df62e-2008-0410-955e-edbf42e46eb7
* Split hostmasks into ident and host pairs for matching as g/k/e lines. This ↵Gravatar brain2006-09-101-36/+99
| | | | | | allows them to be matched faster and more efficiently git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5203 e03df62e-2008-0410-955e-edbf42e46eb7
* Fix the new g/k/e line stuff to match ips. NOTE: this makes g/k/e much ↵Gravatar brain2006-09-101-6/+20
| | | | | | slower than z. By factors of about 3. If you want to match tons of users, as always use zline (for this and many other reasons) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5202 e03df62e-2008-0410-955e-edbf42e46eb7
* Match IP's with klines, glines and exceptions, as well as hostsGravatar brain2006-09-101-13/+13
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5201 e03df62e-2008-0410-955e-edbf42e46eb7
* Wahhhhhhhhhhhh bwahahaha. Mass commit to tidy up tons of messy include listsGravatar brain2006-08-301-15/+0
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5080 e03df62e-2008-0410-955e-edbf42e46eb7
* The rest of snomask +x (i think)Gravatar brain2006-08-291-5/+5
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5068 e03df62e-2008-0410-955e-edbf42e46eb7
* Just to mess with om's head, remove helperfuncs.h from everywhereGravatar brain2006-08-111-1/+1
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4900 e03df62e-2008-0410-955e-edbf42e46eb7
* Change to using Instance->Log (InspIRCd::Log) rather than log() macroGravatar brain2006-08-111-4/+4
| | | | git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4880 e03df62e-2008-0410-955e-edbf42e46eb7