James Lu
5027feb553
Don't crash when REHASH loads a config file that's invalid
...
This was actually several bugs in one:
- The sys.exit() call in loadConf should be... toggleable
- loadConf printed errors but forgot to re-raise the actual exception it caught
- The error reply in the REHASH command was passing the wrong arguments to irc.reply(), which would cause an error within an error when it ran
2015-11-11 18:55:51 -08:00
James Lu
2008df047c
Fix logic in last commit
...
ts has to be set to orig_ts if missing, otherwise a later comparison would try to check for None <= some int, which would error
2015-11-08 15:14:03 -08:00
James Lu
b0e66ddd6e
classes: log offending hook data when a hook function errors
...
Closes #126 .
2015-11-08 10:56:09 -08:00
James Lu
2eeba50a2a
Modularize TS updating code ( Closes #129 )
2015-11-08 10:49:09 -08:00
James Lu
5715835bbb
fantasy: fix error handling if prefix isn't set
2015-11-01 20:55:01 -08:00
James Lu
c5b3441f6a
inspircd: alias SVSTOPIC to FTOPIC (reported by @siniStar7boy)
...
SVSTOPIC is used by services to set topics when m_topiclock (server side topic locking) is enabled on the IRCd. Unfortunately, usage of this isn't documented anywehere......
Basically, this makes PyLink treat it as a regular server topic change (FTOPIC), since the arguments are the same anyways.
2015-10-31 19:15:03 -07:00
James Lu
86d3cd3295
relay: only join the main pseudoclient once per channel
2015-10-25 10:39:56 -07:00
James Lu
7b444a72d8
coreplugin: log plugin loading/unloading to INFO
2015-10-25 10:39:47 -07:00
James Lu
59af8e196c
ts6: fix call to operup hook when handling EUID
2015-10-25 10:27:06 -07:00
James Lu
9a1eab3b82
commands: add command to set log level ( Closes #124 )
2015-10-25 10:18:51 -07:00
James Lu
5bccfcd170
coreplugin: log successful operups to INFO
...
TODO: Investigate why this doesn't work on charybdis/TS6...
2015-10-23 19:08:03 -07:00
James Lu
5ff82274e4
coreplugin: normalize logging punctuation for logins
2015-10-23 19:07:39 -07:00
James Lu
e4cfd1e1e6
Irc: log unrecognized commands to INFO too
2015-10-23 19:07:17 -07:00
James Lu
2bf9568fbb
relay: Home network lost connection. => Relay network lost connection.
2015-10-23 18:50:42 -07:00
James Lu
b3ab604b88
utils: return the bound function in add_cmd/add_hook
...
TODO: allow utils.add_cmd/add_hook to be called as a decorator WITH a name argument
2015-10-23 18:47:11 -07:00
James Lu
cecb7f3800
plugins: chmod -x
2015-10-23 18:31:48 -07:00
James Lu
17a2dcd21f
plugins: use irc.reply(...) instead of irc.msg(irc.called_by, ...) whereever possible
2015-10-23 18:29:10 -07:00
James Lu
e942b411f1
classes: introduce irc.reply()
2015-10-23 18:29:01 -07:00
James Lu
d14cf3c7cf
Move (un|re)?load, identify commands to coreplugin
...
This is so the commands plugin, which includes other generic (but not essential) commands, can be more easily reloaded.
2015-10-23 18:22:29 -07:00
James Lu
1b8f1ff95e
commands: s/public channel/channel/
2015-10-18 12:49:13 -07:00
James Lu
5327de9317
relay: fix local kicks not quitting users on remote networks when the target doesn't share any channels as a result
...
Closes #120 .
2015-10-18 10:27:54 -07:00
James Lu
6034333682
commands: actually break when identify is sent in a channel
2015-10-18 10:27:27 -07:00
James Lu
d4200424fa
ts6: support legacy (non-sid) server introduction
...
Closes #119 .
For the sake of simplicity, server swithout a SID are stored by their server names internally, which is convenient because no reverse lookup is needed when an SQUIT is received for it.
2015-10-12 17:49:03 -07:00
James Lu
d21ce9983d
relay: don't spam subserver connects + instant disconnects for networks that are dead
2015-10-10 15:34:57 -07:00
James Lu
bde2f66b2a
relay: don't send SQUIT for relay servers to networks that aren't connected
2015-10-10 15:27:57 -07:00
James Lu
e28c351792
relay: add missing return in getRemoteSid
2015-10-10 15:26:28 -07:00
James Lu
07694ae642
relay: restore checks for irc.connected/world.started to prevent server spawning from happening too quickly
2015-10-10 15:22:06 -07:00
James Lu
ffce69060c
relay: fix RuntimeError in handle_disconnect (dict changed size during iteration)
2015-10-10 15:06:36 -07:00
James Lu
1f0426d7ff
ts6: fixes to SQUIT handling
2015-10-10 14:58:52 -07:00
James Lu
8258923cdb
Merge branch 'master' into devel
2015-10-10 14:41:02 -07:00
James Lu
e4e4a93e35
README: update our goals
2015-10-09 23:11:15 -07:00
James Lu
64cba70cbd
ts6: add stub for legacy (no SID) SERVER introduction
2015-10-09 22:50:11 -07:00
James Lu
f80b383d06
Irc: actually abort when handle_events errors
2015-10-09 21:35:42 -07:00
James Lu
181c40d9fe
inspircd: fix another "find all, replace" mistake
2015-10-08 21:06:35 -07:00
James Lu
c0eab152e4
utils: fix error handling in parseModes
2015-10-08 20:59:31 -07:00
James Lu
8bde21f1e6
inspircd: remove clients from state when killing own clients
...
Closes #115 .
2015-10-08 20:13:37 -07:00
James Lu
b8fe622cc8
utils: don't allow hostmasks/banmasks to have # in them
2015-10-08 17:25:49 -07:00
James Lu
4323c19c40
README: add IRC channel
2015-10-05 18:13:39 -07:00
James Lu
3fb7b3ff1a
Doc updates: +using-utils.md stub; update autogenerated references for protocols/inspircd, utils
2015-10-03 16:39:52 -07:00
James Lu
bd85e1fa82
coreplugin: block attempts to call commands (in PM) from PyLink bots
2015-10-02 23:41:49 -07:00
James Lu
17cfdcab0a
relay: fix 7d919e6
again
...
PyLink bots can send messages over the relay to channels, just not to remote users.
2015-10-02 23:40:20 -07:00
James Lu
a9253eda77
ts6: fix removeClient usage
2015-10-02 23:31:38 -07:00
James Lu
4e2876104f
Irc: require autoconnect value to be >= 1
...
This prevents sending a flood of connects whenever a server is unreachable.
2015-10-02 23:21:40 -07:00
James Lu
1c8ee5d84b
core: support IPv6 connections
2015-10-02 23:17:57 -07:00
James Lu
7e57798f4d
core: refresh various serverdata attributes on REHASH
2015-10-02 23:17:55 -07:00
James Lu
f20e677577
relay: fix PMs across the relay ( 7d919e64
regression)
2015-10-01 16:40:58 -07:00
James Lu
55d9eb240f
classes.Irc: prettier __repr__
2015-09-28 19:25:45 -07:00
James Lu
48831863d2
validateConf: allow autojoin channels to be empty; nothing wrong with that
2015-09-28 19:22:19 -07:00
James Lu
54414f307e
commands: new REHASH command ( Closes #89 )
...
This command reloads the config and automatically add/removes networks that are in the new conf but not currently connected.
2015-09-28 19:13:08 -07:00
James Lu
e84a2d1025
Modularize our import hacks, make Irc() take a conf object again
2015-09-28 19:12:45 -07:00