6973 Commits

Author SHA1 Message Date
brain
703ff06290 Whoops, ballsed up the nameslist generation :p
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8374 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-26 20:24:32 +00:00
brain
d22271ed97 Seems to work! Are you impressed, w00t? :p
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8373 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-26 20:15:18 +00:00
brain
371030bca7 Might work might not. dont know yet
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8372 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-26 20:03:06 +00:00
brain
7a2a85535c Not complete yet, won't work!
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8371 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-26 19:48:17 +00:00
brain
5b45b2ceaa 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
2007-10-25 21:26:26 +00:00
brain
4f1c564a08 Document connect:limit
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8368 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-25 21:21:13 +00:00
brain
34df2c0d94 I was wrong its in one place :p
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8367 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-25 21:07:15 +00:00
brain
52941397f8 Tidy up
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8366 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-25 21:05:58 +00:00
brain
0117b824f2 More dots!!!
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8365 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-25 21:03:50 +00:00
brain
aaff467643 Take out craq i forgot
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8364 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-25 21:00:53 +00:00
brain
da79274a2d 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
2007-10-25 20:56:14 +00:00
brain
a9d2342f6a 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
2007-10-25 20:51:58 +00:00
brain
01241d4574 Errr, who did this? :p
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8361 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-25 19:57:30 +00:00
brain
905b594ca2 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
2007-10-25 15:55:26 +00:00
w00t
656d2f265c Brain, look at this pls :p
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8359 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-25 15:45:35 +00:00
brain
393c1afdd7 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
2007-10-25 15:25:32 +00:00
w00t
7b3105e5d4 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
2007-10-24 22:52:51 +00:00
w00t
f2d6214247 Remove that goto, capt'n
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8356 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-24 19:16:40 +00:00
w00t
d5ee2584e1 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
2007-10-24 19:12:45 +00:00
w00t
3dfdda08a0 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
2007-10-24 18:56:24 +00:00
brain
475f5579b5 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
2007-10-24 18:45:17 +00:00
brain
56123af167 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
2007-10-24 18:12:24 +00:00
brain
e227454065 Tidyups
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8351 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-24 18:09:18 +00:00
brain
58e4aa3a8c Pedantic safety
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8350 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-24 18:05:44 +00:00
brain
2ab88037d8 Pedantic clean
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8349 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-24 18:03:36 +00:00
brain
57f0a0ffb9 -pedantic good, -Wextra bad. read g++ manpage :)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8348 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-24 17:46:57 +00:00
brain
6ac3f63ce0 /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
2007-10-24 16:54:44 +00:00
brain
3c4730c34f 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
2007-10-24 16:08:29 +00:00
brain
acee8cf888 Whoops forgot this
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8345 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-24 16:04:09 +00:00
brain
5b329bf110 Obnoxious -pedantic warnings
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8344 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-24 15:51:08 +00:00
brain
fa04fb00cf Try this w00t, compiles, test running now
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8343 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-24 15:48:00 +00:00
w00t
5d6d076cc3 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
2007-10-24 15:12:10 +00:00
brain
beedfa3ce6 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
2007-10-24 15:07:24 +00:00
w00t
5b80dc83fd 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
2007-10-23 23:54:24 +00:00
w00t
c43805606f 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
2007-10-23 23:31:40 +00:00
w00t
0b98824cc5 Some more class stuff, blah. Now possible to move a user to a different class via User::SetClass(), which cmd_oper uses. GetClass() is now just a wrapper around User::MyClass. User::CheckClass() does not support any parameters anymore, nor does User::GetClass().. I think I have this all right ;p
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8337 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-23 23:25:49 +00:00
w00t
bbb7c9eec5 Some initial work towards tying <connect> classes to user accounts. This will (in the longer term) allow for things like limits on how many users can fit in a <connect> for 1.2
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8336 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-23 23:07:24 +00:00
brain
532bf47678 Make clean should clean the socketengine objects
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8335 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-23 22:41:14 +00:00
brain
308314fc31 Windows socket engine tweaks
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8334 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-23 22:35:36 +00:00
brain
541b12871a Windows socket engine tweaks
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8333 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-23 22:34:58 +00:00
brain
cbb8fda4a7 Move socketengines into their own dir. This was all w00t's idea, but i told him no because i didnt think it would work. Now ive done it myself :P ner ner ne ner ner :)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8332 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-23 22:30:25 +00:00
brain
71e400674f -Wall is still required, too
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8331 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-23 22:10:18 +00:00
brain
bfa8e627a1 -W -> -Wextra
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8330 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-23 22:08:57 +00:00
brain
1db092e08e This now works properly with $NoPedantic macro.
Question: where did all the 'unused parameter' warnings vanish to???


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8329 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-23 22:07:47 +00:00
brain
c8389f594d Roll back to 8323, the -pedantic switch thing totally breaks building the way i implemented it here :p
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8328 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-23 21:50:09 +00:00
brain
89a2c99405 Needs a bit more again
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8327 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-23 21:43:54 +00:00
brain
f34b16edd7 And fix it.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8326 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-23 21:39:10 +00:00
brain
cd9b790e48 Add $NoPedantic build macro, for m_mysql because mysql AB dont know how to code :p
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8325 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-23 21:36:33 +00:00
brain
6720b7bccb Visual studio doesnt like throw definitions like this
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8324 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-23 21:05:01 +00:00
brain
2e1f86fd0c All of insp now builds with -pedantic (theres some warnings to squash in modules, and in spanningtree, but its all 'unused parameter').
I suggest we actually go through and satisfy these unused parameter errors for two reasons:
(1) it acts as a strong compiler hint leading to better optimization
(2) it will give us a good clue of what parameters are NEVER used and should therefore be removed from use (like i just did with AddMode)


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8323 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-23 21:00:35 +00:00