James Lu
8855ef2a41
relay: don't break in removeChannel if irc.pseudoclient isn't set
2016-12-09 17:34:34 -08:00
James Lu
638b9dc84a
relay: rewrap help for LINKACL
...
More formatting changes to come.
2016-12-05 23:33:42 -08:00
James Lu
a57f194123
changehost: add options to match users by IP and realhost
2016-11-20 12:34:11 -08:00
James Lu
476f84a181
changehost: implement enforce exceptions
2016-11-20 12:33:58 -08:00
James Lu
d90f44c510
changehost: explicitly ignore PyLink internal clients
2016-11-20 12:04:30 -08:00
James Lu
501647805c
changehost: add optional vHost enforcement
2016-11-20 11:53:55 -08:00
James Lu
c77ad6faa9
bots: PseudoClient->client in help text & error messages
2016-11-18 23:13:56 -08:00
Ken Spencer
d467d27ecd
plugins: change remaining plugins over irc.error() use
2016-11-18 23:11:44 -08:00
Ken Spencer
289ab78052
plugins/bots: change over to irc.error() use
2016-11-18 23:10:45 -08:00
Ken Spencer
940430b075
plugins/automode: change errors over to irc.error() based use
2016-11-18 23:10:45 -08:00
James Lu
8ff292bd1f
automode: support remote channel manipulation in the form netname#channel
...
Closes #352 .
2016-11-12 12:20:25 -08:00
James Lu
691a8178b2
relay: implement 'showchan' with links info
...
Closes #353 .
2016-11-12 10:43:55 -08:00
James Lu
b94e11930e
structures: directly retrieve DB save delay in DataStore ( #303 )
2016-11-09 22:53:13 -08:00
James Lu
b0636b40ab
Finish the plugin migration to DataStore
...
Closes #303 .
2016-11-09 22:47:22 -08:00
James Lu
377df413ed
Irc: s/isServiceBot/getServiceBot/g ( #355 )
...
This function is renamed to better reflect its return value (ServiceBot object instead of boolean True).
2016-11-09 19:09:59 -08:00
James Lu
b0bd5d47ae
relay: fix logging format in spawnRelayUser error
2016-11-07 22:04:34 -08:00
James Lu
44743d860e
relay: don't break autoconnect anymore when there's a server conflict
...
This reverts most of commits 5c7524b
and f2a5e1d
.
2016-11-07 21:53:52 -08:00
James Lu
4246a3d113
relay: work on sane fallbacks when a network's SID goes missing ( #354 )
2016-11-07 21:47:53 -08:00
James Lu
b79e693808
exec: Drop 'raw' text logging to DEBUG for security purposes
...
Closes #347 .
2016-11-07 21:25:57 -08:00
James Lu
2d20256ed8
Relay: rework to use the permission system
...
This defines the following permissions:
Granted to opers by default:
- relay.create
- relay.destroy
- relay.claim
- relay.link
- relay.delink
- relay.linkacl.view
- relay.linkacl
Granted to all users by default:
- relay.linked
And the following which is not explicitly granted:
- relay.savedb
Closes #325 .
2016-11-07 21:22:52 -08:00
James Lu
e977c95520
Merge branch 'master' into devel
...
Conflicts:
VERSION
example-conf.yml
2016-11-02 22:28:39 -07:00
James Lu
9f43c0fe17
automode: fix typo in DB error message
2016-11-02 22:27:01 -07:00
James Lu
9f4c68f114
relay: skip channel TS check for Clientbot
...
(cherry picked from commit d230af1d5e
)
2016-10-22 20:59:34 -07:00
James Lu
d230af1d5e
relay: skip channel TS check for Clientbot
2016-10-22 20:45:43 -07:00
James Lu
a5d97c15e7
relay: disable nick collide messages to debug
2016-10-20 20:13:17 -07:00
James Lu
2ed8b68c44
relay: allow configuring custom relay server suffixes
...
Closes #333 .
(cherry picked from commit 3900833458
)
2016-10-20 19:10:47 -07:00
James Lu
386c71475a
servermaps: removing leading - from entries
2016-10-07 18:51:31 -07:00
James Lu
57b566286d
relay: make clientbot modesync more configurable ( #287 )
2016-09-25 20:07:16 -07:00
James Lu
4222cc30a8
relay, clientbot: implement clientbot mode sync
...
Closes #287 .
2016-09-25 20:07:16 -07:00
James Lu
13a42c17b2
servermaps: skip clientbot networks (servers aren't properly tracked)
2016-09-24 16:36:28 -07:00
James Lu
438838f81d
ServiceBot: handle autojoin additions even if bots haven't spawned yet
2016-09-24 12:33:57 -07:00
James Lu
7d20b70d33
relay_cb: fix UnboundLocalError when kicking a service bot
2016-09-24 12:20:18 -07:00
James Lu
b9d8ec5039
relay: listen to PYLINK_SERVICE_JOIN from services_support
2016-09-24 12:13:33 -07:00
James Lu
dfa75f6606
servermaps: simplify output format
...
Drawing all the |'s and `'s is a rather complex process, so just replace this with bullet-point output.
2016-09-24 12:02:43 -07:00
James Lu
60b595ea6f
servermaps: fix help for 'localmap'
2016-09-24 11:58:28 -07:00
James Lu
595bceda2e
servermaps: implement network maps over relay!
...
Local-only map is available too using the 'localmap' command.
2016-09-24 11:56:37 -07:00
James Lu
68c247f764
New servermaps plugin: displays network /map's from the PyLink server's perspective
2016-09-24 11:19:33 -07:00
James Lu
d59732f6dd
automode: simplify join routines to use ServiceBot.join() ( #326 )
2016-09-23 23:43:27 -07:00
James Lu
a040c3c7d2
ServiceBot: modularize join() for explicit channel joining ( #326 )
2016-09-23 23:43:07 -07:00
James Lu
3900833458
relay: allow configuring custom relay server suffixes
...
Closes #333 .
2016-09-23 22:49:04 -07:00
James Lu
d05917222d
relay: clobber colour codes in hosts
...
(cherry picked from commit b467da13b1
)
2016-09-20 07:01:16 -07:00
James Lu
df50b7b137
bots: allow JOIN/NICK/QUIT on ServiceBot clients
...
(cherry picked from commit 1c86f32003
)
2016-09-20 07:01:16 -07:00
James Lu
b467da13b1
relay: clobber colour codes in hosts
2016-09-20 06:58:04 -07:00
James Lu
e0f56a157d
relay_cb: remove dark gray from colours index
...
It's too hard to read on a dark background.
2016-09-19 21:56:12 -07:00
James Lu
1c86f32003
bots: allow JOIN/NICK/QUIT on ServiceBot clients
2016-09-19 18:23:11 -07:00
James Lu
c62dd272d6
relay_clientbot: display the remote channel in join/kick/etc relay, not the local channel
2016-09-19 17:40:50 -07:00
James Lu
e60c020634
relay_clientbot: redo color hashing to be more unique
2016-09-19 17:40:33 -07:00
James Lu
eaa09d68ce
Automode: limit 'list' permissions on all channels to opers
2016-09-12 11:26:31 -07:00
James Lu
838ea6bfc4
relay: skip iterating over modetype definitions during reverse mode lookup
...
This fixes a bug when setting +l on UnrealIRCd, where the type C mode definition is coincidentally also equal to 'l'. Reported by kevin via IRC.
2016-09-07 20:37:57 -07:00
James Lu
bbdffc797d
relay_clientbot: Implement relaying of text sent from service bots
2016-09-06 20:11:08 -07:00
James Lu
dd083b9b8d
relay: remove extraneous comment
2016-09-06 20:11:08 -07:00
James Lu
aacc3149ce
fantasy: don't error when bots are removed while processing (e.g. on shutdown)
2016-09-06 18:06:29 -07:00
James Lu
c5c77eeb97
protocols: chandata->channeldata for MODE and JOIN hooks
2016-09-02 17:52:19 -07:00
James Lu
9b38ca7d68
automode: join modebot client on setacc
...
Reported by kevin via IRC.
2016-08-31 22:23:55 -07:00
James Lu
e85cc684a1
relay_cb: respect allow_clientbot_pms in 'rpm' ( #292 )
2016-08-31 19:51:52 -07:00
James Lu
7eb5e59842
relay_cb: implement outgoing PMs from clientbot networks via an 'rpm' command
...
Closes #292 .
2016-08-31 19:48:17 -07:00
James Lu
7817898c14
relay_cb: distinguish between PM and private notice, switch to irc.msg()
2016-08-31 18:30:51 -07:00
James Lu
663d03ed2c
relay/clientbot: begin work on outgoing PMs to clientbot users ( #318 )
...
This still needs to implement PMs going the other way around, and should eventually distinguish between PMs and private notices.
2016-08-31 14:08:28 -07:00
James Lu
7bae4062b1
automode: log successful sync/add/remove/clear events
...
Closes #320 .
2016-08-31 13:32:50 -07:00
James Lu
1c4cb94a13
relay: block /OJOIN in claim
2016-08-27 19:09:02 -07:00
James Lu
3c7b201f57
protocols: rename 'oldchan' in MODE payloads to 'chandata'
2016-08-27 17:46:35 -07:00
James Lu
f890ddac1b
permissions, automode: work on default permissions & add example permissions config ( #190 )
...
- Fix possible type errors in add/removeDefaultPermissions by converting permlist values to sets.
- Fix wrong permission string being checked in automode.<command>.#channel
- automode: register and unregister default permissions on load/unload.
- permissions: add an 'also_show' argument to checkPermissions(), to display alternative permissions that weren't directly checked.
2016-08-25 11:45:57 -07:00
James Lu
03a780f397
automode: reorder functions in a way that makes more sense
2016-08-25 11:10:55 -07:00
James Lu
104c0cef4b
automode: switch from irc.checkAuthenticated to new-style permissions
2016-08-25 00:58:19 -07:00
James Lu
09c98f66ff
relay: fix overzealous host normalization due to variable replacement during iteration
2016-08-21 18:06:53 -07:00
James Lu
5444b808b1
Revert "relay_clientbot: lowercase network name (stylistic choice)"
...
This reverts commit 42da216f5d
.
2016-08-21 17:28:33 -07:00
James Lu
b572c58223
relay: {} are valid nick chars too...
2016-08-20 17:36:24 -07:00
James Lu
e1fab8c153
relay: fix a typo in comment
2016-08-13 11:40:01 -07:00
James Lu
1c83f59baa
relay: rewrap some poorly placed comments
2016-08-13 11:03:58 -07:00
James Lu
63f40c9565
relay: delay RELAY_JOIN hooks to a second loop. Closes #311 .
2016-08-12 18:47:12 -07:00
James Lu
e75c0d075f
relay: on clientbot, explain _why_ calling LINK twice is needed
2016-08-11 12:51:08 -07:00
James Lu
bdadb27466
relay: reverse getPrefixModes() output so the right mode order is passed to sjoin()
...
This prevents users from bursted as "+@~UID" instead of "~@+UID", for example.
2016-08-09 18:39:13 -07:00
James Lu
1660705658
exec: repr() eval output for proper formatting
...
This ensures that results that are an empty string, for example, are properly formatted as ''.
2016-08-09 10:57:31 -07:00
James Lu
c09ff6a706
relay_clientbot: fix config key name
2016-08-08 22:23:42 -07:00
James Lu
1b747bf09d
relay_clientbot: skip relaying non-PRIVMSGs for X seconds after connect
...
This can be configured via the option relay::clientbot_startup_delay, and defaults to 5 seconds.
2016-08-08 22:20:31 -07:00
James Lu
3878ae9e0d
relay_clientbot: skip to next channel for SQUIT payloads if no nicks are affected
2016-08-08 21:05:55 -07:00
James Lu
8636280b91
relay_clientbot: use channel specific user lists when relaying SQUIT
...
Closes #312 .
2016-08-08 20:59:15 -07:00
James Lu
b096c7a2e3
relay_clientbot: fix wrong key for clientbot_styles
2016-08-08 18:50:36 -07:00
James Lu
990f24938b
relay: convert / to . in hostnames on hybrid
...
Also, switch this check to a whitelist instead of a blacklist for better compatibility.
2016-08-07 15:16:37 -07:00
James Lu
81ffa93bad
relay: block attempts to LINK if local TS is lower than remote
...
Closes #301 .
2016-08-04 13:04:32 -07:00
James Lu
acd0c673cb
relay_cb: use safe_substitute, rename some fields, add SQUIT/SJOIN support
...
Closes #294 . Closes #304 . This renames the "nick" field to "sender", and "identhost" to "sender_identhost", to be less ambiguous when a message sender is a server.
2016-08-04 12:50:38 -07:00
James Lu
72da00d23c
relay: block clientbot networks from hosting relays
2016-08-04 10:55:00 -07:00
James Lu
7a0fd1caa3
relay: rework "target in channel" requirements for clientbot links
...
Closes #305 .
2016-08-04 10:47:06 -07:00
James Lu
66067c272f
relay: limit hosts to 63 chars, not 64
2016-08-03 00:21:30 -07:00
James Lu
197d9fc14a
commands: show topic only if it exists, disable TS output on clientbot
2016-08-02 23:57:18 -07:00
James Lu
a6258dd973
changehost: more friendly error when an expansion field is unavailable
2016-08-02 23:04:46 -07:00
James Lu
1cda5023c8
changehost: copy args before cloning, make $host expansion optional
2016-08-02 22:56:59 -07:00
James Lu
02b5f0b7e6
changehost: explicitly forbid $host from being expanded
...
This will cause recursion whenever applyhost is ran and a user matches a mask based on real host or IP, which haven't changed. Any suffix or prefix applied to $host will be reapplied, often leading to invalid hosts that are too long.
2016-08-02 22:17:23 -07:00
James Lu
eb032eb7f9
commands: explicitly sort mode lists in 'showuser' and 'showchan'
2016-07-31 21:46:33 -07:00
James Lu
f2a5e1dc78
relay: catch errors on remove_network() and ignore them
2016-07-31 20:36:27 -07:00
James Lu
1ef89560e2
core: rename IrcUser.identified attribute to IrcUser.account
2016-07-29 20:16:05 -07:00
James Lu
accd5b70b3
relay: show reasons when clientbot is force parted or kicked
2016-07-29 01:08:14 -07:00
James Lu
6bc3191077
relay: only block cmodes from relaying on clientbot ( #289 )
2016-07-29 00:54:29 -07:00
James Lu
8047186c58
plugins, coremods: remove usage of irc.conf ( #273 )
2016-07-27 17:02:04 -07:00
James Lu
42da216f5d
relay_clientbot: lowercase network name (stylistic choice)
2016-07-26 16:41:15 -07:00
James Lu
fa1ce45bf3
relay: add configurable list of nick globs to always tag
...
Closes #276 .
2016-07-26 16:01:42 -07:00
James Lu
af027e2288
networks: support protocol module reloading
...
Closes #177 .
2016-07-25 11:00:56 -07:00
James Lu
d008814de9
opercmds: make 'kick' treat channels case insensitively
2016-07-24 16:40:31 -07:00
James Lu
a2c5b11194
opercmds: make 'jupe' admin only
2016-07-24 16:40:23 -07:00
James Lu
a905f74800
relay/clientbot: rework KICK handling to send the right thing at the right times
...
Some of the logic was inverted so that the Clientbot would try to kick invalid things like GLolol/ovd, and send clientbot KICK payloads when it's supposed to forward an actual kick.
This also fixes KICKs from servers not being relayed by clientbot.
2016-07-24 11:55:46 -07:00