James Lu
83183b366a
exec: import all of pylinkirc for convenience
2017-08-21 23:12:42 -07:00
James Lu
62e4e66321
example-conf: dcument the altnicks option on clientbot
2017-08-21 23:12:22 -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
04cfa9c93e
ServiceBot: add altnick fetching capabilities to get_nick ( #288 )
2017-08-21 22:22:01 -07:00
James Lu
d28006ae62
Move ProtocolError to utils, and link the copy in classes to it
2017-08-21 22:21:09 -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
3e150d8514
Break up classes.ChannelState into structures.(IRC)CaseInsensitiveDict
2017-08-21 21:50:44 -07:00
James Lu
6981869c06
clientbot: split up join() and handle_join() to prevent duplicate JOIN/MODE/WHO on connect
2017-08-20 19:24:46 -07:00
James Lu
81f3112d01
clientbot: use WHOX where available to fetch account names on join
2017-08-20 18:49:07 -07:00
James Lu
55f50eb251
clientbot: don't send /NAMES on join, it isn't needed
2017-08-20 17:29:03 -07:00
James Lu
85f283c5f8
clientbot: add support for IRCv3.2 account-tag ( #290 )
2017-08-20 16:52:23 -07:00
James Lu
48c6765411
clientbot: add support for IRCv3.1 account-notify ( #290 )
2017-08-20 16:12:25 -07:00
James Lu
0bbe5d3a1a
clientbot: add support for IRCv3 CHGHOST ( #290 )
2017-08-19 23:55:41 -07:00
James Lu
36e8ddd97e
Remove log/ from source folder, it's not necessary
2017-08-19 23:23:41 -07:00
James Lu
766450afd3
clientbot: add experimental userhost-in-names support ( #290 )
2017-08-19 23:23:19 -07:00
James Lu
471733bfd0
clientbot: track /who received status by user, not by channel
2017-08-19 22:29:08 -07:00
James Lu
72145e09b8
clientbot: implement away-notify support ( #290 )
2017-08-19 22:04:24 -07:00
James Lu
ffc734d8e2
relay: only send RAW_MODES payloads to networks without can-spawn-clients
2017-08-18 15:51:14 -07:00
James Lu
15be760b19
relay: send RELAY_RAW_MODE payloads to the *remote* channel name
2017-08-18 13:30:17 -07:00
James Lu
8563556850
relay: fix relaying between channels not matching their lowercase (DB) name
...
This rewrites get_relay() to be case insensitive by taking the IRC object instead of a string name.
This fixes a regression introduced by 32249ac
(case-insensitive channel state)
2017-08-18 12:42:47 -07:00
James Lu
70fbbb206e
Merge branch 'master' into devel
...
Conflicts:
VERSION
2017-08-16 23:51:31 -07:00
James Lu
d273941dc8
launcher: add a -R/--rehash option
2017-08-16 12:28:40 -07:00
James Lu
5526dcedca
launcher: add --restart/-r and --stop/-s options
...
Closes #244 .
2017-08-16 12:22:43 -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
d03924ae82
launcher: add checks for stale PID files via psutil on Unix
...
This hasn't been tested on other systems, so it is disabled there.
Closes #512 .
2017-08-16 11:12:20 -07:00
James Lu
361a3de9dd
faq: stop advertising PyLink as cross platform
...
Windows support has not been tested for a long time, and there doesn't seem to be much developer/user interest in this.
2017-08-16 10:51:17 -07:00
James Lu
7aa836efa6
Concisify match_host CIDR logging again
...
We're replacing the glob, not the target's host.
2017-08-16 00:03:57 -07:00
James Lu
761d3ef500
Fix wrong logging for CIDR ranges in match_host
2017-08-15 21:26:18 -07:00
James Lu
394057c7a1
PyLink 1.2.0
2017-08-14 17:34:20 -07:00
James Lu
d679859d7d
relay: explain/comment the code for extban handling
2017-08-12 17:12:56 -07:00
James Lu
e180f9fa56
docs/modelists: add in chatircd +qah
2017-08-12 13:58:57 -07:00
James Lu
d2466dd33c
relay: support relaying channel mode changes as text
...
Closes #389 .
This adds a new internal hook RELAY_RAW_MODE, which is called once on every relayed network but with the mode list from the source network.
2017-08-11 19:22:14 -07:00
James Lu
92dae6db5e
docs/t: link to html versions of mode lists
2017-08-11 15:19:46 -07:00
James Lu
4c0d765a2f
docs: revamp mode list docs
...
- HTML version now available via a .csv -> .html generator script
- Addded a column for ChatIRCd
2017-08-11 15:14:55 -07:00
James Lu
30dc4a2b27
hybrid: drop EX and IE from required capabilities
...
This fixes compatibility with hybrid trunk, commit ircd-hybrid/ircd-hybrid@981c61e36c
2017-08-11 15:09:53 -07:00
James Lu
c107f0062f
hybrid, ts6, ratbox: fix +p mode definitions properly
...
+p is noknock and rfc1459-style private on all 3 IRCds, though the latter bit is undocumented in /help cmodes (maybe it's assumed?)
+p is also "paranoia" on hybrid, which adds more restrictions to halfops and /invite
2017-08-11 13:45:40 -07:00
James Lu
e17837cbb1
relay: add nickflood (inspircd +F) to whitelisted cmodes
2017-08-11 13:32:04 -07:00
James Lu
5250e41a94
relay: reformat whitelisted mode lists
2017-08-11 13:29:45 -07:00
James Lu
4a6f94f8fc
relay: add workarounds for u-lined servers
...
- Allow ulines to join with modes (this status gets forwarded as part of relay_joins()), but *ignore* this status when checking for claim
- For U-lined clients to set modes properly and kick, they be on the claim list
- Allow ulines to set modes on ulined clients including itself. These changes are ignored: not forwarded, not bounced, but just left there.
- Ignore uline attempts to set non-list modes - this is mostly for compatibility with Anope's DEFCON, as it would otherwise lead to a mode flood.
This requires commit 9113b34b46
, i.e. the get_server() update.
2017-08-11 13:15:03 -07:00
James Lu
9113b34b46
NetworkCore: return the server in get_server if the arg was a server
2017-08-11 13:13:50 -07:00
James Lu
046fe0c385
protocols: add headers to modules where missing
2017-08-11 12:27:58 -07:00
James Lu
8df7b5319e
Move handle_realhost/handle_login to ts6
2017-08-11 12:21:41 -07:00
James Lu
dfa90378df
ts6: fallback realhost to host, not None
2017-08-11 12:19:23 -07:00
James Lu
785fc8d2d2
ts6: handle ChatIRCd ENCAP USERMODE
...
Per https://github.com/ChatLounge/ChatIRCd/blob/master/doc/technical/ChatIRCd-extra.txt
2017-08-11 12:15:05 -07:00
James Lu
4ec1727888
unreal: rewrite/condense usermode change handling to be more consistent
...
Consistently call _check_oper_status_change() and _check_cloak_change() through a _handle_umode() wrapper. Also, handle the real portion of the mode change given in SVS2MODE.
2017-08-11 12:03:56 -07:00
James Lu
e13f2fdbb0
unreal: remove obsolete note regaring server-sourced notices
2017-08-10 19:53:16 -07:00
James Lu
6a5ca6b508
Merge bits of handle_server into ts6_common
2017-08-10 19:50:32 -07:00
James Lu
d0f9a2465d
Move handle_sid to ts6_common
2017-08-10 19:42:04 -07:00
James Lu
614b8b87da
inspircd: rewrite handle_ping to handle one-arg PING
2017-08-09 16:55:02 -07:00