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

145 Commits

Author SHA1 Message Date
James Lu
970b38719d core: rename ping() to _ping_uplink(), and drop the unused source/target arguments 2017-07-04 22:09:50 -07:00
James Lu
276b0b251d protocols: move handle_pong to IRCCommonProtocol 2017-07-04 21:55:09 -07:00
James Lu
06d69aadf7 clientbot: fix self.connected.set() order 2017-07-03 13:04:43 -07:00
James Lu
ec308acfcb protocols: move 005 handling code to IRCCommonProtocol
Also enable extended server negotiation for ngIRCd, which really just passes 005 between servers (nifty!)
2017-07-03 12:45:39 -07:00
James Lu
78034096a8 protocols: merge _expandPUID into ircs2s_common 2017-07-03 00:11:49 -07:00
James Lu
d4260734dc clientbot: make sure incoming server messages don't clash with a PSID/PUID 2017-07-02 22:13:57 -07:00
James Lu
1e39fb78db clientbot: rename _validateNick -> _check_puid_collision 2017-07-02 22:11:40 -07:00
James Lu
ce2852bdc0 clientbot: get rid of _get_SID in message parsing
It isn't needed because any external server messages are sent raw.
2017-07-02 22:09:22 -07:00
James Lu
51d8d3b3b8 clientbot: store external server names raw instead of using server name mangling 2017-07-02 21:59:40 -07:00
James Lu
ee5a884328 clientbot: fix imports for PyLink 2.0 2017-07-02 21:59:29 -07:00
James Lu
54d7fe6dc5 protocols: convert IrcServer usage to Server 2017-06-30 21:45:10 -07:00
James Lu
a204d2b2db core: convert IrcUser calls to User 2017-06-30 21:44:31 -07:00
James Lu
b81a03fda9 protocols: Channel.removeuser -> Channel.remove_user 2017-06-30 21:40:50 -07:00
James Lu
7d68c03101 various: convert sortPrefixes/getPrefixModes calls to snake case 2017-06-30 21:40:05 -07:00
James Lu
927fa9aac9 protocols: updateClient -> update_client 2017-06-30 21:29:38 -07:00
James Lu
f38b9c9a2c protocols: topicBurst -> topic_burst 2017-06-30 21:29:11 -07:00
James Lu
d0846170c4 protocols: spawnServer -> spawn_server 2017-06-30 21:27:15 -07:00
James Lu
f60dc8fa37 protocols: spawnClient -> spawn_client 2017-06-30 21:25:58 -07:00
James Lu
a4e321522b protocols: migrate away from camel case 2017-06-29 22:56:14 -07:00
James Lu
77357b765e clientbot: rename various private functions
* capEnd -> _do_cap_end
* requestNewCaps -> _request_ircv3_caps
* saslAuth -> _try_sasl_auth
* sendAuthChunk -> _send_auth_chunk
* parseMessageTags -> parse_message_tags
2017-06-27 22:28:31 -07:00
James Lu
310f3f23b8 protocols: rename various parse* functions (no migration stub)
Renamed to camel case:
- parseArgs -> parse_args
- parsePrefixedArgs -> parse_prefixed_args

