]>
git.netwichtig.de Git - user/henk/code/inspircd.git/log
Attila Molnar [Thu, 4 Sep 2014 10:30:40 +0000 (12:30 +0200)]
m_spanningtree Apply FMODE mode changes using the new ModeParser functions
Attila Molnar [Thu, 4 Sep 2014 10:27:04 +0000 (12:27 +0200)]
Let callers customize the begin/end positions for ModeParser::ModeParamsToChangeList()
This helps spanningtree when it deals with a vector of parameters where the modes begin at different positions
Attila Molnar [Thu, 4 Sep 2014 10:22:28 +0000 (12:22 +0200)]
m_services_account Call ModeHandler::RemoveMode() instead of duplicating code
Attila Molnar [Wed, 3 Sep 2014 13:40:19 +0000 (15:40 +0200)]
Remove irc::modestacker
Attila Molnar [Wed, 3 Sep 2014 13:36:21 +0000 (15:36 +0200)]
m_spanningtree Remove CommandFJoin::ApplyModeStack()
Attila Molnar [Wed, 3 Sep 2014 13:35:13 +0000 (15:35 +0200)]
Use Modes::ChangeList in ModeHandler::RemoveMode()
Attila Molnar [Wed, 3 Sep 2014 13:32:02 +0000 (15:32 +0200)]
Replace irc::modestacker usage with the new ModeParser::Process()
Attila Molnar [Wed, 3 Sep 2014 13:11:27 +0000 (15:11 +0200)]
Add a ModeParser::Process() overload that can process an entire Modes::ChangeList
This is a wrapper that calls ProcessSingle() repeatedly until the entire changelist is processed
Attila Molnar [Wed, 3 Sep 2014 13:05:56 +0000 (15:05 +0200)]
Make it possible to resume processing a partially processed Modes::ChangeList
Return number of processed mode changes from ModeParser::ProcessSingle() and add a begin index parameter
Attila Molnar [Wed, 3 Sep 2014 13:03:38 +0000 (15:03 +0200)]
Split out ModeParser::ModeParamsToChangeList()
Attila Molnar [Wed, 3 Sep 2014 12:56:42 +0000 (14:56 +0200)]
Handle mode merges in ModeParser::ProcessSingle()
Attila Molnar [Wed, 3 Sep 2014 12:52:00 +0000 (14:52 +0200)]
Validate mode parameters from ModeParser::ProcessSingle()
Attila Molnar [Wed, 3 Sep 2014 12:47:13 +0000 (14:47 +0200)]
Split out ModeParser::ProcessSingle() from Process()
This applies up to one MODE line's worth of mode changes from a Modes::ChangeList
Attila Molnar [Wed, 3 Sep 2014 12:37:42 +0000 (14:37 +0200)]
Add mode process flag MODE_CHECKACCESS
Attila Molnar [Wed, 3 Sep 2014 12:32:02 +0000 (14:32 +0200)]
Remove ModeHandler::m_paramtype and GetTranslateType()
Attila Molnar [Wed, 3 Sep 2014 12:31:00 +0000 (14:31 +0200)]
Remove ModeParser::LastParseTranslate and GetLastParseTranslate()
Attila Molnar [Wed, 3 Sep 2014 12:30:04 +0000 (14:30 +0200)]
Remove ModeParser::LastParseParams and GetLastParseParams()
Attila Molnar [Wed, 3 Sep 2014 12:28:57 +0000 (14:28 +0200)]
Compare Limits.MaxModes to the size of LastChangeList in ModeParser::Process()
Attila Molnar [Wed, 3 Sep 2014 12:28:13 +0000 (14:28 +0200)]
Remove ProtocolInterface::SendMode()
Attila Molnar [Wed, 3 Sep 2014 12:26:40 +0000 (14:26 +0200)]
m_spanningtree Send MODE/FMODE from the OnMode hook
If the MODE_LOCALONLY flag is set the mode change is not propagated
Attila Molnar [Wed, 3 Sep 2014 12:23:30 +0000 (14:23 +0200)]
m_spanningtree Add function to serialize parameters in a Modes::ChangeList::List into MODE/FMODE format
Attila Molnar [Wed, 3 Sep 2014 12:15:18 +0000 (14:15 +0200)]
Pass the modes to the OnMode hook as a Modes::ChangeList, pass ModeProcessFlags too
Attila Molnar [Wed, 3 Sep 2014 12:09:03 +0000 (14:09 +0200)]
Populate a Modes::ChangeList object in ModeParser::Process()
Attila Molnar [Wed, 3 Sep 2014 12:06:45 +0000 (14:06 +0200)]
Add Modes::Change and Modes::ChangeList
Attila Molnar [Tue, 2 Sep 2014 14:32:00 +0000 (16:32 +0200)]
Change mode_sequence to be a const ref in ModeParser::Process()
Also change the signature of DisplayListModes() to accept a const ref
Attila Molnar [Tue, 2 Sep 2014 14:27:12 +0000 (16:27 +0200)]
Replace stringstream with a std::string in ModeParser::Process()
There is no benefit in using a stringstream here
Attila Molnar [Mon, 1 Sep 2014 13:17:23 +0000 (15:17 +0200)]
m_spanningtree Add optional key parameter to SVSJOIN and allow it to do override joins
Slightly more readable version of #892 by @ShutterQuick
Dan Parsons [Mon, 4 Aug 2014 17:57:43 +0000 (10:57 -0700)]
Updated inspircd init script template to make it chkconfig compatible.
Attila Molnar [Sun, 31 Aug 2014 10:53:23 +0000 (12:53 +0200)]
m_blockamsg Update coding style, use User::WriteNotice()
Attila Molnar [Sun, 31 Aug 2014 10:51:42 +0000 (12:51 +0200)]
m_blockamsg Remove redundant check
Attila Molnar [Sun, 31 Aug 2014 10:49:19 +0000 (12:49 +0200)]
m_blockamsg Uncrook channel counting logic
Attila Molnar [Sun, 31 Aug 2014 10:44:57 +0000 (12:44 +0200)]
m_blockamsg Prevent double copy of the target string
Attila Molnar [Sun, 31 Aug 2014 10:43:31 +0000 (12:43 +0200)]
m_blockamsg Remove useless variable
Attila Molnar [Sat, 30 Aug 2014 08:35:21 +0000 (10:35 +0200)]
Move the intrusive list containers into the insp namespace
Attila Molnar [Wed, 6 Aug 2014 11:44:02 +0000 (13:44 +0200)]
m_ojoin Change allocation of NetworkPrefix to be physically part of the object containing it
Attila Molnar [Wed, 6 Aug 2014 11:40:27 +0000 (13:40 +0200)]
m_ojoin Leave it to the core throw an exception if the prefix char is in use
Attila Molnar [Wed, 6 Aug 2014 11:38:34 +0000 (13:38 +0200)]
Migrate ModeChannelOp and ModeChannelVoice constructors to builtinmodes.h, remove cmode_{o,v}
The default value for levelrequired is HALFOP_VALUE, meaning the ModeChannelVoice class is not required but it will be useful in case the default changes
Attila Molnar [Wed, 6 Aug 2014 11:35:40 +0000 (13:35 +0200)]
Pass prefix rank and prefix char to PrefixMode constructor
Attila Molnar [Wed, 6 Aug 2014 11:27:16 +0000 (13:27 +0200)]
Remove a bunch of useless classes representing simple core modes
Attila Molnar [Wed, 6 Aug 2014 11:22:40 +0000 (13:22 +0200)]
Change ListModeBase::DoRehash() to not be virtual
Attila Molnar [Wed, 6 Aug 2014 11:20:00 +0000 (13:20 +0200)]
m_exemptchanops Fix parameter validation
Attila Molnar [Wed, 6 Aug 2014 11:10:58 +0000 (13:10 +0200)]
m_spanningtree Remove redundant checks from HandleRemoteWhois()
The size of the vector is checked in OnPreCommand() and that hook only runs for local users
Attila Molnar [Wed, 6 Aug 2014 11:04:22 +0000 (13:04 +0200)]
core_who Remove redundant NULL checks from CanView()
Attila Molnar [Mon, 4 Aug 2014 11:45:04 +0000 (13:45 +0200)]
m_pbkdf2 Less string copying
Daniel Vassdal [Wed, 2 Jul 2014 21:45:36 +0000 (23:45 +0200)]
m_pbkdf2: Added module
Bugfixes and minor changes are by @attilamolnar, original PR #767
Daniel Vassdal [Wed, 2 Jul 2014 19:24:46 +0000 (21:24 +0200)]
m_bcrypt: Add module
bcrypt updated to 1.3 by @attilamolnar, original PR #767
Daniel Vassdal [Wed, 2 Jul 2014 18:55:33 +0000 (20:55 +0200)]
Hashing: Redo API
* Don't assume the printable output of hashes is hex
* Add virtual Compare() function, usable for KDFs like BCrypt
Some changes and bugfixes are by @attilamolnar, original PR #767
Daniel Vassdal [Wed, 2 Jul 2014 17:19:55 +0000 (19:19 +0200)]
m_password_hash: Use out_size as HMAC-key length, as RFC2104 recommends
"In any case the minimal recommended length for K is L bytes (as the hash output length)."
Attila Molnar [Mon, 4 Aug 2014 10:12:07 +0000 (12:12 +0200)]
Remove InspIRCd::BindSocket()
Attila Molnar [Mon, 4 Aug 2014 10:10:36 +0000 (12:10 +0200)]
threadengine_win32 Use a stripped-down, local version of InspIRCd::BindSocket() for setting up the ITC pipe
md-5 [Sun, 3 Aug 2014 08:52:44 +0000 (18:52 +1000)]
Fix off by one in ping timeout.
Been bugging me that users ping timeout at 121 rather than 120 seconds by default.
Justin Crawford [Fri, 18 Apr 2014 00:33:38 +0000 (17:33 -0700)]
Differ database error messages for m_permchannels and m_xline_db
m_permchannels and m_xline_db both have the same error messages as well as not
informing the server operator what file is at fault for the error. This makes it
hard to find which module is causing the error and what file the module is referring
to. The new messages explain which database is trying to be written and the path
used to write the file.
Attila Molnar [Mon, 28 Jul 2014 12:51:39 +0000 (14:51 +0200)]
Do not attempt to detect non-culled users at destruction by looking for their uuid, leave it to Extensible
This does not take uuid/sid reuse into consideration and Extensible implements this detection already in a proper way
Attila Molnar [Mon, 28 Jul 2014 12:50:28 +0000 (14:50 +0200)]
Allow fast sid reuse by erasing fake users from UserManager::uuidlist when the netsplit is handled, not in cull()
Attila Molnar [Mon, 28 Jul 2014 12:48:50 +0000 (14:48 +0200)]
m_spanningtree Throw a ProtocolException if a server SQUITs a server it shouldn't
Attila Molnar [Mon, 28 Jul 2014 12:47:29 +0000 (14:47 +0200)]
m_spanningtree Squit dead servers immediately when they die, not at the next timer tick
Attila Molnar [Mon, 28 Jul 2014 12:45:37 +0000 (14:45 +0200)]
m_spanningtree Remove the now needless SplitInProgress workaround
Attila Molnar [Mon, 28 Jul 2014 12:44:51 +0000 (14:44 +0200)]
m_spanningtree Check TreeServer::IsDead() to learn whether a user is being quit due to a netsplit in OnUserQuit()
Attila Molnar [Mon, 28 Jul 2014 12:43:35 +0000 (14:43 +0200)]
m_spanningtree Change type of num_lost_* to be unsigned
Attila Molnar [Mon, 28 Jul 2014 12:42:01 +0000 (14:42 +0200)]
m_spanningtree Quit all split users in one go
Attila Molnar [Mon, 28 Jul 2014 12:38:20 +0000 (14:38 +0200)]
m_spanningtree Mark servers awaiting destruction after being lost in a netsplit, add TreeServer::IsDead()
Attila Molnar [Mon, 28 Jul 2014 12:35:20 +0000 (14:35 +0200)]
m_spanningtree Remove now unused TreeServer::Tidy()
Attila Molnar [Mon, 28 Jul 2014 12:34:46 +0000 (14:34 +0200)]
m_spanningtree Add the TreeServer that split to the cull list and destroy everything under it recursively at cull time instead of at squit processing time
Attila Molnar [Mon, 28 Jul 2014 12:31:57 +0000 (14:31 +0200)]
m_spanningtree Remove split servers from the hash maps in TreeServer::SQuitInternal()
Attila Molnar [Mon, 28 Jul 2014 12:30:14 +0000 (14:30 +0200)]
m_spanningtree Move squit logic into TreeServer from TreeSocket
Attila Molnar [Mon, 28 Jul 2014 12:23:02 +0000 (14:23 +0200)]
m_spanningtree Remove now needless TreeSocket::ConnectionFailureShown
Attila Molnar [Mon, 28 Jul 2014 12:21:20 +0000 (14:21 +0200)]
m_spanningtree Ensure that TreeSocket::Close() only runs once
Attila Molnar [Sun, 27 Jul 2014 17:11:48 +0000 (19:11 +0200)]
m_spanningtree Keep track of whether servers are behind a bursting server, use it to implement quietbursts
Attila Molnar [Sun, 27 Jul 2014 17:01:13 +0000 (19:01 +0200)]
m_spanningtree Only mark one server as finished bursting on ENDBURST (or PONG), not all behind it
Attila Molnar [Sun, 27 Jul 2014 16:59:43 +0000 (18:59 +0200)]
m_spanningtree Sync bursting state of servers in SERVER
Also send the time when they started bursting
Attila Molnar [Sun, 27 Jul 2014 16:56:12 +0000 (18:56 +0200)]
m_spanningtree Parse additional information present in SERVER messages
Format: <key>[=<value>]
Attila Molnar [Sun, 27 Jul 2014 16:50:07 +0000 (18:50 +0200)]
m_spanningtree Add TreeServer::BeginBurst() that marks a server as bursting
Don't mark servers as bursting in the constructor
Attila Molnar [Sun, 27 Jul 2014 16:47:36 +0000 (18:47 +0200)]
m_spanningtree Use the value of StartBurst to determine whether a server is bursting, remove TreeServer::bursting
Attila Molnar [Sun, 27 Jul 2014 16:45:52 +0000 (18:45 +0200)]
m_spanningtree Replace direct access of TreeServer::bursting with IsBursting()
Attila Molnar [Sun, 27 Jul 2014 16:43:30 +0000 (18:43 +0200)]
m_spanningtree Remove post-handshake BURST handler
Attila Molnar [Sun, 27 Jul 2014 16:42:46 +0000 (18:42 +0200)]
m_spanningtree Don't send needless BURST after introducing a server
Synthesize a BURST after SERVER for 1202 protocol servers if we are not bursting
Attila Molnar [Sun, 27 Jul 2014 16:39:01 +0000 (18:39 +0200)]
m_spanningtree Keep track of whether we've sent our burst, to be used for translation
Attila Molnar [Sun, 27 Jul 2014 16:37:39 +0000 (18:37 +0200)]
m_spanningtree Add TreeSocket::WriteLineNoCompat() to send a line without doing any translation for old protocol servers
Attila Molnar [Sun, 27 Jul 2014 16:36:12 +0000 (18:36 +0200)]
m_spanningtree Translate the new SERVER message for 1202 protocol servers
Attila Molnar [Sun, 27 Jul 2014 16:30:31 +0000 (18:30 +0200)]
m_spanningtree Remove unused parameters from the server introduction message
This does not affect the initial SERVER message containing the password
Attila Molnar [Sun, 27 Jul 2014 16:25:23 +0000 (18:25 +0200)]
m_spanningtree Add newly created TreeServers to the parent's list in the constructor
Attila Molnar [Sun, 27 Jul 2014 16:22:12 +0000 (18:22 +0200)]
m_spanningtree Don't pointlessly copy strings in SERVER handlers
Attila Molnar [Sun, 27 Jul 2014 16:21:10 +0000 (18:21 +0200)]
m_spanningtree Deduplicate server auth code
Attila Molnar [Sun, 27 Jul 2014 16:12:34 +0000 (18:12 +0200)]
m_spanningtree Deduplicate auth finish code
Attila Molnar [Sun, 27 Jul 2014 16:05:36 +0000 (18:05 +0200)]
m_spanningtree Remove duplicated code from TreeSocket::Outbound_Reply_Server()
This is implemented in CheckDuplicate()
Attila Molnar [Sat, 26 Jul 2014 14:19:18 +0000 (16:19 +0200)]
m_spanningtree Set the TS of the uuid nick to the same value on collision
Attila Molnar [Sat, 26 Jul 2014 14:10:23 +0000 (16:10 +0200)]
m_spanningtree Warn instead of sending SAVE if we change the nick of a non-local user outside of a command handler
Attila Molnar [Sat, 26 Jul 2014 14:08:03 +0000 (16:08 +0200)]
m_spanningtree Only accept uuids in SAVE
Attila Molnar [Sat, 26 Jul 2014 14:04:34 +0000 (16:04 +0200)]
m_spanningtree Don't accept NICK with 0 TS
Attila Molnar [Sat, 26 Jul 2014 14:00:24 +0000 (16:00 +0200)]
m_spanningtree Return a bool from DoCollision()
The return value is true if the remote user or both have to change, false if only we have to change
Attila Molnar [Sat, 26 Jul 2014 13:53:11 +0000 (15:53 +0200)]
m_spanningtree Replace WriteLine() call with Unicast() in DoCollision()
Attila Molnar [Sat, 26 Jul 2014 13:51:28 +0000 (15:51 +0200)]
m_spanningtree Replace #defines with references in DoCollision()
Attila Molnar [Sat, 26 Jul 2014 13:47:52 +0000 (15:47 +0200)]
m_spanningtree Update comments around collision handling
Attila Molnar [Sat, 26 Jul 2014 13:37:40 +0000 (15:37 +0200)]
m_spanningtree Let the NICK handler change the nick of the incoming user on collision
Don't change it in DoCollision()
Attila Molnar [Fri, 25 Jul 2014 10:16:49 +0000 (12:16 +0200)]
m_spanningtree Update nick overrule on UID code to make sense on master
Attila Molnar [Fri, 25 Jul 2014 10:10:07 +0000 (12:10 +0200)]
m_ssl_openssl Read the DH params file using the BIO API on all OSes
Attila Molnar [Fri, 25 Jul 2014 10:05:40 +0000 (12:05 +0200)]
Merge insp20
Attila Molnar [Thu, 24 Jul 2014 12:24:00 +0000 (14:24 +0200)]
Release v2.0.17
Attila Molnar [Thu, 24 Jul 2014 12:20:14 +0000 (14:20 +0200)]
Update example configuration files, fix typos and case
Mention m_regex_stdlib in the list of regex providers after m_filter
Attila Molnar [Tue, 22 Jul 2014 18:15:44 +0000 (20:15 +0200)]
m_spanningtree Always treat the remote client as the winner on nick collision if the nick is used by a (local) client that isn't fully registered