aboutsummaryrefslogtreecommitdiff
path: root/include/configreader.h
Commit message (Expand)AuthorAgeFilesLines
* Retain the "real" username properly like we do for hostnames.•••This introduces the concept of a real username. This value comes from either the initial USER message or from an ident lookup. Doing this allows us to use it for bans through vidents and cloaking web client users using their remote username. While changing this I also changed all of the uses of "ident" other than RFC 1413 lookups and some compatibility cases to refer to usernames as user(name) instead of ident. Our use of ident in these places was incorrect as that only refers to the RFC 1413 response and is not commonly used in the way we used it by any other IRC server implementations. Gravatar Sadie Powell2023-06-291-1/+1
* Allow customising the message shown when hiding an X-line ban.Gravatar Sadie Powell2023-04-181-5/+3
* Remove GetSID, rename sid to ServerId.Gravatar Sadie Powell2023-02-281-5/+1
* Make reading the core config less of a mess.Gravatar Sadie Powell2023-01-271-2/+2
* Rename some headers to match the common naming system.Gravatar Sadie Powell2023-01-261-1/+1
* Replace getInt/getUInt/getFloat with type safe templated functions.Gravatar Sadie Powell2023-01-251-7/+46
* Fix using (unsigned) long instead of (s)size_t.Gravatar Sadie Powell2023-01-241-1/+1
* Const correct various functions.Gravatar Sadie Powell2023-01-111-1/+1
* Avoid copying shared_ptr<ConfigTag> when not necessary.Gravatar Sadie Powell2023-01-101-3/+3
* Rework how users are assigned to connect classes.•••- Move core connect class checks and <performance:clonesonconnect> to the core_user module. - Add pre-change and post-change events for when a connect class changes. - Split explicit class changing out into its own method. - Remove the need to almost always call CheckClass after SetClass. - Add use counting to the connect class instead of relying on the shared_ptr use count. Gravatar Sadie Powell2023-01-081-8/+1
* Refactor the internals of the oper system.•••- Allow overriding privileges from the <class> blocks in the <type> and <oper> blocks. - Separate oper types from oper accounts in the code. This enables moving some core stuff out of the config tag later. - Merge the config tags together to make a synthetic tag that can have getXXX called on it instead of using getConfig and then converting it. - Move the details of Have*Permission into the oper type class. - Improve oper events to allow modules to easily hook into the oper system. Gravatar Sadie Powell2022-11-281-44/+10
* Handle renamed modules when reading the modules to load.Gravatar Sadie Powell2022-10-181-0/+3
* Fix various cases of the &* being next to the name instead of type.Gravatar Sadie Powell2022-09-291-1/+1
* Fix some warnings noticed by the readability-* clang-tidy checkers.Gravatar Sadie Powell2022-09-031-2/+2
* Switch from NULL to nullptr.Gravatar Sadie Powell2022-07-221-1/+1
* Make getEnum use the default instead of throwing.Gravatar Sadie Powell2022-06-251-7/+17
* Centralise the logging of malformed config values.Gravatar Sadie Powell2022-06-251-0/+3
* Modernize the syntax of various templates.Gravatar Sadie Powell2022-06-231-1/+1
* Move TokenList to inspstring.Gravatar Sadie Powell2022-06-071-1/+1
* Merge branch 'insp3' into master.Gravatar Sadie Powell2022-04-291-1/+1
|\
| * Update copyright headers.Gravatar InspIRCd Robot2022-04-281-1/+1
* | Merge branch 'insp3' into master.Gravatar Sadie Powell2022-04-161-0/+2
|\|
| * Add a method to ConfigTag to help with retrieving a single character.Gravatar Sadie Powell2022-04-101-0/+2
* | Add a typedef for the mode status bitset.Gravatar Sadie Powell2022-03-271-2/+2
* | Abolish the infernal space before accessibility keywords.Gravatar Sadie Powell2022-01-251-13/+13
* | Move FilePosition to be with the config stuff it is used by.Gravatar Sadie Powell2022-01-181-0/+24
* | Add ConnectClass::Ptr as an alias for std::shared_ptr<ConnectClass>.Gravatar Sadie Powell2022-01-161-1/+1
* | Fix the previous commit on Windows.Gravatar Sadie Powell2022-01-161-1/+1
* | Replace uses of the FileSystem class with std::filesystem.Gravatar Sadie Powell2022-01-151-5/+12
* | Refactor CoreException and ModuleException.Gravatar Sadie Powell2022-01-071-1/+1
* | Merge branch 'insp3' into master.Gravatar Sadie Powell2022-01-031-1/+1
|\|
| * Update copyright headers.Gravatar InspIRCd Robot2021-12-301-1/+1
* | Add the final keyword to all remaining classes that can have it.Gravatar Sadie Powell2021-12-201-7/+8
* | Merge branch 'insp3' into master.Gravatar Sadie Powell2021-09-161-1/+1
|\|
| * Use the network name as the description when hideserver is enabled.Gravatar Sadie Powell2021-09-041-1/+1
* | Added -Wshorten-64-to-32 and fixed all warnings.Gravatar Dominic Hamon2021-05-301-5/+5
* | Make ServerConfig::{ApplyModules, Fill} private.Gravatar Sadie Powell2021-05-131-5/+4
* | Merge branch 'insp3' into master.Gravatar Sadie Powell2021-05-111-1/+1
|\|
* | Fix a ton of pedantic compiler warnings.Gravatar Sadie Powell2021-04-041-1/+1
* | Merge branch 'insp3' into master.Gravatar Sadie Powell2021-03-051-8/+1
|\|
| * Fix a bunch of really obvious unnecessary includes.Gravatar Sadie Powell2021-03-051-7/+0
| * Fix comments that claim that the InspIRCd protocol uses TS6 UUIDs.•••Just because they happen to look the same doesn't mean that they actually are. Gravatar Sadie Powell2021-03-051-1/+1
* | Merge branch 'insp3' into master.Gravatar Sadie Powell2021-03-051-1/+2
|\|
| * Update copyright headers.Gravatar InspIRCd Robot2021-03-051-1/+2
* | Move iterator_range to the utility directory and renamespace.Gravatar Sadie Powell2021-03-021-1/+1
* | Merge branch 'insp3' into master.Gravatar Sadie Powell2021-02-281-1/+1
|\|
| * Update copyright headers.Gravatar InspIRCd Robot2021-02-261-1/+1
* | Allow ServerConfig::Conf{Value,Tags} to have a fallback default.Gravatar Sadie Powell2021-01-301-2/+4
* | Merge branch 'insp3' into master.Gravatar Sadie Powell2021-01-181-0/+4
|\|
| * Add a new runtime directory and move the pid file to it.•••The data directory is intended for persistent files whereas the pid file is ephemeral. This distinction doesn't matter by default but on system-wide installs ephemeral runtime files go in /var/run or /run instead. Gravatar Sadie Powell2021-01-181-0/+4