summaryrefslogtreecommitdiff
path: root/include/xline.h
AgeCommit message (Collapse)Author
2007-10-31More stuffbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8429 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-31Fixified some morebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8428 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-31The rest doesnt compile yet, dont bother :pbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8427 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-31Clean up XLine conf stuff a little bit, move most of it to configreader. ↵w00t
Also, check elines and call ApplyLines on both rehash and startup. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8425 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-29Add the lookup_lines stuff. Sorry i havent documented this yet, i am tired.brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8422 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-29Ok, now each xline will be in two places. The sorted vector and a map, each ↵brain
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
2007-10-29This commit is untested and breaks a lot of xline stuff. work in progress.brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8418 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-28Fix it all up, im done with the main bit of thisbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8414 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-28Grrbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8413 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-28Add Apply and DefaultApply.brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8412 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-28Rewrite of XLineManager::ApplyLines to only apply pending lines. This ↵w00t
..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
2007-10-28I think this is done. Add overloaded Matches() which takes std::string and ↵brain
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
2007-10-28Make ZLine use Matches()w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8406 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-28Add a virtual Matches to XLine class, and override it appropriately for all ↵w00t
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
2007-10-28Ignore this commit. *jedi mind trick*w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8400 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-28PERL PIE FOR ALL: Rename a fuckload of XLineManager's methodsw00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8399 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-28- Tear out a useless load of XLine clutters that did nothing much except ↵w00t
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
2007-10-15In the grand tradition of huge fucking commits:w00t
- chanrec -> Channel - userrec -> User Enjoy. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8204 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-16OOPS! We try again, since I'm smoking craq. LF is 0x0a NOT CR.peavey
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7456 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-16'svn propset -R svn:eol-style CR *' Set to UNIX-style always. Binaries are ↵peavey
auto skipped by svn. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7454 e03df62e-2008-0410-955e-edbf42e46eb7
2007-06-17I think we're done adding comments to headers. Phew.brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7385 e03df62e-2008-0410-955e-edbf42e46eb7
2007-06-14Fix for bug #324 reported by HiroPbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7303 e03df62e-2008-0410-955e-edbf42e46eb7
2007-05-19Space indents must die.brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7049 e03df62e-2008-0410-955e-edbf42e46eb7
2007-05-19Windows support. Tested and working to compile on freebsd and linux. Next ↵w00t
step is to make sure it actually works in windows too. ;p. Add Burlex to contributors. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7043 e03df62e-2008-0410-955e-edbf42e46eb7
2007-01-04Massive speedups for applying and checking perm xlines - matches_*line() now ↵brain
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
2006-12-15And now, just to force you to recompile the *whole* ircd.. updated headers ↵w00t
on the headers. :p git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5998 e03df62e-2008-0410-955e-edbf42e46eb7
2006-11-14Tons of tweaks to the config stuff for the corebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5744 e03df62e-2008-0410-955e-edbf42e46eb7
2006-09-19Make the check against z/k/q/e/g methods return a pointer to the whole ↵brain
object rather than just the reason string git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5305 e03df62e-2008-0410-955e-edbf42e46eb7
2006-09-19Fix crashes, and in the process make xline even faster!brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5304 e03df62e-2008-0410-955e-edbf42e46eb7
2006-09-19Make xline more memory-efficient and faster/neater. Eliminate a mass of ↵brain
fixed-size buffer and strlcpy git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5300 e03df62e-2008-0410-955e-edbf42e46eb7
2006-09-11Fix for picky compilers (see, I work sometimes ;p)w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5218 e03df62e-2008-0410-955e-edbf42e46eb7
2006-09-10Split hostmasks into ident and host pairs for matching as g/k/e lines. This ↵brain
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
2006-09-10Match IP's with klines, glines and exceptions, as well as hostsbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5201 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-31Remove extra/wrong qualifications, makes GCC 4.1 (at least) dieom
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5088 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-30Remove a ton of <typeinfo>, <iostream>, <sstream> etc that we usually never usebrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5081 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-12Document some missing xline stuffbrain
Document the variants of SocketEngine for epoll, kqueue and select git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4905 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-11Document XLineManagerbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4897 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-11Move all of the xline stuff into class XLineManager, make an instance of it ↵brain
in class InspIRCd and use it (eliminates another extern) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4878 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-09Tidy up loglevel enum (remove some C-ish defines)brain
change ServerConfig to pass a pointer to 'this' to Validation etc functions git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4811 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-30REMOTE STATS! WOOO AND YAY!brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4596 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-01Change WriteChannelWithServ and it's _NoFormat to take a const char* ↵om
servername rather than char* - although it doesn't seem to be used :< Lose some more casts in m_spanningtree, unneeded because of above changes Make xline_set_creation_time() take const char* rather than char* for it's first parameter, lose more casts in spanningtree because of this Make do_whois take a const char* rather chan char* nick, lose yet more casts git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4095 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-10Mass tidyup of ServerConfig::Read and stuffbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3634 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-08Checks to not propogate invalid or already-existing Xlinesbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3143 e03df62e-2008-0410-955e-edbf42e46eb7
2006-01-15Updated copyrights in headers etc using perl inplace editbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2795 e03df62e-2008-0410-955e-edbf42e46eb7
2005-12-14Added parameter to apply_lines to indicate what we want to applybrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2391 e03df62e-2008-0410-955e-edbf42e46eb7
2005-12-08Optimized (much faster, more efficient, less cpu usage)brain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2269 e03df62e-2008-0410-955e-edbf42e46eb7
2005-11-25Fixes for removal of serverrecbrain
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@1946 e03df62e-2008-0410-955e-edbf42e46eb7
2005-05-12Changed the type of struct whowas records are stored in (no need to waste a ↵brain
big heavy userrec) git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@1369 e03df62e-2008-0410-955e-edbf42e46eb7
2005-04-13Added Server::AddGLinebrain
Added Server::AddKLine Added Server::AddZLine Added Server::AddQLine Added Server::AddELine Added Server::DelGLine Added Server::DelKLine Added Server::DelZLine Added Server::DelQLine Added Server::DelELine Added Server::Duration git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@1071 e03df62e-2008-0410-955e-edbf42e46eb7
2005-04-04Added E:Lines, a form of ban exception that can prevent opers, netadmins etc ↵brain
from being glined. Can be added and removed either in the config or by an oper with the correct permissions to use the /ELINE command git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@975 e03df62e-2008-0410-955e-edbf42e46eb7