3
0
mirror of https://github.com/jlu5/PyLink.git synced 2024-11-28 05:29:25 +01:00
Commit Graph

3550 Commits

Author SHA1 Message Date
James Lu
3e07239db4 antispam: don't kill users if they quit after previous punishments 2018-04-13 22:18:03 -07:00
James Lu
dd8f9411b6 antispam: filter protection-triggering messages from reaching other plugins (#359) 2018-04-13 22:15:24 -07:00
James Lu
3825b93dee Initial pass of a mass-highlight blocking plugin (#359) 2018-04-13 22:08:37 -07:00
James Lu
4d9fbc55ba Merge branch 'wip/dynamic-services' into devel 2018-04-13 22:08:28 -07:00
James Lu
3c9dac7e6b service_support: consistently rejoin all channels on kick and kill
This is the cheap fix to part one of #265: "When a services client is killed, it won't join any relay leaf channels"
2018-04-13 20:34:26 -07:00
James Lu
4cdc19ac78 relay: fix is_internal_client call 2018-04-13 20:31:56 -07:00
James Lu
2f12a5b710 Initial work on dynamic service bot joining / parting (#265) 2018-04-12 12:45:33 -07:00
James Lu
2cb4a06e64 commands: report times in showuser, showchan in UTC
XXX: we could perhaps use abstraction to this since we're repetitively chaining commands
XXX: 'ts' is not type-safe yet, some protocol modules are storing it as a string?!
2018-04-12 10:58:09 -07:00
James Lu
25d24e9bb2 Use non-blocking sockets again, since Linux select() doesn't guarantee that recv() won't block 2018-04-12 10:58:09 -07:00
James Lu
bbc7a981ba example-conf: tweak some more defaults for clarity
(cherry picked from commit 66ec3d9755)

Conflicts:
	example-conf.yml
2018-04-10 22:31:24 -07:00
James Lu
c82b12d9d6 example-conf: clarify nick/ident setting on clientbot
(cherry picked from commit 170d793939)
2018-04-10 22:29:43 -07:00
James Lu
c7159b9cad core: move clearing channels on kick/part to coremods/handlers
This is for consistency with the rest of the state cleanup code.
2018-04-07 22:44:00 -07:00
James Lu
16faac83eb core: delete empty permanent channels when -P is set on them 2018-04-07 22:38:19 -07:00
James Lu
6bcf7d325f PyLinkNetworkCore: add get_service_option()
Closes #574.
2018-04-07 22:20:35 -07:00
James Lu
138a52611e classes: oops, actually tell the queue thread to abort before we wait for it to stop 2018-04-07 22:12:17 -07:00
James Lu
80cbd7a257 classes: make disconnections more synchronized
- Make ping timer abort instantly if the network is dead
- Shut down the read and write parts of the socket separately, and only close the socket once both parts are done.
2018-04-07 21:56:10 -07:00
James Lu
84dbca4bda classes: thread socket connects once more since they block 2018-04-07 21:56:06 -07:00
James Lu
655221491c ServiceBot: log access denials to warning - closes #593 2018-04-07 20:22:55 -07:00
James Lu
0202d88124 PyLink 1.3-beta1 2018-04-07 16:40:24 -07:00
James Lu
66ec3d9755 example-conf: tweak some more defaults for clarity 2018-04-07 15:44:44 -07:00
James Lu
170d793939 example-conf: clarify nick/ident setting on clientbot 2018-04-07 15:37:42 -07:00
Austin Ellis
3266e1a430 plugins/automode: fix SETACC example (#507)
Small fix to plugins/automode SETACC example given in help output.

(cherry picked from commit fa0dd100e5)
2018-04-07 15:16:10 -07:00
James Lu
c33f7437ef Rename servers::<netname>::server_suffix -> servers::<netname>::relay_server_suffix
(cherry picked from commit f75b1eb356)

Conflicts:
	example-conf.yml
	plugins/relay.py
2018-04-04 12:44:14 -07:00
James Lu
5339ddcf08 example-conf: reword description for servers::<netname>::relay_forcetag_nicks
(cherry picked from commit ba4e0aed85)
2018-04-04 12:40:28 -07:00
James Lu
95f806dc46 relay: allow defining server-specific nicks to always tags
Closes #564.

(cherry picked from commit 60c05af9ed)

Conflicts:
	example-conf.yml
2018-04-04 12:40:01 -07:00
Mitchell Cooper
3e16469b25 allow realname to be specified the same way
(cherry picked from commit a1dfa14d20)

Conflicts:
	coremods/service_support.py
	example-conf.yml
2018-04-04 12:35:48 -07:00
Mitchell Cooper
95dbacdba6 allow host to be specified in service bot block or per-network
(cherry picked from commit 33630e8f9d)
2018-04-04 12:32:58 -07:00
Mitchell Cooper
8200d92d23 relay: add server-specific server_suffix (closes #462) (#484)
(cherry picked from commit c92bb1e33b)

Conflicts:
	example-conf.yml
2018-04-04 12:30:02 -07:00
James Lu
f75b1eb356 Rename servers::<netname>::server_suffix -> servers::<netname>::relay_server_suffix 2018-04-03 17:43:02 -07:00
James Lu
7586989763 classes: really quash duplicate disconnect calls as much as possible 2018-03-31 11:53:50 -07:00
James Lu
d6952f0361 handlers: fix names of state cleanup function
Where did "stats cleanup" even come from?!
2018-03-31 00:09:30 -07:00
James Lu
ac4296b56b README: the Ubuntu nightlies PPA is no longer supported for trusty / 14.04
[skip ci]
2018-03-31 00:00:30 -07:00
James Lu
57d7a70933 launcher: mention that -c is explicitly kept as a no-op for PyLink <= 1.2.x
(cherry picked from commit c0a061eff3)

Conflicts:
	launcher.py
2018-03-30 23:52:19 -07:00
James Lu
c0a061eff3 launcher: mention that -c is explicitly kept as a no-op for PyLink <= 1.2.x 2018-03-30 23:44:47 -07:00
James Lu
b14f52b547 unreal: bump protocol version to 4017 (no changes needed)
(cherry picked from commit a2783d74c5)
2018-03-30 23:41:27 -07:00
James Lu
481561f972 control: don't spew "Stopping plugins" notices if none are loaded
(cherry picked from commit d818c17072)
2018-03-30 23:27:38 -07:00
James Lu
7dec2d15db launcher: daemonize and write PID file only after reading control options (-s/-R/-r)
(cherry picked from commit b9a66244f0)
2018-03-30 23:24:41 -07:00
James Lu
b9a66244f0 launcher: daemonize and write PID file only after reading control options (-s/-R/-r) 2018-03-30 23:23:10 -07:00
James Lu
2ddb0ee18f launcher: add experimental daemonization support
Closes #187.

(cherry picked from commit 0b0da2cfe6)
2018-03-30 23:07:30 -07:00
James Lu
7d5d5a385e control: handle SIGUSR1 as well as SIGHUP as rehash
This is used by the backported launcher for rehash.
2018-03-30 23:06:58 -07:00
James Lu
b5735702f7 Backport the launcher as of commit 8321485315 to 1.3
This adds support for stale PID file checking (#182), as well as the --rehash/--stop/--restart options
2018-03-30 23:06:01 -07:00
James Lu
79ff9f23fb setup: update PyPI classifiers
- Declare Python 3.6 support
- Change development status to Production/Stable

(cherry picked from commit dbc9d1690d)
2018-03-30 22:44:31 -07:00
James Lu
58e6527719 Irc: don't abort on BlockingIOError, ssl.SSLWantReadError, ssl.SSLWantWriteError
This effectively merges in the following 2.0 commits:
- "IRCNetwork: do not break on socket BlockingIOError" 6a90e99de4
- "IRCNetwork: also catch ssl.SSLWantReadError and ssl.SSLWantWriteError" ccc9f8e5c8
- "IRCNetwork: bump SOCKET_REPOLL_WAIT to 1 sec" 92460716d1

This fixes one part of #463.
2018-03-30 12:24:01 -07:00
James Lu
c54bb557dd relay: only look up nick once in normalize_nick
(cherry picked from commit ec8f744449)

Conflicts:
	plugins/relay.py
2018-03-30 12:14:48 -07:00
James Lu
78b515144f Bump VERSION to 1.3-dev
[skip ci]
2018-03-30 12:09:01 -07:00
James Lu
9d21a5269f relay: speed up shutdowns by not manually splitting off every relay server
The connection will soon be gone anyways, so this is fairly pointless.
2018-03-30 12:06:45 -07:00
James Lu
c978e1c52f relay: fix a typo: CLIENTBOT_WHITELISTED_UMODES -> CLIENTBOT_WHITELISTED_CMODES 2018-03-30 12:01:38 -07:00
James Lu
310ad345a3 SECURITY: normalize account names before checking network / oper filters
(cherry picked from commit a6c1beaad0)
2018-03-30 11:59:29 -07:00
James Lu
22efe1384c _login: tweak error message: opered up => opered
(cherry picked from commit 557f1578bc)

Conflicts:
	coremods/corecommands.py
2018-03-30 11:58:50 -07:00
James Lu
a6c1beaad0 SECURITY: normalize account names before checking network / oper filters 2018-03-30 11:55:29 -07:00