3
0
mirror of https://github.com/jlu5/PyLink.git synced 2024-11-27 13:09:23 +01:00
Commit Graph

150 Commits

Author SHA1 Message Date
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
James Lu
89699051d5 Services API rework
- Move nick/ident/host/gecos fetching from services_support into functions
- Remove the unused 'ident' argument from ServiceBot
- Rename the 'nick' argument in ServiceBot to 'default_nick'
- Define default nicks for the PyLink, Automode, and Games services
2017-08-21 21:51:45 -07:00
James Lu
d818c17072 control: don't spew "Stopping plugins" notices if none are loaded 2017-08-16 12:17:19 -07:00
James Lu
3b6c1e56c4 launcher: move reset_permissions() call into the permissions module 2017-08-16 11:21:06 -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
14bebd98e7 control: fix import loop with pylinkirc.classes 2017-08-07 17:06:56 -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
2ff0007e56 exttargets: add $realname target 2017-08-06 21:41:44 -07:00
James Lu
4379ef68ef Migrate coremods.permissions to snake case 2017-08-02 22:24:23 +08:00
James Lu
f15f27168a services_support: log the reason as well when a service bot is killed 2017-08-02 22:15:19 +08:00
James Lu
3eb2c6bbf7 service_support: raise KILLs to service bots to INFO 2017-07-30 00:32:59 +08:00
James Lu
91659ea992 core: Properly track whether we should actually remove the PID file
Previously, PyLink spuriously removed PID files even if -n/--no-check-pid was set or if PID file checking caused PyLink to quit
2017-07-20 21:13:01 +08:00
James Lu
5a5a98c4ef services_support: migrate to conf.conf['pylink'], make the realname option optional 2017-07-14 05:51:40 -07:00
James Lu
a164924ce5 Merge branch 'conf-host' of https://github.com/cooper/PyLink into devel 2017-07-14 05:38:45 -07: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
d57e141fbc control: log the name of the PID file on shutdown 2017-07-12 22:22:08 -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
bb2b57f9dd control: mark signal handlers as private 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
Mitchell Cooper
a1dfa14d20 allow realname to be specified the same way 2017-07-12 18:53:02 -04:00
Mitchell Cooper
33630e8f9d allow host to be specified in service bot block or per-network 2017-07-12 18:38:26 -04:00
James Lu
0e4737e59d handlers: strip away '(on $network)' portions of relay oper types if the source and target netname are the same 2017-07-12 07:57:07 -07:00
James Lu
9a2bff25ee control: migrate to new log_setup() name 2017-07-12 07:50:34 -07:00
James Lu
50e7b0ab13 Limit signon time in WHOIS replies to service bot targets
Faking signon time for relay clients, etc. is misleading...
2017-07-12 07:49:19 -07:00
James Lu
556c2efb0a Make showing startup time an option (whois_show_startup_time) 2017-07-12 07:44:18 -07:00
James Lu
adaa6021f9 handlers: use conf.conf['pylink'] 2017-07-12 07:35:51 -07:00
James Lu
6a0859f56a handlers: send PyLink's connect time via 317 (RPL_WHOISIDLE) 2017-07-12 07:32:50 -07:00
James Lu
7c5f1533a0 handlers: fix weirdly named variables 2017-07-12 07:32:40 -07:00
James Lu
883f9199ec control: move rehash signal to SIGUSR1, and shutdown on SIGHUP (terminal close)
PyLink technically isn't a daemon, so it's a bit odd to have it linger around after the controlling terminal has died.
2017-07-02 21:19:04 -07:00
James Lu
a204d2b2db core: convert IrcUser calls to User 2017-06-30 21:44:31 -07:00
James Lu
7d68c03101 various: convert sortPrefixes/getPrefixModes calls to snake case 2017-06-30 21:40:05 -07:00
James Lu
61ed209abb coremods, plugins: migrate to snake case for protocol communication 2017-06-30 21:30:20 -07:00
James Lu
ea455436c1 control: fix REHASH for 2.x protocol modules 2017-06-30 00:41:29 -07:00
James Lu
10bca676fc coremods, plugins: migrate to snake case 2017-06-29 23:01:39 -07:00
James Lu
748c1bc158 coremods: migrate irc.proto calls to irc 2017-06-25 02:09:55 -07:00
James Lu
f80c5df971 control: log the start and end of rehash to INFO 2017-06-02 08:46:27 -07:00
James Lu
60a0bcdc7a Rename config option log:stdout -> log:console
Closes #386.
2017-06-02 08:42:32 -07:00
James Lu
6e8f618f80 control: don't duplicate config validation 2017-06-02 08:34:59 -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