James Lu
|
bfe8a23dbc
|
exttarget: use match_text() to match exttarget text fields
|
2019-12-25 16:04:58 -08:00 |
|
James Lu
|
b45fe4c121
|
exttargets.account: fix extraneous lowercasing of the network name
|
2019-12-25 15:58:18 -08:00 |
|
James Lu
|
80188c3673
|
Sort imports via isort
|
2019-07-14 15:12:29 -07:00 |
|
James Lu
|
4eb0420378
|
permissions: only whitelist the defined login:user, not all accounts
It's possible for login:user and login:accounts to be used together, although this is discouraged.
|
2019-06-26 13:18:32 -07:00 |
|
James Lu
|
c1158fd33a
|
exttargets: convert $account target to str before matching
Closes #639.
|
2019-06-26 13:18:32 -07:00 |
|
James Lu
|
c5b94cdf21
|
control: ignore virtual servers in rehash
|
2019-06-23 17:39:15 -07:00 |
|
James Lu
|
eba5d91299
|
Default hash method to pbkdf2-sha256 & allow customizing CryptContext options
This introduces a new login::cryptcontext_settings config option.
Closes #645.
|
2019-06-07 14:13:39 -07:00 |
|
James Lu
|
0ffbaa8e5e
|
control: suppress NotImplementedError when disconnecting networks on shutdown
|
2019-03-28 20:14:28 -07:00 |
|
James Lu
|
5e1da09901
|
control: don't remove network objects with virtual_parent on rehash
|
2019-02-08 15:10:21 -08:00 |
|
James Lu
|
77febfe69f
|
Allow disabling dynamic channels via a new "join_empty_channels" option
|
2018-10-27 18:48:12 -07:00 |
|
James Lu
|
e7b0458091
|
_state_cleanup_core: don't delete internal clients, period
|
2018-07-18 18:45:34 -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
|
a30921eeb8
|
classes: remove irc.conf (#422)
|
2018-06-11 23:44:59 -07:00 |
|
James Lu
|
3bea214cb0
|
classes: remove irc.botdata (#422)
|
2018-06-11 23:43:57 -07:00 |
|
James Lu
|
108d4b86d9
|
login: fix login for legacy accounts (#590)
|
2018-05-26 01:27:12 -07:00 |
|
James Lu
|
9e936f1612
|
Rewrite login handling (Closes #590)
* Move identify command and login helpers into coremods.login
- corecommands._login -> login._irc_try_login
* Add login._get_account() function to consistently fetch login block info
* Rename functions in coremods.login to snake case:
- checkLogin -> check_login
- verifyHash -> verify_hash
* Replace explicit returns in login checks with raising utils.NotAuthorizedError()
|
2018-05-25 23:50:55 -07:00 |
|
James Lu
|
c44aa64503
|
services_support: check service bot state, not is_internal_client before dynamically parting channels
If a channel still has e.g. relay users when the last local user leaves the channel, the services bots should stay put.
|
2018-05-09 20:47:51 -07:00 |
|
James Lu
|
2532042506
|
services_support: raise endburst handler priority
Other plugins may implement endburst handlers assuming that their service bots have already been created.
|
2018-05-05 13:07:28 -07:00 |
|
James Lu
|
01c22aac21
|
Revert "service_support: consistently rejoin all channels on kick and kill"
This is no longer needed with plugin-specific persistent channels.
This reverts commit 3c9dac7e6b .
|
2018-05-05 13:07:07 -07:00 |
|
James Lu
|
0ead868546
|
service_support: skip dynamic join/part hooks on bot-only servers
|
2018-04-20 19:35:06 -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
|
2f12a5b710
|
Initial work on dynamic service bot joining / parting (#265)
|
2018-04-12 12:45:33 -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
|
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
|
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
|
30bcd8ca79
|
control: remove check for _connection_thread (removed in select rework)
|
2018-03-17 12:18:34 -07:00 |
|
James Lu
|
d172831805
|
conf: rename methods to snake case (#523)
|
2018-03-02 20:23:48 -08:00 |
|
James Lu
|
3e656cd943
|
utils: mark reset_module_dirs, load_plugin, get_protocol_module as private
|
2018-03-02 20:23:47 -08:00 |
|
James Lu
|
1cdf16f5c9
|
various: migrate utils.loadPlugin, getProtocolModule, resetModuleDirs calls to snake-case (#523)
|
2018-03-02 20:23:47 -08:00 |
|
James Lu
|
bea2ea8ebd
|
plugins, coremods: migrate (un)registerService calls to snake case (#523)
|
2018-03-02 20:23:47 -08:00 |
|
James Lu
|
9e3f412f0b
|
log: rename methods to snake case (#523)
|
2018-03-02 20:23:47 -08:00 |
|
James Lu
|
ad5a11bf34
|
control: skip networks that fail to initialize on rehash
This follows the launcher fix in 8321485315 .
|
2018-03-02 20:23:47 -08:00 |
|
James Lu
|
e446e0e27b
|
control: continue handling SIGUSR1 as rehash for compat with older 2.0 versions
|
2018-01-21 13:36:29 -08:00 |
|
James Lu
|
44be5910e0
|
Revert "control: move rehash signal to SIGUSR1, and shutdown on SIGHUP (terminal close)"
This wasn't an incredibly popular decision because it broke a simple 'pylink &'
This reverts commit 883f9199ec .
Conflicts:
coremods/control.py
|
2018-01-21 13:31:15 -08:00 |
|
James Lu
|
8490bee634
|
handlers: pick the highest prefix when displaying status in WHOIS
This fixes a regression from aa44bc15a3
|
2017-12-12 12:46:43 -08:00 |
|
James Lu
|
d4cbf1d2af
|
services_support: fix rejoin-on-kill to the main service bot
Clear the irc.pseudoclient state on kill as the respawning code will check for it first and reuse UIDs even if they don't exist.
|
2017-11-12 10:54:30 -08:00 |
|
James Lu
|
d0dff2c5ae
|
Move permission enumeration to runtime, fix default perms not applying at startup
Closes #542.
|
2017-10-22 00:08:16 -07:00 |
|
James Lu
|
eca40a3d7c
|
coremods/handlers: implement cleanup code for visible-state-only servers
Closes #536.
Closes #517.
|
2017-10-07 21:49:17 -07:00 |
|
James Lu
|
2535aa145f
|
corecommands: fix unloading plugins that define hooks
This fixes a regression from 5e92aefcd4 .
|
2017-09-23 13:39:13 -07:00 |
|
James Lu
|
ae06484aea
|
exttargets: tweak docstring syntax for better readability
|
2017-09-05 19:19:44 -07:00 |
|
James Lu
|
d3892a85be
|
Add $service exttarget for matching service bots
|
2017-09-05 19:19:01 -07:00 |
|
James Lu
|
5e92aefcd4
|
Implement priorities in utils.add_hook()
This changes world.hooks to store lists of tuples indicating (priority, hook_func).
|
2017-09-02 21:17:50 -07:00 |
|
James Lu
|
82a7b914b6
|
Move control.tried_shutdown to world.shutting_down
|
2017-08-31 13:36:50 -07:00 |
|
James Lu
|
94e05a6233
|
services_support: fix clientbot service spawning when irc.pseudoclient exists but isn't in the user index
|
2017-08-30 19:50:25 -07:00 |
|
James Lu
|
cad55097f1
|
core: reuse existing service client UIDs for all service bots
This prevents nick collision wars caused by spawn_service when an ENDBURST hook for the uplink is received multiple times.
|
2017-08-30 19:29:46 -07:00 |
|
James Lu
|
d79f1766b6
|
classes, coremods: migrate to irc.is_*
|
2017-08-28 20:13:25 -07:00 |
|
James Lu
|
ba649fb8b4
|
utils, exttargets: add checks for channel presence
|
2017-08-25 02:31:26 -07:00 |
|
James Lu
|
0bb4a35c6f
|
Support pre-auth irc.pseudoclient enumeration & configurable altnicks
Closes #516. Closes #288.
|
2017-08-21 23:05:56 -07:00 |
|