Commit graph

3719 commits

Author SHA1 Message Date
Ed Kellett 744ac30804
filter: match in two passes, before and after stripping 2019-10-06 19:24:32 +01:00
Ed Kellett fccc6d5669
filter: move to extensions 2019-10-06 19:24:31 +01:00
Ed Kellett 4950a9436c
filter: bump version 2019-10-06 19:24:31 +01:00
Ed Kellett f982238e91
filter: use a static buffer instead of strdup 2019-10-06 19:24:31 +01:00
Ed Kellett fc7fbe6d20
filter: add version number 2019-10-06 19:24:30 +01:00
Ed Kellett 7bb7f89911
filter: send a numeric error for ACT_DROP 2019-10-06 19:24:30 +01:00
Ed Kellett 81e41406f4
filter: add #defines for nick,user,host 2019-10-06 19:24:30 +01:00
Ed Kellett 11c11f30e7
filter: don't give the target of PMs to filters 2019-10-06 19:24:29 +01:00
Ed Kellett 3fbb1d7aeb
filter: include identified marker 2019-10-06 19:24:29 +01:00
Ed Kellett d09c55338f
filter: drop messages if we're ACT_KILLing them 2019-10-06 19:24:29 +01:00
Ed Kellett 86ee00db91
filter: Filter only locally-sourced messages
(Assume the remote server filtered remote ones.)
2019-10-06 19:24:28 +01:00
Ed Kellett 6a14bf789b
filter: kill last or we can't send the snote 2019-10-06 19:24:28 +01:00
Ed Kellett a2d9c49410
Add filter.c 2019-10-06 19:24:28 +01:00
Ed Kellett 1905ab5f7d
Depend on hyperscan 2019-10-06 19:24:25 +01:00
Aaron Jones a5c6d66ac8
Travis CI: Bump to Ubuntu Bionic 18.04 LTS
Also bump Linux compilers from (GCC 4.8, GCC 4.9, GCC 5, GCC 7,
GCC 8, Clang 3.9, Clang 4.0, Clang 5.0, Clang 6.0) to (GCC 7,
GCC 8, Clang 7, Clang 8). There's no need to test against every
ancient compiler under the sun. Furthermore, we no longer need
an apt sources list for Bionic.

[ci skip] (Tested already <https://travis-ci.org/charybdis-ircd/charybdis/builds/594225622>)
2019-10-06 14:55:52 +00:00
Aaron Jones 52fae04da0
Merge pull request #285 from edk0/ratelimits
Remove ratelimits on /stats and /motd when they don't have a server parameter
2019-09-15 19:27:39 +00:00
Ed Kellett 20276d4011
m_motd: don't ratelimit with no server argument 2019-09-15 20:05:51 +01:00
Ed Kellett e902e16974
m_stats: don't ratelimit with no server argument 2019-09-15 20:05:51 +01:00
Simon Arlott f47ac7081b
Don't enable warnings on osx 2019-09-15 12:56:55 +01:00
Simon Arlott 400e650809
librb: Fix nossl 2019-09-15 12:33:56 +01:00
Simon Arlott b7660ea49d
librb: Fix nossl 2019-09-15 11:43:52 +01:00
Simon Arlott ce960aa5f0
travis: Use newer versions of Clang 2019-09-15 11:41:41 +01:00
Simon Arlott 8679c0fe3c
Fix Clang 6 compiler warnings 2019-09-15 11:28:48 +01:00
Simon Arlott a4fe4b8191
travis: Remove -Wno-unused-variable 2019-09-15 11:14:38 +01:00
Simon Arlott 4b7abcfb7d
librb: Avoid unused variable warning 2019-09-15 11:13:54 +01:00
Simon Arlott 53aeb0305a
librb: Specify -Wno-unused-parameter 2019-09-15 11:12:44 +01:00
Simon Arlott 5889d67dea
travis: Don't use -Werror on clang 2019-09-15 11:04:28 +01:00
Simon Arlott a52e946303
travis: Notify on IRC 2019-09-15 11:00:50 +01:00
Simon Arlott e52893db93
Fix GCC 8 compiler warnings 2019-09-15 10:57:53 +01:00
Simon Arlott b55caab91e
travis: Ignore more unused warnings 2019-09-15 10:44:05 +01:00
Simon Arlott b3a987ed15
ircd: Use a larger buffer for ilog() buf2 2019-09-15 10:41:33 +01:00
Simon Arlott 6769ac13a2
travis: Ignore unused-parameter warnings 2019-09-15 10:26:35 +01:00
Simon Arlott c4c1bf3b79
librb: Fix GCC 8 warning; 640 bytes should be enough 2019-09-15 10:25:25 +01:00
Simon Arlott e89a399f94
ircd: Zero out the global_client_list
Otherwise we unconditionally add "me" to it twice in some unit tests,
which results in a loop in the list.
2019-09-15 10:22:26 +01:00
Simon Arlott 0e5b57c40b
travis: Build with GCC 7 and GCC 8 2019-09-15 10:02:11 +01:00
Simon Arlott bcd241da68
Fix compiler warning for SeesOper 2019-09-15 10:00:56 +01:00
Simon Arlott 004007982a
travis: Compile with warnings as errors 2019-09-15 09:57:45 +01:00
Aaron Jones 2f2a26fe9d
Merge pull request #283 from edk0/grant
m_grant improvements
2019-09-14 23:39:40 +00:00
Ed Kellett f7cc54c1ba
Add help for GRANT 2019-09-15 00:35:55 +01:00
Ed Kellett b143f5e3bd
m_grant: match "deoper" case-insensitively 2019-09-15 00:35:55 +01:00
Ed Kellett ebd0f4db7a
m_grant: remove a confusing line 2019-09-15 00:35:55 +01:00
Ed Kellett 7f373431d0
m_grant: use AV2 2019-09-15 00:35:55 +01:00
Ed Kellett 910f883959
m_grant: propagate privset changes 2019-09-15 00:35:55 +01:00
Ed Kellett bdc87b5f37
m_grant: maintain privilegeset refcounts 2019-09-15 00:35:55 +01:00
Ed Kellett 6119faa9a0
charybdise m_grant 2019-09-15 00:35:55 +01:00
Ed Kellett c1649fd04d
Use the m_grant from ircd-seven
Charybdis' rewritten m_grant introduces at least one serious bug without
providing any apparent benefit. I think the best solution here is the
easiest one.

The bug in question is that an empty mode change is triggered after
seven's grant has done its work, and this is necessary in order to
give umodes granted by oper privileges a chance to update. The rewrite
removes this, generating a mode change only if it wants to change the
state of +o, which means the grant victim can keep privileged modes they
no longer have access to, or fail to gain new ones.
2019-09-15 00:35:55 +01:00
Aaron Jones 8b7503c89a
Merge pull request #284 from edk0/drain
Add extensions/drain (port from ircd-seven)
2019-09-14 21:21:38 +00:00
Janik Kleinhoff a0d1df9f38
extensions/drain: remove superfluous includes 2019-09-14 21:13:11 +01:00
Ed Kellett b674a619eb
Add extensions/drain
This takes the simplest possible approach: load the module and you're in
drain mode.
2019-09-14 21:13:11 +01:00
Aaron Jones b9da417b4e
Merge pull request #282 from edk0/propagate-oper
Propagate OPER
2019-09-13 12:15:06 +00:00