]>
git.netwichtig.de Git - user/henk/code/inspircd.git/log
brain [Wed, 31 Oct 2007 20:54:27 +0000 (20:54 +0000)]
Start to fix broken expiry
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8445
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Wed, 31 Oct 2007 20:14:52 +0000 (20:14 +0000)]
Use XLineFactory in ADDLINE, so that it can deal with anything the rest of the ircd knows about
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8444
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Wed, 31 Oct 2007 20:10:29 +0000 (20:10 +0000)]
Make it all compile.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8443
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Wed, 31 Oct 2007 19:51:03 +0000 (19:51 +0000)]
Fix up to pass User*
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8442
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Wed, 31 Oct 2007 19:37:07 +0000 (19:37 +0000)]
Forward decl
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8441
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Wed, 31 Oct 2007 19:36:38 +0000 (19:36 +0000)]
Remove all the OnAddGLine, OnAddWhateverLine replace with one simple OnAddLine and a OnDelLine which is passed User* (person adding or NULL if its the server) and the XLine
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8440
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Wed, 31 Oct 2007 19:31:51 +0000 (19:31 +0000)]
Add factories for other types
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8439
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Wed, 31 Oct 2007 19:26:26 +0000 (19:26 +0000)]
Add factories for eline and gline as tests
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8438
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Wed, 31 Oct 2007 19:15:12 +0000 (19:15 +0000)]
Implement: XLineManager::RegisterFactory, UnregisterFactory, GetFactory
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8437
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Wed, 31 Oct 2007 19:03:28 +0000 (19:03 +0000)]
Add XLineFactory stuff.
The idea is, a module or the core can register a class derived from XLineFactory. This class's job is to handle creation of an 'unknown' xline type given xline-specific mask data
(e.g. "*@host*" or any other such text) and a line type, currently char (i DO plan on changing this!!!). This way, spanningtree and friends can create an xline without knowing
its full details just by passing what all xlines share in common and a bit of semi-opaque metadata.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8436
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Wed, 31 Oct 2007 18:50:09 +0000 (18:50 +0000)]
Spanningtree now compiles
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8435
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Wed, 31 Oct 2007 18:06:54 +0000 (18:06 +0000)]
This one too, grr
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8434
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Wed, 31 Oct 2007 17:57:57 +0000 (17:57 +0000)]
Bloody hell, just how many modules use this shit
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8433
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Wed, 31 Oct 2007 17:46:57 +0000 (17:46 +0000)]
More fixes
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8432
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Wed, 31 Oct 2007 17:43:58 +0000 (17:43 +0000)]
Make /gline etc compile with new methods
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8431
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Wed, 31 Oct 2007 17:35:21 +0000 (17:35 +0000)]
More fixes and some optimizations
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8430
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Wed, 31 Oct 2007 17:30:18 +0000 (17:30 +0000)]
More stuff
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8429
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Wed, 31 Oct 2007 17:22:02 +0000 (17:22 +0000)]
Fixified some more
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8428
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Wed, 31 Oct 2007 17:00:23 +0000 (17:00 +0000)]
The rest doesnt compile yet, dont bother :p
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8427
e03df62e -2008-0410-955e-
edbf42e46eb7
w00t [Wed, 31 Oct 2007 15:53:03 +0000 (15:53 +0000)]
Reorder creation of objects so:
1) they are all done in the same place
2) calling InspIRCd::Exit() early on (before initialising a few things is done) doesn't crash us ;p
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8426
e03df62e -2008-0410-955e-
edbf42e46eb7
w00t [Wed, 31 Oct 2007 12:12:30 +0000 (12:12 +0000)]
Clean up XLine conf stuff a little bit, move most of it to configreader. 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
brain [Tue, 30 Oct 2007 22:49:46 +0000 (22:49 +0000)]
Add support for nick@server requested by many. We are not likely to backport this, cant actually find reference to it in rfc1459
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8424
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Mon, 29 Oct 2007 00:37:47 +0000 (00:37 +0000)]
A few more timesaving checks.
The more astute amongst you will have noticed all the Add?Line functions now look practically identical. This paves the way for us to have one generic one, but before we do this
i'd rather have us add an XLine* pointer to it, not a hostmask or something non-generic.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8423
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Mon, 29 Oct 2007 00:35:17 +0000 (00:35 +0000)]
Add the lookup_lines stuff. Sorry i havent documented this yet, i am tired.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8422
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Mon, 29 Oct 2007 00:24:29 +0000 (00:24 +0000)]
Big fat fixme here
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8421
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Mon, 29 Oct 2007 00:23:11 +0000 (00:23 +0000)]
Ok, now each xline will be in two places. The sorted vector and a map, each 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
brain [Mon, 29 Oct 2007 00:18:26 +0000 (00:18 +0000)]
Compile fixes
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8419
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Mon, 29 Oct 2007 00:15:10 +0000 (00:15 +0000)]
This commit is untested and breaks a lot of xline stuff. work in progress.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8418
e03df62e -2008-0410-955e-
edbf42e46eb7
w00t [Sun, 28 Oct 2007 21:37:22 +0000 (21:37 +0000)]
Make ELines cached, and check for ELined status in all the Matches for all 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
w00t [Sun, 28 Oct 2007 21:23:07 +0000 (21:23 +0000)]
Update User::exempt all the time we change an E:Line. Brain, can you check 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
brain [Sun, 28 Oct 2007 21:20:09 +0000 (21:20 +0000)]
YAR!
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8415
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Sun, 28 Oct 2007 21:17:43 +0000 (21:17 +0000)]
Fix it all up, im done with the main bit of this
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8414
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Sun, 28 Oct 2007 21:17:11 +0000 (21:17 +0000)]
Grr
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8413
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Sun, 28 Oct 2007 21:14:41 +0000 (21:14 +0000)]
Add Apply and DefaultApply.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8412
e03df62e -2008-0410-955e-
edbf42e46eb7
w00t [Sun, 28 Oct 2007 21:00:19 +0000 (21:00 +0000)]
Fixify
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8411
e03df62e -2008-0410-955e-
edbf42e46eb7
w00t [Sun, 28 Oct 2007 20:59:00 +0000 (20:59 +0000)]
Rewrite of XLineManager::ApplyLines to only apply pending lines. This ..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
brain [Sun, 28 Oct 2007 20:29:53 +0000 (20:29 +0000)]
I think this is done. Add overloaded Matches() which takes std::string and 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
w00t [Sun, 28 Oct 2007 19:54:36 +0000 (19:54 +0000)]
Move matches_qline to Matches, though this won't work properly .. :s
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8408
e03df62e -2008-0410-955e-
edbf42e46eb7
w00t [Sun, 28 Oct 2007 19:35:58 +0000 (19:35 +0000)]
Make E:Line/G:Line use the Matches stuff
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8407
e03df62e -2008-0410-955e-
edbf42e46eb7
w00t [Sun, 28 Oct 2007 19:32:23 +0000 (19:32 +0000)]
Make ZLine use Matches()
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8406
e03df62e -2008-0410-955e-
edbf42e46eb7
w00t [Sun, 28 Oct 2007 19:29:05 +0000 (19:29 +0000)]
Fix this to pass a User
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8405
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Sun, 28 Oct 2007 19:26:22 +0000 (19:26 +0000)]
Done my part
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8404
e03df62e -2008-0410-955e-
edbf42e46eb7
w00t [Sun, 28 Oct 2007 19:20:44 +0000 (19:20 +0000)]
Add a virtual Matches to XLine class, and override it appropriately for all 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
brain [Sun, 28 Oct 2007 19:07:06 +0000 (19:07 +0000)]
Forgot it should return false
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8402
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Sun, 28 Oct 2007 19:04:44 +0000 (19:04 +0000)]
Fixed w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8401
e03df62e -2008-0410-955e-
edbf42e46eb7
w00t [Sun, 28 Oct 2007 18:59:24 +0000 (18:59 +0000)]
Ignore this commit. *jedi mind trick*
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8400
e03df62e -2008-0410-955e-
edbf42e46eb7
w00t [Sun, 28 Oct 2007 18:44:49 +0000 (18:44 +0000)]
PERL PIE FOR ALL: Rename a fuckload of XLineManager's methods
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8399
e03df62e -2008-0410-955e-
edbf42e46eb7
w00t [Sun, 28 Oct 2007 18:33:06 +0000 (18:33 +0000)]
- Tear out a useless load of XLine clutters that did nothing much except 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
w00t [Sun, 28 Oct 2007 13:34:24 +0000 (13:34 +0000)]
Add m_proxyscan -- someone can doubtless do a much better job of this, as it's mostly a proof of concept at the moment. Opens a socket, sends a predefined string, awaits a predefined response. It sucks right now :p
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8397
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Sat, 27 Oct 2007 18:34:50 +0000 (18:34 +0000)]
Add dz to other contributors, line up columns
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8394
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Sat, 27 Oct 2007 15:38:27 +0000 (15:38 +0000)]
Dont echo the JOIN to the user whos speaking
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8393
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Sat, 27 Oct 2007 15:32:59 +0000 (15:32 +0000)]
Whoops loused up a tweak
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8392
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Sat, 27 Oct 2007 15:09:00 +0000 (15:09 +0000)]
Who flags now count as a wildcard for searching for privacy reasons, fixes bug #444 reported by Smartys
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8390
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Sat, 27 Oct 2007 14:36:52 +0000 (14:36 +0000)]
Whoops backwards
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8388
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Sat, 27 Oct 2007 14:31:58 +0000 (14:31 +0000)]
Fix for bug in windows with backslash directory seperators in config path when used with <include> tag and a relative include path, reported by daurnimator
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8386
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Sat, 27 Oct 2007 14:12:24 +0000 (14:12 +0000)]
Now plays nice with m_invisible, and fix a bug which allows users who havent spoken on a +D channel to remain invisible if they dont speak before an op removes the +D mode
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8385
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Sat, 27 Oct 2007 11:45:05 +0000 (11:45 +0000)]
Remove debug stuff
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8384
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Fri, 26 Oct 2007 23:22:35 +0000 (23:22 +0000)]
Fix crashes and broken code in connect:parent stuff that got broken with introduction of connect:limit and slight refactor
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8382
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Fri, 26 Oct 2007 21:14:14 +0000 (21:14 +0000)]
Document m_delayjoin
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8381
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Fri, 26 Oct 2007 21:10:20 +0000 (21:10 +0000)]
Fix a pretty silly goof-up
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8380
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Fri, 26 Oct 2007 21:00:03 +0000 (21:00 +0000)]
Typo
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8379
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Fri, 26 Oct 2007 20:53:37 +0000 (20:53 +0000)]
Whoops, must be const
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8378
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Fri, 26 Oct 2007 20:49:49 +0000 (20:49 +0000)]
Whoops, change Implements to use it
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8377
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Fri, 26 Oct 2007 20:48:58 +0000 (20:48 +0000)]
Add new event for this with gauranteed delivery of message BEFORE the text is sent out
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8376
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Fri, 26 Oct 2007 20:34:30 +0000 (20:34 +0000)]
Damnit! this should fix :p
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8375
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Fri, 26 Oct 2007 20:24:32 +0000 (20:24 +0000)]
Whoops, ballsed up the nameslist generation :p
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8374
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Fri, 26 Oct 2007 20:15:18 +0000 (20:15 +0000)]
Seems to work! Are you impressed, w00t? :p
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8373
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Fri, 26 Oct 2007 20:03:06 +0000 (20:03 +0000)]
Might work might not. dont know yet
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8372
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Fri, 26 Oct 2007 19:48:17 +0000 (19:48 +0000)]
Not complete yet, won't work!
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8371
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Thu, 25 Oct 2007 21:26:26 +0000 (21:26 +0000)]
Disable pedantic for this. Third party headers do silly stuff. long long?!
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8369
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Thu, 25 Oct 2007 21:21:13 +0000 (21:21 +0000)]
Document connect:limit
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8368
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Thu, 25 Oct 2007 21:07:15 +0000 (21:07 +0000)]
I was wrong its in one place :p
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8367
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Thu, 25 Oct 2007 21:05:58 +0000 (21:05 +0000)]
Tidy up
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8366
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Thu, 25 Oct 2007 21:03:50 +0000 (21:03 +0000)]
More dots!!!
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8365
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Thu, 25 Oct 2007 21:00:53 +0000 (21:00 +0000)]
Take out craq i forgot
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8364
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Thu, 25 Oct 2007 20:56:14 +0000 (20:56 +0000)]
Forgot these two lines that prevent duplicate make install/deinstall lines
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8363
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Thu, 25 Oct 2007 20:51:58 +0000 (20:51 +0000)]
Make install list list automatically generated from build targets and provide facility for installing extra files.
Using this, cert.pem and key.pem are only copied to the conf dir if you enabled an ssl module.
Also, this provides facility for a 'make deinstall' which should be safe for use in all situations as it always specifies a file by name and never uses wildcards to rm.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8362
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Thu, 25 Oct 2007 19:57:30 +0000 (19:57 +0000)]
Errr, who did this? :p
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8361
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Thu, 25 Oct 2007 15:55:26 +0000 (15:55 +0000)]
If the connect:limit is 0, dont deny connections for going over it
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8360
e03df62e -2008-0410-955e-
edbf42e46eb7
w00t [Thu, 25 Oct 2007 15:45:35 +0000 (15:45 +0000)]
Brain, look at this pls :p
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8359
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Thu, 25 Oct 2007 15:25:32 +0000 (15:25 +0000)]
this should fix any of the crashes w00t outlined where User::MyClass == NULL.
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
w00t [Wed, 24 Oct 2007 22:52:51 +0000 (22:52 +0000)]
Implement <connect:limit> - limits how many clients can sit inside a <connect> tag. Brain, we have a problem here in that if we User::QuitUser() a user with a NULL MyClass member (connect class), then things break (like sendq et al). What should we do with this, create a generic catchall class or something just in case? (to replicate, set up a single connect class with a low limit, and connect too many clients. Crash is the result)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8357
e03df62e -2008-0410-955e-
edbf42e46eb7
w00t [Wed, 24 Oct 2007 19:16:40 +0000 (19:16 +0000)]
Remove that goto, capt'n
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8356
e03df62e -2008-0410-955e-
edbf42e46eb7
w00t [Wed, 24 Oct 2007 19:12:45 +0000 (19:12 +0000)]
Disable all connect classes, reenable them as we find them in the config. This stops users using a connect class removed from the conf (or will in a second)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8355
e03df62e -2008-0410-955e-
edbf42e46eb7
w00t [Wed, 24 Oct 2007 18:56:24 +0000 (18:56 +0000)]
Finish reference counting connect class stuff. Now rehash removes unused classes (refcount == 0), and re-reads any new shit (or ones that just got removed) from the config.
Possibly todo in the future: make /rehash update classes that exist in memory, make /rehash mark classes removed from conf (but still exist as refcount > 0) as inactive.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8354
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Wed, 24 Oct 2007 18:45:17 +0000 (18:45 +0000)]
Remove variadic macros from sqlv2 api, removing the warnings that come with it and increasing compatibility
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8353
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Wed, 24 Oct 2007 18:12:24 +0000 (18:12 +0000)]
Last of the -pedantic fixes. Seems we were all good with -pedantic from the start :) Just seemed that -Wall -Wextra enables moron warnings.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8352
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Wed, 24 Oct 2007 18:09:18 +0000 (18:09 +0000)]
Tidyups
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8351
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Wed, 24 Oct 2007 18:05:44 +0000 (18:05 +0000)]
Pedantic safety
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8350
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Wed, 24 Oct 2007 18:03:36 +0000 (18:03 +0000)]
Pedantic clean
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8349
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Wed, 24 Oct 2007 17:46:57 +0000 (17:46 +0000)]
-pedantic good, -Wextra bad. read g++ manpage :)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8348
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Wed, 24 Oct 2007 16:54:44 +0000 (16:54 +0000)]
/usr/local/include/openssl/pqueue.h:73: error: ISO C++ does not support `long long'
/usr/local/include/openssl/pqueue.h:80: error: ISO C++ does not support `long long'
/usr/local/include/openssl/pqueue.h:89: error: ISO C++ does not support `long long'
^^ openssl broken too, set $NoPedantic
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8347
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Wed, 24 Oct 2007 16:08:29 +0000 (16:08 +0000)]
Some constructors dont initialize the refcount, namely, the one thats usually called :P
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8346
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Wed, 24 Oct 2007 16:04:09 +0000 (16:04 +0000)]
Whoops forgot this
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8345
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Wed, 24 Oct 2007 15:51:08 +0000 (15:51 +0000)]
Obnoxious -pedantic warnings
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8344
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Wed, 24 Oct 2007 15:48:00 +0000 (15:48 +0000)]
Try this w00t, compiles, test running now
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8343
e03df62e -2008-0410-955e-
edbf42e46eb7
w00t [Wed, 24 Oct 2007 15:12:10 +0000 (15:12 +0000)]
Start of refcount-based rehash stuff for <connect> tags, this is broken and rather ugly right now..
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8342
e03df62e -2008-0410-955e-
edbf42e46eb7
brain [Wed, 24 Oct 2007 15:07:24 +0000 (15:07 +0000)]
Theres no need to check the address of a stack declared array for NULL, thanks darix
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8340
e03df62e -2008-0410-955e-
edbf42e46eb7
w00t [Tue, 23 Oct 2007 23:54:24 +0000 (23:54 +0000)]
Move some stuff from using userrec cached stuff to using stuff in the connect classes
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8339
e03df62e -2008-0410-955e-
edbf42e46eb7
w00t [Tue, 23 Oct 2007 23:31:40 +0000 (23:31 +0000)]
Fix a bug before I even started this.. don't let User::SetClass() decrease the reference count if we cannot find the new class to plop them into, that will nark things up nicely..
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8338
e03df62e -2008-0410-955e-
edbf42e46eb7