242 Commits

Author SHA1 Message Date
Peter Powell
9b8dc77585 Add range checking to ConfigTag::getFloat. 2018-04-16 15:29:58 +01:00
Peter Powell
780dda83ba Add ConfigTag::getUInt for reading unsigned config values. 2018-04-16 15:29:55 +01:00
Peter Powell
2d36fcb16e Convert ConfigTag::getDuration to return an unsigned long. 2018-04-16 15:24:49 +01:00
Peter Powell
7c2adcb46a Convert ConfigTag::CheckRange to a function template. 2018-04-16 15:07:06 +01:00
Peter Powell
7ef2f87e39 Remove the default value in ConfigTag::get{Duration,Float,Int}. 2018-04-16 15:07:06 +01:00
Peter Powell
802eed1734 Move <security:announceinvites> to core_channel. 2018-03-31 13:16:27 +01:00
Dylan Frank
c7de80233a Separate secret and private channels on whois for non-opers (#1447)
Separate secret and private channels on WHOIS for all users.

- Move the config parsing from the core to core_whois.
- Replace <security:operspywhois> with an oper privilege.
- Introduce <options:splitwhois> to split WHOIS channel lists.

Closes #969.
2018-03-25 17:02:00 +01:00
Peter Powell
e467fd0a6f Rename <security:hidewhois> to <security:hideserver>.
The previous name was horrible and didn't describe what the setting
actually does.
2017-12-22 01:11:14 +00:00
Peter Powell
91e0af0fc4 Add the override keyword in places that it is missing.
GCCs warnings for this are much better than Clangs.
2017-11-21 15:51:45 +00:00
Peter Powell
36040be295 Fix a ton of -Wsign-conversion warnings. 2017-11-17 15:33:01 +00:00
Peter Powell
5287af979e Add a class which encapsulates the concept of token lists. 2017-11-13 19:44:04 +00:00
Peter Powell
020c1d6ea6 Add a constructor to OperInfo and use it to set the type name. 2017-10-18 18:38:30 +01:00
Peter Powell
aac644de3d Clean up the command disabling logic.
- Read the disabled command list in ApplyDisabledCommands() instead
  of storing it in a global which is only accessed on rehash.
- Write debug messages to the log when disabling commands.
- Use irc::spacesepstream instead of std::stringstream.
2017-10-17 20:29:15 +01:00
Peter Powell
ca9a56b7ac Convert Disabled[CU]Modes to use a bitset instead of a char array. 2017-09-18 14:09:01 +01:00
Peter Powell
51a47e7d75 Implement support for configurable casemapping & default to ASCII. 2017-09-08 20:11:50 +01:00
Peter Powell
c0ca5c8d41 Add support for length arguments in getString. 2017-09-03 22:44:33 +01:00
Peter Powell
74dd288542 Move <dns:timeout> out of the core. 2017-09-03 19:28:50 +01:00
Peter Powell
6399cd9327 Add a ConfigTag* parameter to the ServerPaths constructor.
This is used to directly read the settings from the config tag like
how ServerLimits works.
2017-09-03 15:35:41 +01:00
Peter Powell
a62ae50007 Fix a bunch of Doxygen warnings. 2017-08-26 09:58:15 +01:00
Peter Powell
3fd1ba753d Store config values in a map instead of a unique vector of pairs. 2016-12-08 02:01:40 +00:00
Attila Molnar
458ea2029c Bump version to 3.0 in comments and messages 2016-09-02 21:51:19 +02:00
Attila Molnar
b9e11915a9 Merge insp20 2016-08-17 12:49:48 +02:00
Peter Powell
4a12fc9d4b Add a method which calculates the maximum mask length. (#1171) 2016-07-22 12:26:11 +02:00
Adam
f80798f2c1 Don't show snotices for kills from ulined clients 2016-02-25 08:54:28 -05:00
Attila Molnar
489ba0ad54 Remove <options:ircumsgprefix> entirely 2015-12-06 11:09:03 +01:00
Attila Molnar
a6b53dbc36 Move ServerConfig::InvBypassModes into core_channel 2015-11-02 12:38:14 +01:00
Attila Molnar
c44433dad2 Merge branch 'master+flatmap' 2014-12-19 15:24:02 +01:00
Attila Molnar
7010a92426 Change type of some associative containers to their flat versions, including Extensible storage 2014-12-15 17:48:52 +01:00
Attila Molnar
bc6090c224 Add typedef PrivSet for OperInfo::AllowedOperCommands and AllowedPrivs 2014-12-15 17:09:48 +01:00
Attila Molnar
b74da78a61 Pass the empty tag to Limits when constructing a ServerConfig, remove default ServerLimits constructor 2014-12-09 12:36:24 +01:00
Attila Molnar
1c64da19e1 Add ServerLimits constructor that reads limits from a ConfigTag and use it 2014-12-09 12:35:31 +01:00
Attila Molnar
3a3ff94967 Merge insp20 2014-10-27 15:26:20 +01:00
Peter Powell
6935ce2956 Avoid calling methods on NULL pointers wherever possible.
The trick we use to allow this is undefined behaviour and is not
liked by LLVM. We should stop using it but it has the potential to
break to many things for a minor release.
2014-10-13 06:18:14 +01:00
Attila Molnar
6890d6aef7 Remove listmode hiding support from the core
This is now handled by m_hidelist
2014-09-10 15:03:21 +02:00
Attila Molnar
7e0e54eba3 Move typedef OperIndex to ServerConfig::OperIndex 2014-07-16 12:32:47 +02:00
Attila Molnar
046da7da9b Move typedef ClassVector to ServerConfig::ClassVector 2014-07-16 12:30:05 +02:00
Peter Powell
e3bcf95ee9 Prefix all definitions in config.h to avoid potential collisions. 2014-05-23 14:13:51 +02:00
Peter Powell
c511bb56f5 Kill <channels> in favour of <connect:maxchans> and <oper:maxchans>.
Remove channels/high-join-limit privilege
2014-04-11 16:14:10 +02:00
Peter Powell
f2db4b743f Make the maximum hostname length configurable in the config. 2014-03-08 13:01:09 +01:00
Attila Molnar
b15cffc167 Move admin settings into core_info 2014-03-07 18:09:21 +01:00
Attila Molnar
7f4a2cc351 Move {prefix|suffix|fixed}{quit|part} into core_user 2014-03-07 18:03:01 +01:00
Attila Molnar
07f817fd47 Read the die and restart password and their hash type on demand 2014-03-07 17:41:20 +01:00
Attila Molnar
5b6ae9c542 Only compile the testsuite if INSPIRCD_ENABLE_TESTSUITE is defined 2014-02-07 18:21:01 +01:00
Attila Molnar
e244cb2c63 Merge insp20 2014-01-21 18:44:08 +01:00
Attila Molnar
d379dcab40 Read uline state in spanningtree; remove ConfigReader::ulines 2014-01-08 12:41:01 +01:00
Attila Molnar
ff407e6751 Remove unused motd and rules field from ServerConfig 2013-12-18 16:07:50 +01:00
Peter Powell
02830985a1 Move stuff around a bit:
- Create FileSystem class:
  * Move ServerConfig::CleanFilename to FileSystem::GetFileName and rewrite.
  * Move ServerConfig::ExpandPath to FileSystem.
  * Move ServerConfig::FileExists to FileSystem.
  * Move ServerConfig::StartsWithWindowsDriveLetter to FileSystem.
- Move FileReader to fileutils.cpp and fix documentation.
- Move UserManager::DoBackgroundUserStuff to usermanager.cpp.
2013-12-15 06:46:35 +00:00
ChrisTX
718a87e7e4 Fix a shadow warning created by ConfigTag::create 2013-09-13 18:00:19 +02:00
attilamolnar
c202dea024 Replace OnRehash() with ReadConfig() that is called on boot, on module load and on rehash
This eliminates the need for calling OnRehash() in init()
2013-08-30 13:15:10 +02:00
attilamolnar
5384ddf545 Fix Windows build and a few more problems 2013-08-27 15:03:10 +02:00