James Lu
9d459fab92
relay: fixes to support IDs as channel name
...
- Don't enforce local channel validity rules on the remote channel name
- Normalize channels to str before looking them up in the DB
2019-02-16 16:35:47 -08:00
James Lu
96815a0a32
relay: sanitize idents before mirroring them to IRC
2019-02-12 15:55:14 -08:00
James Lu
a9f59307c9
relay: use base64 as fallback if unidecode returns an empty string for nick
...
This is the case for e.g. nicks that are only an emoji.
2019-02-12 14:17:53 -08:00
James Lu
11b65ee809
relay: rework nick normalization with optional unidecode support
...
This will attempt to translate UTF-8 nicks to ASCII ones instead of doing the ugly '||||' replace.
Also, the fallback character for disallowed nick characters is now "-" instead of "|".
TODO: document relay::use_unidecode
Closes #561 .
2019-02-12 00:58:20 -08:00
James Lu
11e7589304
relay_clientbot: fix previous commit
2019-02-10 14:35:34 -08:00
James Lu
76f534ce84
relay_clienbot: fix rpm when UIDs are ints
2019-02-10 14:22:18 -08:00
James Lu
61c8677802
classes, relay_clientbot: more type safety for protocols/discord
2019-02-07 13:50:32 -08:00
James Lu
23cb7c173a
stats: hide login blocks not relevant to this network
2019-02-07 13:50:32 -08:00
James Lu
852c257e88
relay: remove use of re-entrant locks
...
This shouldn't be necessary anymore.
2018-12-27 11:58:39 -08:00
James Lu
bf9eb8d4ea
relay: fix incorrect in-place changes of modedelta modes
...
This caused the database to be filled with extraneous "-modename" entries when removing modes from the previous modedelta.
2018-11-30 10:21:51 -08:00
James Lu
d01a9fe9b4
antispam: more lookalike chars for o, \, #
2018-11-10 23:21:54 -08:00
James Lu
aa5412712a
antispam: more lookalike unicode chars
...
Courtesy of @nathan0
2018-11-10 10:20:41 -08:00
James Lu
32e9cc689e
antispam: filter away Unicode lookalike characters when processing
...
Based off 56b48e4e51
2018-11-07 16:16:46 -08:00
James Lu
dac8410b63
relay: shortcut if the remote network is not ready
2018-10-10 22:49:10 -07:00
James Lu
0b3793380b
relay: remove TCONDITION_TIMEOUT
2018-10-08 14:59:01 -07:00
James Lu
1ee93d2cc4
relay: remove world.started check, this shouldn't be needed anymore
2018-10-08 14:44:37 -07:00
James Lu
767ff15200
relay: add an explicit forcetag command
...
We used to be able to just /kill to forcetag, but with PyLink 2.0 kills actually get relayed.
2018-10-08 12:42:38 -07:00
James Lu
57faa1443a
relay: rename nick_collide() to forcetag_nick()
2018-10-08 12:41:52 -07:00
James Lu
20b3a61cd6
relay: simplify is_relay_client()
2018-10-08 12:12:09 -07:00
James Lu
7fb4c8da04
automode: manage persistent channels on the right network
2018-10-06 23:46:49 -07:00
James Lu
a3e18081a6
relay: don't relay as text modes being set on netburst ( #627 )
2018-09-21 21:53:34 -07:00
James Lu
5838d88404
networks: reload shared modules used by protocol modules too
2018-08-23 02:57:03 -04:00
James Lu
12f6bb5e18
relay: don't relay kill->kick when remotechan is None
2018-07-18 18:45:49 -07:00
James Lu
a1783ed2be
bots: "bots.joinclient" should be "bots.join" (matching the command name)
2018-07-11 22:16:05 -07:00
James Lu
f9611ef6bc
relay: grant CHANDESC permissions to opers if allow_free_oper_links is true
2018-07-11 21:56:29 -07:00
James Lu
71a24b8b9f
relay: remove noctcp, regdeaf, stripcolor from whitelisted umodes
...
Filter-type umodes don't work properly with relay yet.
2018-07-10 18:09:24 -07:00
James Lu
5ffc629bce
plugins/example: update word wrap note
...
As of PyLink 2.0, long paragraphs are automatically word-wrapped by irc.reply().
2018-07-10 18:04:25 -07:00
James Lu
bba235bba2
Update GitHub repository address
2018-07-08 12:54:10 -07:00
James Lu
c1f37c2236
relay: don't allow servers to forward KILLs
...
Closes #621 .
2018-07-08 12:49:30 -07:00
James Lu
086a5f4496
example-conf, relay, utils: replace 2.0-alpha4 references with 2.0-beta1
2018-06-26 14:44:07 -07:00
James Lu
c3bb0f7aca
relay: rework kill->kick forwarding to send from the sender network's subservers
...
This makes the kick message a lot neater.
Before:
* net1.relay has kicked GL/net1 from #test ((net2.relay) KILL FWD from GL/net2: test)
After:
* net2.relay has kicked GL/net1 from #test (KILL FWD from GL/net2: test)
2018-06-14 14:48:54 -07:00
James Lu
76b58c4432
relay: log chandesc changes to INFO
2018-06-12 02:36:37 -07:00
James Lu
77fd9475b6
relay: show channel descriptions before "created by" info
2018-06-12 02:33:29 -07:00
James Lu
8c42825612
relay: allow disabling free link access for all opers
2018-06-12 00:26:24 -07:00
James Lu
1b68bfadc6
coremods, plugins, protocols: drop now redundant allowAuthed=False in is_oper() calls
2018-06-11 23:56:44 -07:00
James Lu
2e3317ce07
relay: explicitly mention forwarding in relayed kill messages ( #520 )
2018-06-11 19:26:52 -07:00
James Lu
7d56b30582
opercmds: skip verbose formatting of kill reasons for internal targets ( #520 )
2018-06-11 19:26:51 -07:00
James Lu
5ecbc2750e
exec: fix textwrap error caused by passing the wrong type to reply()
2018-06-11 19:26:51 -07:00
James Lu
93fef9b923
relay: use match_text() to check forcetag_nicks globs
2018-06-11 18:51:30 -07:00
James Lu
73d0e153cf
relay: support relaying kills ( #520 )
...
Instead of always bouncing, kills to a relay client are now handled as follows:
1) If the target and source networks are both in any killshare pool, relay the kill entirely
2) Otherwise, iterate over all channels the kill target is in:
3) If the killer has claim access in a channel, forward the KILL as a kick
4) Otherwise, bounce the kill (so far, silently)
TODO: kill messages are currently very cluttered, we should make our parser deliver more concise strings...
* GL|unreal has quit (Killed (chary.relay (KILL from GL/chary: Killed (GL (test)))))
2018-06-11 18:34:52 -07:00
James Lu
9466813ba1
relay: switch to a flexible, pool-based configuration scheme for IP sharing
...
This deprecates the "relay::show_ips" and network-specific "relay_no_ips" options, replacing it with the "relay::ip_share_pools" list.
2018-06-11 17:29:29 -07:00
James Lu
17ffd1f640
automode: log mass-removals to INFO as well
2018-06-10 14:36:40 -07:00
James Lu
372e7fb405
automode: send delacc confirmations from the right client
...
Also bold some parts of the output for easier viewing.
2018-06-10 14:31:56 -07:00
James Lu
8608c72b16
automode: allow removing entries by entry numbers
...
Closes #506 .
This isn't the most efficient implementation because Automode entry lists are actually unordered...
So far we're relying on consistent sorting of entries between LISTACC and DELACC, and indrectly removing entries by comparing the entry list with remove_range's output.
2018-06-09 23:12:37 -07:00
James Lu
f8e3cfa346
antispam: strip IRC formatting by default before processing
...
Closes #615 .
2018-06-09 16:22:14 -07:00
James Lu
ebf7443d97
antispam: add a "block" verb, and make textfilter use it by default
...
Closes #616 .
2018-06-09 16:22:14 -07:00
James Lu
0ae7eb2563
relay_clientbot: allow overriding clientbot styles by network
...
Closes #455 .
2018-06-08 19:15:47 -07:00
James Lu
b1248524a9
relay: raise an error when trying to delink a leaf channel from another leaf network
...
Previously this would (confusingly) delink the channel from the network the command was called on instead of the intended target.
2018-06-08 18:45:45 -07:00
James Lu
180da83b4e
global: reply with a confirmation
...
We can also use this space to show the number of channels and networks announced to.
2018-06-08 18:28:41 -07:00
James Lu
f82ddb5336
global: allow configuring channels to exempt from announcements
...
Closes #453 .
2018-06-08 18:25:23 -07:00