brain
4d941f1b7a
Move more stuff into class DNS
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4651 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-02 19:59:06 +00:00
brain
e00b5b82db
Comments, add more detail, remove dnsqueue.h include from tons of places
...
Remove THREADED_DNS defines from all over the place
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4629 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-01 23:26:11 +00:00
brain
e74bb16a4f
Stuff to make user host resolving use class Resolver - not tested yet
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4626 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-01 22:59:59 +00:00
brain
a5c9214743
Removed threaded dns (it might make a comeback some day, but as it stands its incompatible with the new OO resolver)
...
Migrated to new OO resolver, removed as much firedns craq as is safe to do so, operates over one file descriptor now and keyed against request id.
The only way to use the system is via class Resolver (so i'll need to migrate the rest of the ircd to use it)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4622 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-01 21:35:07 +00:00
brain
4488e47713
The IPV6 stuff compiles now, with compile-correct ipv6 code. I dont know if this works yet.
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4611 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-01 11:46:19 +00:00
brain
69ae63ecd2
Change stats recv/send to double, so they can hold truly massive numbers of transferred bytes (they would overflow after about 6 weeks on a busy net otherwise)
...
Fix some warnings
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4450 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-19 15:03:26 +00:00
brain
3a6885d6a1
* Seperate out socket engines into derived classes of SocketEngine.
...
* Add a classfactory SocketEngineFactory to create a new socketengine of the configured type
* Implement configure hax to compile only the required socketengine and the base class
* Eliminates ugly defines, and is more in line with C++ ways
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4439 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-19 12:51:21 +00:00
brain
5d18f26b6b
Fix case sensitive commands issue due to new std::string based parser, improve the craq disabled commands check that was potentially O(n) where n is the number of disabled commands (erk)
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4404 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-16 13:02:38 +00:00
brain
b3bab5a002
Disable test suite
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4399 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-16 02:16:10 +00:00
brain
654482dc4f
Improved this a lot
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4398 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-16 02:15:45 +00:00
brain
ef10f984fa
This should be faster, we read it like a stream now with GetToken until GetToken returns "".
...
The optimizations done by gcc means theres only one std::string constructor call per token, which is mmm yum.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4397 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-16 02:09:58 +00:00
brain
6ab0b94dce
irc::tokenstream is a token parser which using std::string and std::vector builds a list of tokens using irc parsing rules.
...
e.g.:
:arse PRIVMSG #chan :foo bar baz
becomes
a[0] = ":arse", a[1] = "PRIVMSG", a[2] = "#chan", a[3] = "foo bar baz".
*** SOMEONE *** needs to optimize this or at least verify its neatness (without making it total craq and unreadable). Feel free to mess with my code.
Any optimizations you make, run them against the COMMENTED OUT TEST SUITE at the top of main() in src/inspircd.cpp and ensure ALL output is the same
with no crashes. (note: if you comment out and build with the test suite, all inspircd will do is output test data and exit!)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4396 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-16 01:40:58 +00:00
brain
9e754af283
Final test.
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4375 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-12 19:36:39 +00:00
brain
90c8377bc8
Test
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4374 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-12 19:34:27 +00:00
brain
6f496589a2
Mirroring test
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4373 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-12 19:30:22 +00:00
brain
a7c61798a2
Test commit (this should be auto synched to staffbox)
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4372 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-12 19:28:31 +00:00
brain
6b1bf65aac
Test commit
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4371 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-12 19:24:15 +00:00
brain
b864f69ce9
Added class Resolver (needs testing)
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4353 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-12 12:20:36 +00:00
brain
0eaa647dcb
Fix my last broken commit
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4323 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-11 10:33:43 +00:00
brain
276b84df68
Move openSockfd[] into ServerConfig
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4322 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-11 10:03:09 +00:00
brain
dc42f264d7
relocate the Move* methods to private: where they belong, rename erase_factory and erase_module to be more appropriate EraseFactory and EraseModule methods
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4098 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-01 15:07:09 +00:00
brain
75eb9178d5
Make WritePID a public function of class InspIRCd
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4097 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-01 15:01:32 +00:00
brain
55de6781e0
Move SetSignals(), Start() and DaemonSeed() into private methods of class InspIRCd, move MakeLowerMap() into private: section
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4096 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-01 14:56:33 +00:00
special
9fc81392b3
Forward port of CullList and my bragging rights
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4087 e03df62e-2008-0410-955e-edbf42e46eb7
2006-06-29 15:35:42 +00:00
om
e0e96f0124
You don't need to cast a char* to a char* to put it through a const char*...
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4083 e03df62e-2008-0410-955e-edbf42e46eb7
2006-06-29 09:33:44 +00:00
om
6fa94ee369
Remove hardcoded filename prefix to log message, with the new macro these are un-needed.
...
Remove un-needed cast, ffs guys, templates stop you needing to cast the stuff inside them... So why do you do it anyway? :<
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4082 e03df62e-2008-0410-955e-edbf42e46eb7
2006-06-29 09:29:14 +00:00
brain
7eb84435ee
Return false was missing
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3928 e03df62e-2008-0410-955e-edbf42e46eb7
2006-05-03 09:23:47 +00:00
brain
858cc30b98
New header at the top of this file clarifying gplv2 only (we hadnt made it clear in this package before)
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3926 e03df62e-2008-0410-955e-edbf42e46eb7
2006-05-02 20:33:21 +00:00
brain
5d407fb44c
delete operator tracking in debug mode (using a macro -- live with it.)
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3904 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-24 13:28:07 +00:00
brain
162bbb0513
Fixes for lib dirs
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3889 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-20 16:59:28 +00:00
brain
67f111a8aa
Execinfo stuff
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3886 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-20 16:13:01 +00:00
om
aa21503f06
Shuffle some more includes around, const reference a few functions in inspircd.*
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3854 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-09 11:51:24 +00:00
om
d54fbc71e2
Split inspircd_io.* insp inspsocket.* and configreader.* with a few odd bits going into inspircd.*, doesn't look like I've broken anything... :P
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3847 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-08 17:05:48 +00:00
nenolod
ab24f0dca4
- first steps towards a working IPv6 port. I'll work more on this tomorrow. :-P
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3845 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-08 01:35:02 +00:00
om
e21c3bb140
Slight optimisation to config reader, looks nicer even if it's not faster.
...
Make ./inspircd script use -nolog (it already used -debug, which didn't exist until now!?)
Add commandline options -nolog and -debug, -debug forces all log messages to be output regardless of level. -nolog stops the logfile
being written, so you can run with -debug without filling up your disk.
make clean && make install, apparently some of the core doesn't depend on inspircd_io.h in the makefiles..so it'll probably segfault if
you don't.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3841 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-07 12:21:11 +00:00
w00t
a7b0c26a4c
Holy christ that was a LOT OF SPACES. TABS, USE THEM, LOVE THEM, APPRECIATE THEM - we now have no stupid spaces. This was mostly a mass find/replace, so some indentation may be stuffed. Minor issue, though.
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3838 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-06 02:25:20 +00:00
w00t
7db1335b25
trivial: Made a slight error on that last commit, missed a bit.
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3816 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-04 05:53:22 +00:00
brain
32ae5cb126
Test fixes for cpu eating issue
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3809 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-03 23:31:55 +00:00
brain
3a8f99c057
Bugfix for bug #101 being as the fix was just one simple line :)
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3751 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-25 12:10:39 +00:00
brain
0e962ce7dd
Stack overflow prevention allows deeper recursion
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3748 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-22 07:24:05 +00:00
brain
acf64694a6
Allow adding of new client ports via /REHASH.
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3731 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-18 18:31:03 +00:00
brain
1667f43351
Fix to warning line 218
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3723 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-16 18:46:59 +00:00
brain
5c3dd95446
Catch std::bad_alloc program wide (to catch out nazi sysadmins who restrict machines to small memory sizes, and expect things to still run fine :p)
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3722 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-16 18:09:04 +00:00
brain
60079fde5b
Obscure bug of the week: InspIRCd crashes when given more than 64 client ports to bind in the config file (yes, *REALLY*.)
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3701 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-13 13:51:44 +00:00
brain
949712aeba
Checks and stuff :p
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3671 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-11 18:18:06 +00:00
brain
3814121794
Re-enterant safety
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3666 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-11 17:38:49 +00:00
brain
4706227c0e
Removed lots of claptrap debug in a well tested old section of code
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3661 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-11 15:40:13 +00:00
brain
2b4af06e1c
Delete unknown sockets on sight
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3603 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-09 20:35:49 +00:00
brain
594f7f6c01
What MUPPET made stdin, stdout and stderr FILE* pointers rather than ints?!
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3532 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-07 22:16:41 +00:00
brain
9af07046bf
close stdin, stderr and stdout rather than freopen to /dev/null
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3531 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-07 22:15:36 +00:00