burlex
e51c8a5cf6
* Fixed some incorrect declarations in IOCPEngine
...
* Fixed the virtual socket wrapper functions in IOCPEngine {these should really be inlined on unix}
* Fixed several compilation issues under Win32
* Fixed calls to close() which should've been changed to SE->Close()
+ Added a crashdump saving system to Win32 builds. Dumps are saved in the format of dump-<exename>-<year>-<month>-<day>-<hour>-<minute>-<second>.dmp in the working directory. Enabled by default, undefine ENABLE_CRASHDUMPS to disable.
+ Added m_operflood, this is a module I've had lying around for some time but some users may like it as it allows unreal-like behaviour without increasing flood limits for non-opers.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8015 e03df62e-2008-0410-955e-edbf42e46eb7
2007-09-04 12:36:05 +00:00
brain
297f19c005
Document all this shit!
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7811 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-23 22:17:20 +00:00
brain
d0d36795e8
Craquity craq De-craq!
...
This is probably broken on windows, do not attempt to use there yet unless you like broken stuff. Cant say for sure as i havent even tried to build yet and most likely wont tonight.
--- Abstract most of the berkely socket API out into SocketEngine derived classes. SocketEngine base class implements standard berkely sockets that 'real mens systems' like linux
and freebsd have. For socketengine_iocp we implement the windows specific nonesense like the special things needed for udp and accept (ick).
All this to eliminate a bunch of ifdefs.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7810 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-23 22:06:04 +00:00
brain
dab5de9885
Fixed, i forgot the virtual when implementing this
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7725 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-15 21:26:36 +00:00
brain
5adcfa35c2
Windows specific data types in EventHandler are now Extensible items
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7599 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-27 19:26:27 +00:00
brain
17d318c9de
Removal of some ifdefs
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7598 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-27 18:16:09 +00:00
brain
ac3af8b61e
Some smart tricks to eliminate win32 ifdefs that are creeping into portable files
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7589 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-27 16:50:53 +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
455d6fac2e
Comments
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7382 e03df62e-2008-0410-955e-edbf42e46eb7
2007-06-17 19:29:11 +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
peavey
76ef4a17de
Update inline documentation for DelFd() so the doxygen docs will be correct.
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6300 e03df62e-2008-0410-955e-edbf42e46eb7
2007-01-12 00:35:19 +00:00
peavey
c662a37341
pgsql should now work thx to added posibility to force a fd out of the socketengine. This should only be used as a *last resort* when dealing with 3rd party libs that invalidates a file descriptor beyond your control.
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6295 e03df62e-2008-0410-955e-edbf42e46eb7
2007-01-11 04:24:37 +00:00
w00t
696ee9ff66
And now, just to force you to recompile the *whole* ircd.. updated headers on the headers. :p
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5998 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-15 22:18:59 +00:00
brain
193b540aa7
Socket error state stuff
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5607 e03df62e-2008-0410-955e-edbf42e46eb7
2006-10-31 20:32:01 +00:00
brain
4171efac17
Document SocketEngine::WantWrite()
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5591 e03df62e-2008-0410-955e-edbf42e46eb7
2006-10-30 20:51:52 +00:00
brain
dd168c56c9
WARNING: This commit breaks kqueue and select -- work in progress!
...
epoll now allows both a write and a read event on a socket at the same time.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5580 e03df62e-2008-0410-955e-edbf42e46eb7
2006-10-30 18:22:36 +00:00
brain
56cec38f3e
Get rid of SocketEngine::Wait and array-copy, change to SocketEngine::DispatchEvents
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4944 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-18 10:07:22 +00:00
brain
e381b06561
EventHandler class, an abstraction for raw i/o
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4941 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-18 01:08:14 +00:00
brain
d174657167
Now two types of log macro, log() and ilog(). log() assumes an InspIRCd object called ServerInstance, ilog() takes an InspIRCd object as first param.
...
TODO: Run a regexp over these, using perl, to translate them into InspIRCd::Log calls and then eliminate the macro :)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4879 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-11 12:15:03 +00:00
brain
cc83231b94
Remove X_ESTAB_CLASSDNS, X_ESTAB_DNS now does the job of this (i TOLD w00t and om i was removing this eventually, and now i did :p)
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4625 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-01 22:22:02 +00:00
brain
40b67389a9
Add #include <sys/select.h> to select engine, we probably need it
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4443 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-19 13:29:06 +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
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
3dacf1edd2
Made a load more stuff Extensible which might be of use to someone
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4293 e03df62e-2008-0410-955e-edbf42e46eb7
2006-07-10 18:22:16 +00:00
brain
572a7b503b
Commented a lot of stuff that hasnt been commented since 1.0.2
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3695 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-12 18:03:02 +00:00
brain
ba1d557ee3
Added method to check if an fd is in the socketengine or not
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3667 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-11 17:47:47 +00:00
brain
1383dba43e
Updated copyrights in headers etc using perl inplace edit
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2795 e03df62e-2008-0410-955e-edbf42e46eb7
2006-01-15 15:59:11 +00:00
brain
ee9f5d7784
Changed 65535 to MAX_DESCRIPTORS calculated at configure-time
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2699 e03df62e-2008-0410-955e-edbf42e46eb7
2005-12-29 19:31:39 +00:00
brain
dc12fcac87
Added extra checking to socketengine to refuse connections after we reach the max
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2697 e03df62e-2008-0410-955e-edbf42e46eb7
2005-12-29 16:33:26 +00:00
brain
024f972eb1
Added counters for MAX_DESCRIPTORS etc which allows the socket engine to refuse new fd's once you hit the OS limit
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2696 e03df62e-2008-0410-955e-edbf42e46eb7
2005-12-29 14:03:14 +00:00
brain
0bf908e49c
Optimizing to not use so much cpu with high user loads
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2691 e03df62e-2008-0410-955e-edbf42e46eb7
2005-12-29 00:19:35 +00:00
brain
277fc18372
Added comments
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2338 e03df62e-2008-0410-955e-edbf42e46eb7
2005-12-12 13:29:07 +00:00
brain
b81c2e4c4e
More experimental gubbins
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2330 e03df62e-2008-0410-955e-edbf42e46eb7
2005-12-12 12:29:40 +00:00
brain
718e7fa3cc
Added GetType
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2327 e03df62e-2008-0410-955e-edbf42e46eb7
2005-12-12 11:54:07 +00:00
brain
cef3e32fae
EXPERIMENTAL new socket engine code
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2326 e03df62e-2008-0410-955e-edbf42e46eb7
2005-12-12 11:50:45 +00:00
brain
ff40e40c9e
Made compile on freebsd
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2324 e03df62e-2008-0410-955e-edbf42e46eb7
2005-12-12 10:05:08 +00:00
brain
58f0da0eb9
Added preliminary socketengine stuff
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2321 e03df62e-2008-0410-955e-edbf42e46eb7
2005-12-12 09:53:10 +00:00
brain
f8d06e13c6
Removed references to connection.cpp and servers.cpp
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@1948 e03df62e-2008-0410-955e-edbf42e46eb7
2005-11-25 13:39:24 +00:00
brain
61637bdbb3
Removal of mesh stuff (lots of)
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@1938 e03df62e-2008-0410-955e-edbf42e46eb7
2005-11-25 11:21:52 +00:00
brain
7b93adfd36
Removed server socket stuff from socketengine
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@1933 e03df62e-2008-0410-955e-edbf42e46eb7
2005-11-25 10:03:48 +00:00
brain
3e67be8a51
Changed comments
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@1622 e03df62e-2008-0410-955e-edbf42e46eb7
2005-08-24 16:10:49 +00:00
brain
a6c55540f5
Tidied up socket engine code, moved into a specialized header full of #defines
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@1621 e03df62e-2008-0410-955e-edbf42e46eb7
2005-08-24 15:58:54 +00:00