Ed Kellett
047b56e70e
chmode: Generate a canonical mode string
...
Primarily because I want to use it in tests, but it also means people
reading override snotes don't have as much mental overhead. I hope.
2020-11-08 00:26:27 +00:00
Ed Kellett
ea41b24fd4
chmode: Get elevated access for op-only queries
2020-11-08 00:26:27 +00:00
Ed Kellett
04952c32ad
Rework channel mode handling
...
Incoming MODE processing is split into a parsing step and an execution
step, instead of a mode's effector function being involved in its own
parsing. Modes can no longer use custom logic to control their parsing,
and instead supply a combination of CHM_* flags to the parser. As a
result, we know before we try to effect any mode changes what all of
them will be.
The reauthorize hack for override is no longer necessary. A side effect
of its introduction was that `MODE #foo b x!y@z` no longer worked; in
removing it we restore that behaviour.
We gain the ability to reject various invalid inputs that:
- mutate or query unknown modes
- supply excess mode arguments
- query modes that can't be queried
In each case, whether we *should* reject it is an open question; for now
I'm rejecting the first one.
2020-11-08 00:26:27 +00:00
Ed Kellett
b5c8d52d82
chmode: Make mode table manageable
2020-11-08 00:26:27 +00:00
Doug Freed
5d7273614b
m_cap: simplify cap_req, remove multiline
...
Spec doesn't really allow multiline here, so don't use it
2020-11-07 16:27:24 -05:00
Ed Kellett
cbc31cce4d
Document s2s ECHO
2020-11-06 19:42:55 +00:00
Ed Kellett
7fd01f9f0c
m_message: Initiate message echo on target server
2020-11-06 19:42:55 +00:00
Eric Mertens
0bece97692
Remove sno_whois mention in example configuration ( #48 )
2020-11-06 09:04:14 -08:00
Ed Kellett
faf98b8e20
Update news
2020-11-04 18:08:56 +00:00
Ed Kellett
861a544541
m_webirc: Blow away ident if we've got it
...
Previously, anyone on the WEBIRC gateway would get its ident if it
advertised one, which seems wrong to me.
This allows ident to be used with WEBIRC while still letting users send
their own ~username in band.
2020-11-02 19:59:29 +00:00
Ed Kellett
05e3afc87e
Explanatory comment for LFLAGS_FAKE
2020-11-01 04:33:30 +00:00
Ed Kellett
5409fbc0f7
Mark fake test clients, don't assert they're real
2020-11-01 04:33:30 +00:00
Ed Kellett
d0a8ae2cf2
travis: Enable assertions correctly
2020-11-01 04:33:30 +00:00
Ed Kellett
017e37530e
Multiply out handle_remote_unresv
2020-11-01 04:20:44 +00:00
Ed Kellett
f57d88bc71
Remove shared blocks
2020-11-01 04:20:44 +00:00
Ed Kellett
c07751a50d
Remove hardcoded TLSv1 disables
2020-11-01 04:07:24 +00:00
Ed Kellett
c1f9603bba
Add a comment explaining match_arrange_stars
2020-10-31 17:00:25 +00:00
Ed Kellett
7741039058
match: assert mask_match mask is not too long
2020-10-31 17:00:25 +00:00
Ed Kellett
57fbf05388
Fix a corner case of superset matching
...
The algorithm we're using gets stuck if it has a ? and can only see a *
to feed to it, even if it could skip over that * and consume a character
following it. Remedy this by rearranging the input so * always precedes
? in runs of wildcards, so when we're matching ? we know we can skip
things.
2020-10-31 17:00:25 +00:00
Ed Kellett
bc6e29e3b0
Update gitignore
...
(shhhh)
2020-10-31 17:00:25 +00:00
Ed Kellett
83e9a49847
Add (some failing) tests for mask matching
2020-10-31 17:00:25 +00:00
Ed Kellett
625cbb195b
Refactor clear_out_address_conf*
2020-10-31 16:00:02 +00:00
Ed Kellett
35eccf4930
Rename UMODE_SSLCLIENT, IsSSLClient
2020-10-31 16:00:02 +00:00
Ed Kellett
d1239f613f
Document secure blocks
2020-10-31 16:00:02 +00:00
Ed Kellett
1cf798beb1
Add secure{} blocks
2020-10-31 16:00:02 +00:00
Ed Kellett
bbdc439aa3
Replace IsInsecure with IsSecure
2020-10-31 16:00:02 +00:00
Ed Kellett
1a16d47edb
authproc: Don't try to notice dead clients
2020-10-28 21:34:56 +00:00
Ed Kellett
26c3681f7c
Delete extensions/spy_*,sno_whois
2020-10-28 21:19:36 +00:00
Ed Kellett
6ec9c49fc3
Update news
2020-10-28 15:32:35 +00:00
Ed Kellett
f4b4216a9f
m_message: global snote when massnotice is used
2020-10-27 23:52:24 +00:00
Eric Mertens
67ab06dd8a
Combine stats A output parameters ( #35 )
...
Every other use of RPL_STATSDEBUG follows the format: <letter> :<text>
This case appeared to slip through because it's two-word argument is encoded
in a single `->data` buffer.
2020-10-27 16:39:38 -07:00
Ed Kellett
0f8ec93849
helpops: change umode char to h
2020-10-27 13:53:01 +00:00
Ed Kellett
7d84719d68
Unify oper:{global,local}_kill
2020-10-25 20:02:03 +00:00
Ed Kellett
8a776ce65c
cap_realhost: neaten oper IP tag check
2020-10-24 16:19:52 +01:00
Ed Kellett
272e4a7d33
cap_realhost: Don't send realhost to non-opers
...
If they can see it it's already in the message source
2020-10-24 16:19:52 +01:00
Ed Kellett
3b4731951f
Implement oper realhost view via a hidden cap
2020-10-24 16:19:52 +01:00
Ed Kellett
0862875dd8
Add extensions/cap_realhost
2020-10-24 16:19:52 +01:00
Ed Kellett
71f10f833f
Add a cap_change hook
2020-10-24 16:19:52 +01:00
Ed Kellett
d0dc83b60a
Manage help indexes properly in makefile
2020-10-23 14:25:38 +01:00
Ed Kellett
63cad9d882
Untrack help indexes
2020-10-23 14:25:38 +01:00
Ed Kellett
6ee7c05cfc
Undo overzealous seddery
2020-10-23 12:57:02 +01:00
Ed Kellett
3dcaa851f4
m_testline: Complain on formerly-silent failures
2020-10-23 10:28:55 +01:00
Ed Kellett
f6b5e5382e
Document /testkline
2020-10-23 10:28:55 +01:00
Ed Kellett
4dc6ff3dd9
Add /testkline
2020-10-23 10:28:55 +01:00
Ed Kellett
6b3ae7e7b7
Add a comment explaining ITER_COMM_CHANNELS
2020-10-21 20:42:02 +01:00
Ed Kellett
25f673bfde
um_callerid: Use newer common channel iteration
2020-10-21 20:24:40 +01:00
jesopo
b9b28600d7
"server-side ignore" is an incorrect description of umode +g
2020-10-21 13:21:58 +01:00
Ed Kellett
f3439650c0
m_cap: Try to append caps even if one is too long
2020-10-19 19:30:43 -04:00
Ed Kellett
738b5d291e
Mint CLICAP_FLAGS_PRIORITY
2020-10-19 19:30:43 -04:00
Ed Kellett
9f9e21dfbe
Kill CLICAP_FLAGS_REQACK
2020-10-19 19:30:43 -04:00