3
0
mirror of https://github.com/jlu5/PyLink.git synced 2024-11-27 21:19:31 +01:00
Commit Graph

39 Commits

Author SHA1 Message Date
James Lu
80188c3673 Sort imports via isort 2019-07-14 15:12:29 -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
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
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
2535aa145f corecommands: fix unloading plugins that define hooks
This fixes a regression from 5e92aefcd4.
2017-09-23 13:39:13 -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
d79f1766b6 classes, coremods: migrate to irc.is_* 2017-08-28 20:13:25 -07:00
James Lu
f439267129 Allow limiting login blocks to opers & certain hosts
Closes #502.
2017-08-07 21:44:15 -07:00
James Lu
dd1444dcd9 corecommands: block 'identify' from being used by command proxies such as networks.remote
This would have pretty bad unintentional consequences...
2017-08-07 16:31:28 -07:00
James Lu
8059f3f7fc Allow specifying login blocks that are local to certain networks 2017-08-07 16:16:17 -07:00
James Lu
21a39de0b4 corecommands: alias 'identify' to 'login' and 'id' 2017-08-07 16:15:54 -07:00
James Lu
4379ef68ef Migrate coremods.permissions to snake case 2017-08-02 22:24:23 +08:00
James Lu
2e7fed84c1 IRCNetwork: mark connection_thread, pingTimer, socket, and queue as private 2017-07-12 22:56:30 -07:00
James Lu
3cc6ea1e88 corecommands: remove duplicate error logging when REHASH fails 2017-07-12 22:44:51 -07:00
James Lu
61db5d616d corecommands: use irc.get_hostmask instead of formatting the caller's hostname manually 2017-07-12 22:22:08 -07:00
James Lu
74f68c2176 control: mark rehash and shutdown as public 2017-07-12 22:22:08 -07:00
James Lu
22e6992770 core: consistently call die() with irc as a keyword argument 2017-07-12 22:22:08 -07:00
James Lu
10bca676fc coremods, plugins: migrate to snake case 2017-06-29 23:01:39 -07:00
James Lu
04f88df385 Actually use 'irc' in main() and die() as a keyword argument (per docs) 2017-05-12 19:19:52 -07:00
James Lu
348572bcb6 Irc: rewrite sendq to use queue.Queue, and add an upper bound (maxsendq)
Closes #430. Closes #442.
2017-03-31 17:41:56 -07:00
James Lu
40fa4f71bc corecommands: add a 'clearqueue' command to force clear queue muckups (#441) 2017-03-28 22:39:11 -07:00
James Lu
f497044777 corecommands: use utils.PLUGIN_PREFIX in 'unload' 2017-03-25 14:08:37 -07:00
James Lu
fe3fa2872d corecommands: remove extraneous irc.checkAuthenticated() call 2017-02-24 17:49:54 -08:00
James Lu
7b5fcc3219 corecommands: use irc.error() in login fail wrapper 2016-12-16 19:06:33 -08:00
James Lu
5a066bfde4 corecommands: port to use the permissions API (#367) 2016-12-09 21:43:58 -08:00
James Lu
b1e4b34b79 Switch 'identify' to use the new login backend, add passlib to README dependencies
This new backend supports optional encryption (sha256_crypt / sha512_crypt via passlib). Closes #322.
2016-11-19 17:21:45 -08:00
James Lu
93ca62aa49 Revamp configuration to support multiple accounts (#319) 2016-11-07 21:01:28 -08:00
James Lu
1ef89560e2 core: rename IrcUser.identified attribute to IrcUser.account 2016-07-29 20:16:05 -07:00
James Lu
8047186c58 plugins, coremods: remove usage of irc.conf (#273) 2016-07-27 17:02:04 -07:00
James Lu
150bfe8c66 corecommands: really fix 'reload' 2016-07-23 21:59:25 -07:00
James Lu
b79f391be6 corecommands: fix no-identify-in-channel logic 2016-07-13 19:32:39 -07:00
James Lu
9256500a23 corecommands: replace irc.msg() with irc.reply()
Thanks to @Techman- for pointing this out.
2016-07-13 19:20:11 -07:00
James Lu
cf40a38c14 corecommands: actually assign reload() output to update the module 2016-07-11 16:53:32 -07:00
James Lu
5d251d511a corecommands: fix wrong plugin module name causing 'unload' to not work
Plugin modules are now named 'pylinkirc.plugins.abcd' instead of just 'abcd', since the import system is absolute now.
2016-07-10 21:41:08 -07:00
James Lu
7a7b590295 corecommands: quick fix for 'reload' not updating things
The real issue is the 'unload' doesn't seem to cleanly unload things anymore. (Even though that was a pretty bad hack in the first place)

That needs to be cleaned up in the next release.
2016-07-07 22:48:38 -07:00
James Lu
bcc84b8618 core: remove references to plugins/protocols_folder (#259) 2016-07-02 23:58:21 -07:00
James Lu
3a57e8d595 Split coreplugin.py into coremods/
Closes #240.
2016-06-21 11:25:47 -07:00