James Lu
b459b4d235
Merge branch 'master' into devel
2015-12-24 18:25:39 -08:00
James Lu
091bdc22da
Test suite updates (doesn't work yet)
2015-12-24 18:24:42 -08:00
James Lu
38672ab9f5
Drop test_proto_inspircd.py, it's broken and unmaintained
...
Eventually, I plan to replace these with a generic protocol module test suite, which can hot-swap protocol modules and test all of them in a loop of some sort.
2015-12-24 18:18:16 -08:00
James Lu
d958f65f7e
networks: call coreplugin and loaded plugins' main() functions on connect
...
I haven't really tested this very well, but it *should* not break anything......
2015-12-24 18:14:05 -08:00
James Lu
3f45450969
unreal: move setting irc.connected to AFTER protocol negotiation, and add missing EOS (ENDBURST) handler
...
The lack of the latter caused relay to *fail* to spawn users whenever an Unreal server reconnects, which should be fixed now.
2015-12-24 18:13:53 -08:00
James Lu
bd8aa4dc11
pylink: more consistent logging syntax
2015-12-24 18:08:00 -08:00
James Lu
9a81a2ba1f
Rename utils.getProtoModule => utils.getProtocolModule
2015-12-24 17:33:49 -08:00
James Lu
2391918deb
networks: add "remote" command, for running commands on remote networks
2015-12-22 10:58:58 -08:00
James Lu
4e7396b1ac
exec: add 'inject' and raw' commands ( Closes #148 )
2015-12-22 10:47:02 -08:00
James Lu
fbf33e15a6
classes: in Irc.runline(), return the parsed hook args after processing
2015-12-22 10:46:54 -08:00
James Lu
375dbe8427
exec: accept newlines and other backslash escapes (in only "exec")
...
This way, more complex code can be entered using newlines: e.g. "for x in range(3):\n irc.reply('hello world')"
2015-12-22 10:41:42 -08:00
James Lu
0c1bcf2bc5
example conf: add missing "sidrange" key in ts6net, rename "yournet" to "inspnet" and various tweaks
...
"sidrange" is required to be in the conf; otherwise, PyLink fails to start. Thanks @darksis for reporting.
2015-12-22 10:31:56 -08:00
James Lu
6330be8758
chancmds: add TOPIC command, fix help text of KICK (it is admin-only, not oper-only)
...
For #90 .
2015-12-18 22:08:52 -08:00
James Lu
349cff36e1
protocols: in TOPIC hooks, send the topic as keyword "text" instead of keyword "topic"
...
This is just to be more consistent, as other hooks usually use "text" for text fields.
2015-12-18 22:05:10 -08:00
James Lu
d0436b9f4d
Merge branch 'master' into devel
2015-12-18 21:44:15 -08:00
James Lu
f1adc90ac9
config.yml.example: mention new chancmds and opercmds plugins
2015-12-18 21:43:42 -08:00
James Lu
775933420a
Move MODE from bots.py into a new plugin, opercmds.py
2015-12-18 21:43:37 -08:00
James Lu
1f2b99ca26
Move "KICK" from bots.py to a new plugin, chancmds
...
Also, add more sanity checks to make sure the things we're kicking are actually valid.
2015-12-18 21:43:37 -08:00
James Lu
4d0f346340
coreplugin: code formatting, show AWAY statuses in WHOIS
...
Closes #143 .
2015-12-17 21:51:15 -08:00
James Lu
d60a48bb11
protocols: actually update away status in awayClient
...
"Oops, I forgot to do this."
2015-12-17 21:50:50 -08:00
James Lu
6d597e4482
unreal: call PYLINK_CLIENT_OPERED hooks where we're supposed to
2015-12-17 21:37:01 -08:00
James Lu
09bb2976f8
inspircd: Remove a couple of overzealous find+replaces
2015-12-17 21:19:40 -08:00
James Lu
00337fa783
relay: delay ENDBURST in spawnServer by 3 seconds ( Closes #128 )
2015-12-17 21:18:16 -08:00
James Lu
6b14a885bc
protocols: add support for endburst_delay in spawnServer ( #128 )
2015-12-17 21:18:11 -08:00
James Lu
31c47b50f3
utils: fix irc.users changing size during lookup
2015-12-11 18:43:58 -08:00
James Lu
f79524e9e1
unreal: remove duplicate import
2015-12-06 17:44:59 -08:00
James Lu
e4fb64aeba
Document more parts of the core - comments are cool right
2015-12-06 17:40:13 -08:00
James Lu
a39f9bbddc
relay: fix logging syntax
2015-12-06 17:40:06 -08:00
James Lu
561af2e037
utils/relay: add and use getDatabaseName to fetch an instance-specific DB name
2015-12-06 17:13:47 -08:00
James Lu
f16edf6efc
relay: log (de)linked, created, and destroyed channels to INFO
...
Closes #125 .
2015-11-28 21:18:30 -08:00
James Lu
e97810e5f7
relay: store creator hostname in CREATE, code readability...
...
Closes #135 .
2015-11-28 21:09:44 -08:00
James Lu
62501ce8f2
unreal: actually, storing the cloaked host instead of the real host is a better idea
...
This prevents IP leaks, at least until #136 is fixed. Reverts part of b965f2c
.
2015-11-28 20:57:33 -08:00
James Lu
0d402af17e
fantasy: support nick triggers ( close #134 )
2015-11-28 20:46:53 -08:00
James Lu
db59134ae7
Merge branch 'master' into devel
2015-11-26 23:00:29 -08:00
James Lu
7705d48425
commands: update irc.botdata in REHASH too
2015-11-26 22:57:52 -08:00
James Lu
f8cc297522
unreal: remove "possible desync" warning in _getNick
2015-11-26 22:52:29 -08:00
James Lu
3df0a24232
relay: catch PRIVMSG/NOTICE sent from servers, and relay them via the PyLink client instead of erroring
2015-11-26 22:51:19 -08:00
James Lu
a7f5068bd8
relay: squash another "dictionary changed size during iteration" bug
2015-11-26 22:50:20 -08:00
James Lu
c5acd5cd38
coreplugin: uhhh, fix typo in irc.connected check
2015-11-26 22:43:37 -08:00
James Lu
994eaef12c
unreal: forcibly SETHOST to the desired vHost in spawnClient
...
This prevents real host / IP address leaks, since the "virt host" specified in UID doesn't seem to be respected by the IRCd (real host is shown instead). Workaround for #136 .
2015-11-26 22:34:15 -08:00
James Lu
0c068c6543
unreal: fix #137
...
a.k.a. fix the mess I made encoding IPs by not knowing about socket.inet_pton / socket.inet_ntop.
2015-11-26 22:15:52 -08:00
James Lu
197532c1be
core: Replace imp (deprecated) with importlib, reword some docs & remove unneeded imports
2015-11-22 20:14:47 -08:00
James Lu
adfa114c4b
relay: remove cloak from whitelisted umodes, send modes to spawnClient as a set (prevents duplicates)
2015-11-22 13:08:31 -08:00
James Lu
b965f2c4b0
unreal: store the displayed host, not the Unreal-cloaking (+x) host in users
...
I was misinterpreting the UID command syntax. See #136 for what still has to be done.
2015-11-22 13:07:25 -08:00
James Lu
5c0517ba40
unreal/ts6/relay: add some more user mode support
...
Cloaking is still a bit iffy on UnrealIRCd networks - Unreal insists on applying its own cloaking for +x users, but vHosts for non +x remote users don't apply at all (their real host is shown instead)
2015-11-21 23:57:24 -08:00
James Lu
a3e0159054
relay: normalize hostnames too (e.g. unreal doesn't allow / in vHosts)
2015-11-21 23:37:19 -08:00
James Lu
e86d21e67d
unreal: map SETHOST/IDENT/NAME to the right hooks
2015-11-21 23:28:39 -08:00
James Lu
f4b707602c
README: update IRC addresses
2015-11-19 21:07:18 -08:00
James Lu
2080a39cf4
coreplugin: sanity check: make sure irc.connected is set after 2 seconds & mention how setting this is neccessary in docs
2015-11-15 21:50:23 -08:00
James Lu
06539fc813
unreal: add missing SJOIN->JOIN hook map, and set irc.connected (relay will otherwise break)
2015-11-15 21:42:58 -08:00