w00t
2b68243097
InspSocket -> BufferedSocket. Paves the way for a SimpleSocket class which ident etc will use.
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8206 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-15 21:04:32 +00:00
w00t
03e0fb206d
InspTimer -> Timer
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8205 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-15 21:03:30 +00:00
w00t
b57c7f4e46
In the grand tradition of huge fucking commits:
...
- chanrec -> Channel
- userrec -> User
Enjoy.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8204 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-15 20:59:05 +00:00
w00t
694e307c09
class command_t -> class Command. Whey :D
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8203 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-15 20:55:55 +00:00
special
2be86e1958
Fixed bug #404 ; this was caused by recieving multiple OPERTYPEs from a remote server, which eventually resulted in bad pointers inside the all_opers list
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8084 e03df62e-2008-0410-955e-edbf42e46eb7
2007-09-26 23:49:15 +00:00
brain
6a02f84272
Remove InspIRCd::DoOneIteration, throwback to software threading (lulz)
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8065 e03df62e-2008-0410-955e-edbf42e46eb7
2007-09-23 19:19:14 +00:00
w00t
b2b7bfd5e9
This may not compile, I'll test it on my desktop. Waiting 20 minutes for a build is unacceptable.
...
- Move UUID initialisation to InspIRCd::InitialiseUID()
- Call it if we run out of existing UUIDs
- Call it on startup
Just a small cleanup.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8007 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-31 19:37:22 +00:00
om
8394be69a0
Move everything module-related out of InspIRCd and into ModuleManager, there is a ModuleManager instantiated as InspIRCd::Modules. Several of the function names have changed slightly as well. e.g. Instance->FindModule(m_foobar.so); is now Instance->Modules->Find(m_foobar.so);
...
All modules in the core distribution should also be updated in line with these changes.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7985 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-28 23:32:41 +00:00
w00t
7d241d39ff
Document the need for the fake client
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7944 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-28 13:50:04 +00:00
w00t
d5d692037e
Oops. This is supposed to be a public member
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7939 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-28 13:23:47 +00:00
w00t
5ee7322040
Add a global fake client to class InspIRCd used instead of instantiating a fake client every time a mode needs to be forced through, etc
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7938 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-28 13:20:11 +00:00
brain
90ee2ee38c
Add FindNickOnly, that wont fall through to uid checks if isdigit(*first). We may need this. (i thought we did for this fix, we dont)
...
Fix cmd_nick to not treat all nicks as invalid and make the client give up.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7883 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-27 13:54:15 +00:00
brain
0ba4b96bba
Allocate uid in userrec constructor. Optional param added, if its empty, the server allocates one, if its not empty the user gets the one given
...
(this is used for remote users)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7873 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-27 11:24:43 +00:00
w00t
0c9434cde9
Add InspIRCd::FindUUID() methods. Currently, these work off an iteration around the whole client list. This sucks, and will be changed to a map the same as FindNick(). Also update FindNick's docs a little out of anal habit: it returns a user, not a nick. :)
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7855 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-27 01:01:20 +00:00
w00t
1075956100
Add skeleton functions for UID stuff.
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7845 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-26 23:07:06 +00:00
brain
443b0f9645
Raft of fixes so that inspircd can call Cleanup() and Exit() in less 'stable' circumstances, e.g. when half initialized, and it wont segfault.
...
Also fix OpenLog to not always exit on error, but to return a bool instead, which is much more friendly on rehash (you don't want /REHASH dieing your server if you cant write the log!)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7804 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-23 19:57:02 +00:00
w00t
b42e3e0578
Remove an un-needed define while I poke around in here
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7693 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-09 19:49:01 +00:00
brain
27d4ea0d97
Move a bunch of stuff around for tidyness, win32 functions keep creeping into #ifdef'ed chunks in non-win32 files
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7588 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-27 16:45:03 +00:00
brain
6344881c9f
Move a ton of stuff into caller* functors
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7578 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-26 16:36:37 +00:00
peavey
0bb707c10c
Un-static InspIRCd::Exit and use SignalHandler instead.
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7572 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-25 20:23:18 +00:00
peavey
eadd5cce87
Rehash from console works again due to new signalhandler. TODO: Use this to catch SIGTERM and exit cleanly.
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7571 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-25 19:46:25 +00:00
brain
529f16e84b
Shorthand macros DEFINE_HANDLER1()...DEFINE_HANDLER9() to save on defining functor classes that just implement Call()
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7569 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-25 17:36:13 +00:00
brain
89bc1282b9
Turn IsIdent into a functor
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7568 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-25 17:21:30 +00:00
brain
f827df8403
Add stuff for functors. Currently, as a test case only InspIRCd::IsNick has been 'functorized'
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7564 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-25 16:58:56 +00:00
peavey
77b0de3fed
Begin move of rehash to server.cpp - broken rehash from cmdline for now.
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7563 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-25 15:07:27 +00:00
peavey
326191cd16
Put FileLogger in it's own class. Useful when logging doing more focused logging
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7561 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-25 11:53:07 +00:00
w00t
c88d4a3511
Replace some voodoo with a define
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7556 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-24 20:21:29 +00:00
w00t
52525bc3df
And remove it from the header..
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7543 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-24 15:03:34 +00:00
brain
f12fd5382f
Fix crash on unload of modules with listening sockets -- some situations require that the socket cull list is purged *immediately*, provide facility for this.
...
Also squish some silly error output on unloading spanningtree.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7529 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-23 23:10:16 +00:00
peavey
f2acdbc382
OOPS! We try again, since I'm smoking craq. LF is 0x0a NOT CR.
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7456 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-16 17:30:04 +00:00
peavey
bab14f0dd2
'svn propset -R svn:eol-style CR *' Set to UNIX-style always. Binaries are auto skipped by svn.
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7454 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-16 17:14:45 +00:00
brain
3669319748
Comment stuff that lacks it
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7378 e03df62e-2008-0410-955e-edbf42e46eb7
2007-06-17 18:53:27 +00:00
pippijn
67e055124d
Some general syntax cleanups.
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7304 e03df62e-2008-0410-955e-edbf42e46eb7
2007-06-14 17:22:37 +00:00
brain
c2993f666f
Sexeger!
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7241 e03df62e-2008-0410-955e-edbf42e46eb7
2007-06-05 17:39:36 +00:00
brain
d396355d3e
Refactored InspIRCd::Duration(). The leetcode now lives!
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7237 e03df62e-2008-0410-955e-edbf42e46eb7
2007-06-05 16:49:06 +00:00
brain
75f82deb87
Excess flood tidyups
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7230 e03df62e-2008-0410-955e-edbf42e46eb7
2007-06-04 17:31:31 +00:00
brain
f43281da9e
I think this was the source of burlex's confusion with the spanningtree propogation bug and a warning in vc8 -- CallCommandHandler returned BOOL?! Yet its casting that bool somehow from a CmdResult.
...
It should be CmdResult. Fixed.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7101 e03df62e-2008-0410-955e-edbf42e46eb7
2007-05-21 19:35:07 +00:00
brain
d7324a55fa
Space indents must die.
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7049 e03df62e-2008-0410-955e-edbf42e46eb7
2007-05-19 18:08:57 +00:00
w00t
9cf56d917d
Windows support. Tested and working to compile on freebsd and linux. Next 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-05-19 15:56:42 +00:00
w00t
432b306797
Remove some stuff deprecated since 1.0
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6985 e03df62e-2008-0410-955e-edbf42e46eb7
2007-05-11 20:00:20 +00:00
brain
bfcaef8623
Refactor port binding, warning not yet tested fully
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6982 e03df62e-2008-0410-955e-edbf42e46eb7
2007-05-11 18:38:00 +00:00
brain
37a53f1ac6
Make error reporting work properly, it seemed to loose errors.
...
First change: Add a culling list of inspsockets waiting to be closed, so the close() is less likely to be called before the buffer is entirely empty. This seems to work well on my LAN.
Second change: Add a SendError() method, rather than WriteLine("ERROR : ..."). This can be used to effect by also echoing out "Sent ERROR to %s: ..." onto the +l snomask meaning at least one end
will always see the error even if the ERROR command is lost due to latency or design of the transport (e.g. ssl which may be writing during a read event etc)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6844 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-26 16:51:41 +00:00
brain
f9110f02e7
We had to roll our own time function because some craqsmoker thought having a carriage return on the end of ctime and asctime was a great idea, and the only other solution is to fanny around with
...
strftime.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6749 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-06 19:18:08 +00:00
brain
821a5bca88
Fix for bug #199 (Feature request) submitted by owine. Ended up adding an extra parameter to <uline> for this.
...
It turned into a biggie :P
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6742 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-05 23:53:01 +00:00
brain
f505e1821b
Add -config parameter to bin/inspircd which allows a user to specify the config file on the commandline
...
Note: This should really be a full pathname, and not a configuration file in the current directory.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6726 e03df62e-2008-0410-955e-edbf42e46eb7
2007-04-01 18:34:19 +00:00
brain
ce4a4abaf2
Fix bug reported by darix where inspircd process returns 15 for successful startup rather than the correct 0
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6715 e03df62e-2008-0410-955e-edbf42e46eb7
2007-03-26 16:23:55 +00:00
peavey
8b8923d155
Rebuild 005 on rehash. Tracker: bug #234
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6617 e03df62e-2008-0410-955e-edbf42e46eb7
2007-03-03 00:24:04 +00:00
brain
49369545e3
Stuff to make dns work protocol-independent
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6506 e03df62e-2008-0410-955e-edbf42e46eb7
2007-02-05 23:43:44 +00:00
peavey
9a52a66716
Move quitting of clients to a central Cull List, and do quitting outside userrec and in main loop.
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6497 e03df62e-2008-0410-955e-edbf42e46eb7
2007-02-05 20:08:51 +00:00
peavey
f1d7e1e544
Have ConvNumeric correctly convert 0 to 0 instead of an empty string.
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6278 e03df62e-2008-0410-955e-edbf42e46eb7
2007-01-09 04:15:10 +00:00