brain
ba339f8b1c
Add port type identifiers
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6196 e03df62e-2008-0410-955e-edbf42e46eb7
2007-01-01 00:16:50 +00:00
brain
6a6f5b2275
Add missing feature: /rehash reinitializes dns subsytem (and can handle changed addresses)
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6193 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-31 19:17:04 +00:00
brain
d3e3a13ae6
Cached GetFullRealHost etc.
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6179 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-30 19:30:53 +00:00
brain
1aaa30bc9b
Properly document support for libhamsters
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6177 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-30 17:43:26 +00:00
brain
fce2d243c0
Add unregistered user counter, this may also fix the (minor) m_conn_lusers shows current connection as unregged
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6170 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-30 14:34:49 +00:00
peavey
81c26039d5
Change description for insp_aton since only a positive return means convertion was a success.
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6169 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-30 13:50:40 +00:00
brain
500a6b24b2
This doesnt need to be static
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6164 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-29 23:35:35 +00:00
brain
5e9a6b9186
Add counter system for umodes to get rid of some O(n)
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6163 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-29 23:34:47 +00:00
peavey
79c0364d54
Add Template itoa to convert integer to char*
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6119 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-26 05:55:45 +00:00
peavey
f3f570b4fa
Also add support for default values for ConfValueBool and ConfValueInteger in configreader, and for ReadFlag and ReadInteger in modules.
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6116 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-26 01:48:55 +00:00
peavey
047f09dd57
Add possibility to define default value for ConfValue in configreader and ReadConf in modules.
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6113 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-26 00:51:20 +00:00
peavey
7f6344e3ad
Fix a bug in whowas that could desync list.
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6091 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-24 04:01:45 +00:00
brain
b31a8ee0ad
Add OnGarbageCollect method
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6086 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-24 00:42:22 +00:00
brain
74c8913f72
Hash rehashing change
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6080 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-23 23:06:37 +00:00
brain
6cc7cd76fb
Close logfile on rehash and reopen (it was only doing this on sighup for some reason)
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6079 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-23 17:08:02 +00:00
brain
f9ef034ef5
Fix exit in wrong place, and add new exitcodes.h
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6077 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-23 16:41:22 +00:00
brain
e04f190f63
Program termination (including SIGTERM) now calls InspIRCd::Cleanup() which does most of the duties performed by InspIRCd::Restart().
...
This means that on controlled shutdown we give the modules a chance to unload, etc, and close our sockets and free ram in a proper way.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6075 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-23 16:06:16 +00:00
brain
529c6acc01
Unload as many modules as we can on restart, and close listeners
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6068 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-23 14:19:33 +00:00
brain
371daf9928
Refactored /RESTART (and added InspIRCd::Restart(reason))
...
Fixed bug in m_ziplinks, assigning instead of testing a var (gcc 4.1.1 picked up on this, 3.4 didnt)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6067 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-23 14:06:57 +00:00
peavey
089cf1f5fd
change userrec int timeout to time_t since it's a timestamp made of TIME + users connection class timeout.
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6066 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-22 22:02:50 +00:00
brain
79939d71ba
Add ConvToInt() template to go with ConvToStr() that we've had for a while
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6064 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-22 20:45:38 +00:00
brain
49eabd1197
Refactor connect allow/deny lines
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6061 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-22 20:12:15 +00:00
brain
1c52b90e82
Refactor dns.cpp to use an array of request types rather than map, for O(1) lookup time
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6042 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-18 18:35:25 +00:00
brain
156d634231
Add this:
...
#define CMD_LOCALONLY CMD_FAILURE
so that when we say 'return cmd_failure to not allow spanningtree to propogate the message', the constant itself documents the code instead and is more readable.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6035 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-17 14:40:34 +00:00
peavey
3c14fd2155
Make RemoveCommand private.
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6030 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-17 02:58:57 +00:00
peavey
3712db9cc6
Invented safe delete-while-itering for hash_map.
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6029 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-17 02:46:47 +00:00
peavey
d7bc663d0a
Config option added for prefixed channel NOTICEs and PRIVMSGs to turn on/off IRCU style of adding prefix to outgoing text.
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6018 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-16 22:43:56 +00:00
brain
dbe93e4477
Add stuff so that the core catches CoreException properly
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6017 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-16 21:40:06 +00:00
brain
e65c1d261c
Add an optional parameter to ConfigReader::ReadValue which defines if we want linefeeds or not.
...
Tidy up some duplicated code in configreader (error reporting)
Change ModuleException to inherit from CoreException, have the configreader throw and catch its CoreException on fatal error
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6013 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-16 21:04:47 +00:00
peavey
d7d188e1c5
Make irc::spacify take 'const char*' instead of 'char*'
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6006 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-16 02:54:16 +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
w00t
a7cbd51d45
Still more massive commit fun. Headers in include/ still to be done, else that's it.
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5997 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-15 22:03:27 +00:00
brain
457362304b
Cleaning up irrelevent stuff in channels.cpp
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5993 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-15 17:32:16 +00:00
brain
4652f73b9e
CPU Usage percent in stats z! yay!
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5988 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-14 19:30:42 +00:00
brain
a78cecbeb9
Refactor userrec::chans.
...
Old way: A vector of ucrec, MAXCHANS in size by default populated by NULLS, so you have to scan the vector to find an empty slot when joining a user, parting a user etc
New way: std::map<chanrec*, char> (the char holds their basic core permissions on the channel [voice, halfop, op])
This increases speed a ton, and removes some wtf-age.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5986 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-14 17:46:47 +00:00
brain
6bd9e67851
Change m_watch to use hash_map rather than map, because of the large number of entries we deal with it will usually be faster
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5979 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-13 20:07:08 +00:00
brain
f240285155
Improve the way 005 ISUPPORT is sent to users when they connect, cache it in a much more sane format which is much simpler to spool to them
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5978 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-13 20:00:33 +00:00
brain
1c84dff59d
Improve how we handle ELINEs on connect, turn O(2n) into O(n) (thats the best we can do with g/k/z/q checks for now :( )
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5968 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-12 23:21:51 +00:00
brain
3679c5ebb7
New clone counting mechanism (this isnt tested yet)
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5967 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-12 22:51:38 +00:00
brain
33530c338c
irc::string assign(std::string&)
...
std::string assign(irc::string&)
soooo:
irc::string foo = assign(my_std_string);
:p
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5956 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-11 23:56:22 +00:00
brain
540fee57bf
Add InspIRCd::UseInterface and InspIRCd::DoneWithInterface, and also InspIRCd::GetInterfaceUseCount().
...
These can be used for one module to lock other modules in memory that it depends on, this way they can
enforce an unload order so that you cant (for example) unload m_ssl_gnutls.so whilst m_spanningtree.so
is using it for ssl server to server sessions (in this case, youd have to unload spanningtree first,
THEN ssl_gnutls, to satisfy the dependencies and unload orders)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5924 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-10 22:17:51 +00:00
brain
0471fe2677
Removal of AES, this is no longer required. (This also eliminates code that isnt ours, and was some public domain crap)
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5915 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-10 15:51:31 +00:00
brain
f559b94fa3
Add the stuff required for the InspSocketHook interface
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5890 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-09 19:25:10 +00:00
brain
768171fef9
Add OnRawSocketConnect, we've not had it till now because we've not needed it :)
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5887 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-09 18:49:36 +00:00
brain
dfa831752c
Not yet tested -- allow iohooking of inspsockets
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5886 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-09 18:36:24 +00:00
brain
b57568ecc4
Bad w00tie bad, /who isnt checking +s for channel /who!
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5883 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-07 23:00:43 +00:00
brain
3daff89138
Document FindInterface, PublishInterface, UnpublishInterface, fix a bug where the interface wasnt removed when it was decremented to 0 implementing modules
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5874 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-05 21:19:19 +00:00
brain
c3a7fb47d6
Untested, undocumented PublishInterface, UnpublishInterface, FindInterface.
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5867 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-05 20:43:41 +00:00
brain
8f385c3006
This has changed again, i suggest you dont bother trying to keep up till im done :p
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5863 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-05 19:50:10 +00:00
brain
2ade6284f9
Change this a LOT.
...
<oper blah.... hash="md5|sha256" pass="blah...">
It will now only check pass if you put the hash= in, people have been bugging for this for a while.
note the m_oper_hash module will try and detect both m_sha256 and m_md5 now, and will provide /mkpasswd that can do either.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5862 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-05 19:36:26 +00:00