3706 Commits

Author SHA1 Message Date
Sadie Powell
ec217059c3 Store a set of list mode pointers in Membership instead of characters. 2022-05-17 13:02:58 +01:00
Sadie Powell
bc2098a492 Require specifying the repeat argument of the Timer class. 2022-05-17 12:06:26 +01:00
Sadie Powell
337b0bedc3 Only give timers a trigger time when they're actually registered. 2022-05-17 11:36:02 +01:00
Sadie Powell
986d587ea4 Add the new account system.
This still relies on the old extensibles for now but we can change
that later.
2022-05-14 14:47:56 +01:00
Sadie Powell
83b1afdfad Remove the old account system. 2022-05-14 13:50:29 +01:00
Sadie Powell
1a5af295be Move unistd out of the global compat header. 2022-05-07 20:18:15 +01:00
Sadie Powell
507887f001 Get rid of entrypoint, specify the main function name directly. 2022-05-07 20:18:15 +01:00
Sadie Powell
ed95dcf44a Remove unnecessary arguments to On(Post)Oper.
These are already accessible from the user object.
2022-05-07 18:01:43 +01:00
Sadie Powell
f7c041f560 Implement support for regex capture groups. 2022-05-06 15:53:08 +01:00
Sadie Powell
2ac42d8017 Fix various Doxygen comment issues. 2022-05-02 17:36:37 +01:00
Sadie Powell
21ad77d9f2 Flush logs every 15 minutes to avoid losing data. 2022-05-02 17:21:19 +01:00
Sadie Powell
7b40edc9af Add a log method for stringifying a logging method. 2022-05-02 12:43:30 +01:00
Sadie Powell
ab5f93999c Mark fields that take a Log::Engine* as non-null. 2022-05-01 22:55:26 +01:00
Sadie Powell
e23ee3fde1 Rewrite logging calls to use the new APIs. 2022-05-01 22:07:14 +01:00
Sadie Powell
c382faf9c9 Rewrite the entire logging system.
- Much cleaner API for writing to the log.
- Adds support for stderr and stdout logging to the core.
- Adds support for sql and syslog logging in modules.
2022-05-01 22:07:04 +01:00
Sadie Powell
0df16f0144 Delete the old logging system. 2022-05-01 21:44:54 +01:00
Sadie Powell
af1d0f6a4b Slim down the globally included files. 2022-04-30 17:48:12 +01:00
Sadie Powell
0e83e79974 Enable support for UNIX socket listeners on Windows. 2022-04-30 16:26:31 +01:00
Sadie Powell
0e7883dd96 Format enums with an underlying type like classes. 2022-04-30 14:47:39 +01:00
Sadie Powell
0e660314c3 Make the extban enums 8-bit. 2022-04-29 22:07:42 +01:00
Sadie Powell
d7912e6a3e Merge branch 'insp3' into master. 2022-04-29 11:24:05 +01:00
Sadie Powell
b36bfce84f Release v3.13.0. 2022-04-28 18:50:30 +01:00
InspIRCd Robot
346ec99c43 Update copyright headers. 2022-04-28 18:49:16 +01:00
Sadie Powell
4f58176bc2 Merge branch 'insp3' into master. 2022-04-26 17:09:31 +01:00
Sadie Powell
d682f3f2c9 Only write to the pid file on boot.
Being able to change this after first boot is error prone and does
not work well on system-wide installs where the server needs root
to write the file.

Closes #566.
2022-04-23 09:57:52 +01:00
Sadie Powell
c886bc0395 Remove a forward declaration for a non-existent type. 2022-04-21 22:51:14 +01:00
Sadie Powell
9fbcb685e8 Merge branch 'insp3' into master. 2022-04-21 16:32:29 +01:00
Sadie Powell
5d90fa4c6e Mark the main loop as noreturn. 2022-04-21 09:20:33 +01:00
Sadie Powell
b122c182cc Fix an outdated comment. 2022-04-20 23:57:04 +01:00
Sadie Powell
47515ac269 Fix a now outdated documentation comment. 2022-04-18 18:04:59 +01:00
Sadie Powell
d45fe55f0e Constify the parameter arguments in ListModeBase's Tell* methods. 2022-04-17 14:57:41 +01:00
Sadie Powell
d856205432 Fix doxygen to include the public module header files. 2022-04-17 14:16:05 +01:00
Sadie Powell
b6c77b3e01 Fix a missing doxygen comment. 2022-04-17 12:13:35 +01:00
Sadie Powell
27c0ae9433 Allow normalising extbans to a specific format.
Also, fix canonicalisation of acting extban values.
2022-04-17 12:08:57 +01:00
Sadie Powell
57b3a40afa Refactor ListModeBase::OnModeChange. 2022-04-17 11:23:14 +01:00
Sadie Powell
80e8013282 Remove ValidateParam and rename CanonicalizeParam.
There's basically no safe way to handle a malformed list mode
sent by a remote server without causing a desync. Its probably
for the best if we just only apply validation to locally added
list modes entries.
2022-04-17 11:14:39 +01:00
Sadie Powell
30edd1070d Merge branch 'insp3' into master. 2022-04-16 16:16:29 +01:00
Sadie Powell
c0bc5bf798 Add ListModeBase::CanonicalizeParam, fix cleaning extban masks. 2022-04-16 12:01:59 +01:00
Sadie Powell
985ef046ce Add a class that wraps a dynamic reference to the extban manager. 2022-04-16 10:52:34 +01:00
Sadie Powell
8656e9cce1 Replace duplicated documentation with @copydoc. 2022-04-16 09:38:34 +01:00
Sadie Powell
0cf1eb4b04 Make the parameter field of ValidateParam const. 2022-04-16 09:17:27 +01:00
Sadie Powell
7266f8681d Add a numeric builder for the ERR_CHANOPRIVSNEEDED numeric.
This should make privilege errors more consistent.
2022-04-12 12:48:54 +01:00
Sadie Powell
fa8c035373 Use ERR_UNAVAILRESOURCE for things that should be retried later.
Also move it to the global numerics header to avoid duplication.
2022-04-12 00:52:10 +01:00
Sadie Powell
6830169ef1 Add a method for finding the next prefix mode above a rank. 2022-04-11 23:49:22 +01:00
Sadie Powell
79b1c44721 Add a method to ConfigTag to help with retrieving a single character. 2022-04-10 23:43:43 +01:00
Sadie Powell
7385ceccb1 Expose the invite announcement level to modules. 2022-04-07 20:00:52 +01:00
Sadie Powell
9e3784dc0b Fix converting a token list to a string.
Fixes showing oper privs in /CHECK.
2022-04-05 15:51:10 +01:00
Sadie Powell
4552856752 Use a consistent message format for end of list numerics. 2022-04-01 18:25:25 +01:00
Sadie Powell
056d0b4383 Pack the mode set more efficiently and add support for numeric modes. 2022-03-27 16:09:19 +01:00
Sadie Powell
414105e409 Add a typedef for the mode status bitset. 2022-03-27 16:09:19 +01:00