Renamed to show that we're specifically parsing ISUPPORT data:
- parseCapabilities -> parse_isupport
- parsePrefixes -> parse_isupport_prefixes
2017-06-27 17:16:46 -07:00
James Lu
56275c5a3b NetworkCore: rename removeClient -> _remove_client (no migration stub) 2017-06-27 16:21:30 -07:00
James Lu
7814914a05 classes, protocols: convert self.irc usage to self 2017-06-25 02:09:52 -07:00
James Lu
d0209f720a Rewrite network intitialization bits
- Move protocols.connect -> protocols.post_connect to fix namespace conflict
- Starting an IRC connection is now explicit (via irc.connect instead of __init__)
2017-06-25 01:12:58 -07:00
James Lu
f8155ff74c protocols: sed -i 's/_getSid/_get_SID/g' 2017-06-16 17:13:30 -07:00
James Lu
a60d746e3b protocols: sed -i 's/_getUid/_get_UID/g' 2017-06-16 17:13:30 -07:00
James Lu
7ca98eb965 Split IRC-specific code from classes.Protocol into a new IRCCommonProtocol (#454) 2017-06-16 17:13:26 -07:00
James Lu
cfec70730f clientbot: reinitialize PUID generators on connect
Closes #448.
2017-05-12 19:57:24 -07:00
James Lu
2feb93aaf0 clientbot: generate PUIDs/PSIDs with the nick or server name as prefix 2017-04-09 15:32:13 -07:00
James Lu
3f6501fa88 clientbot: make sure incoming nicks don't clash with a PUID/PSID
This should really never happen, but it might break quite a few things if it does.
2017-04-09 15:12:52 -07:00
James Lu
cc9ffd47b1 clientbot: fix misleading comment 2017-04-09 15:01:49 -07:00
James Lu
bf1d7812e2 clientbot: track channel modes and TS on join
Closes #345.
2017-04-09 14:49:19 -07:00
James Lu
9d50a4363b clientbot: make SASL timeout configurable & raise default to 15 secs 2017-04-05 23:08:17 -07:00
James Lu
029bb38af8 protocols: skip queuing when responding to PING 2017-03-28 22:30:33 -07:00
James Lu
efe468b0d2 protocols: declare slash-in-nicks, slash-in-hosts, underscore-in-hosts as necessary (#337) 2017-03-15 23:58:51 -07:00
James Lu
936535786e clientbot: declare clear-channels-on-leave capability 2017-03-15 23:47:32 -07:00
James Lu
47f0b7626f clientbot: time out CAP/SASL after 5 seconds
Closes #424.
2017-03-04 23:54:16 -08:00
James Lu
9420f21680 clientbot: send CAP LS before NICK/USER so that it consistently gets a response before connect
Previously, SASL was failing on networks like freenode, as the connection completed before a CAP response was received.
2017-03-03 15:39:28 -08:00
James Lu
8424870ec3 clientbot: abort when receiving a QUIT from uplink (#405) 2017-02-17 22:27:38 -08:00
James Lu
75158c47e2 clientbot: block PRIVMSG/NOTICE from being routed the wrong way (#405) 2017-02-17 22:27:38 -08:00
James Lu
fb9144a715 clientbot: always add channels to users' channel lists in names reply
Do this regardless of whether the user is already added to the channel's user list/kick queue, since those are tracked separately.

Closes #388.
2017-01-09 22:23:59 -08:00
James Lu
ccfc2f601d clientbot: explicitly send /names after join (#388) 2017-01-09 22:23:59 -08:00
James Lu
602f35cb70 clientbot: fix message recognition treating nick prefixes without ident@host as servers 2017-01-09 22:23:59 -08:00
James Lu
e566b99b75 clientbot: don't crash if we receive /who for someone we don't know 2016-12-27 22:16:12 -08:00
James Lu
f1da5c57e8 clientbot: don't repeat KICK hooks if the source is internal
This prevents KICK events from being relayed twice to Clientbot links, when the kicked user is also a Clientbot user.
2016-12-27 22:09:16 -08:00
James Lu
59f232d69f clientbot: fix SASL PLAIN auth on Python 3.4
A strange bug causes "TypeError: unsupported operand type(s) for %: 'bytes' and 'tuple'" when formatting multiple args into a byte string using %b.
2016-12-27 18:16:15 -08:00
James Lu
a96bb0ce11 clientbot: make unattended SASL reauth optional 2016-12-19 01:06:49 -08:00
James Lu
68c618887f clientbot: auto-attempt SASL when it is introduced in CAP NEW 2016-12-19 00:54:20 -08:00
James Lu
f42d49b8eb cleintbot: only CAP END if we haven't registered yet 2016-12-19 00:52:28 -08:00
James Lu
880714b2f2 clientbot: implement CAP DEL, CAP NEW 2016-12-19 00:40:19 -08:00