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

104 Commits

Author SHA1 Message Date
James Lu
0ccdf4cfce unreal: require UMODE2 cap too
I realize we don't handle MODE being used for users at all. UMODE2 is always used when enabled, which is what we're expecting right now.
2016-04-09 11:43:26 -07:00
James Lu
5dee6ab651 unreal: simplify capability checks & require NICKIP cap 2016-04-09 11:34:09 -07:00
James Lu
29030073b9 unreal: request NICKIP capability, track Unreal 3.2 user IPs
Closes #196.
2016-04-09 10:17:25 -07:00
James Lu
62c8cd2405 protocols: s/_getNick/_getUid/g
The old function name _getNick was a bit misleading, as the function converted nicks to UIDs, not the other way around..
2016-04-08 22:21:37 -07:00
James Lu
1e3aba2cce protocols: simplify super() syntax 2016-04-05 18:37:09 -07:00
James Lu
f620b5b4e8 protocols: initialize sidgen/uidgen in ts6_common 2016-04-05 18:34:54 -07:00
James Lu
55afa1bff6 unreal: log instances of PUID manging to debug 2016-04-03 13:01:08 -07:00
James Lu
75984c3c4c ts6_common: add abstraction to convert UIDs->outgoing nicks
This is a more complete fix for #193.
2016-04-03 12:57:47 -07:00
James Lu
9f20f8f767 unreal: update SJOIN matching regex
We should only treat symbols as a possible prefix, not letters. Things like +nick might be sent in a SJOIN instead of +001AAAAAA, for legacy servers.
2016-04-03 12:57:47 -07:00
James Lu
e687bb0a78 unreal: remove outfilter hack, this doesn't handle text including PUIDs properly
Reverts part of 44dc856ffa.
2016-04-03 12:38:38 -07:00
James Lu
02ec50826b unreal: fix super() syntax in SQUIT handling 2016-04-02 12:12:38 -07:00
James Lu
6acfbb4125 unreal: case-desensitize legacy server names when handling user introductions from them 2016-04-02 11:51:29 -07:00
James Lu
956167538a unreal: add warnings & more descriptive errors regarding mixed_link 2016-04-02 10:56:41 -07:00
James Lu
f3ceefe87f unreal: initialize legacy users on the right server 2016-04-02 10:56:13 -07:00
James Lu
c4273e68a4 unreal: fix for Python 3.4 support
The general syntax for unpacking lists with *list was only introduced in Python 3.5: https://www.python.org/dev/peps/pep-0448/
2016-04-02 09:32:03 -07:00
James Lu
4f08894227 unreal: typofix 2016-04-01 23:35:48 -07:00
James Lu
10be962318 unreal: actually return the hook data for NICK & KILL 2016-04-01 23:27:31 -07:00
James Lu
44dc856ffa unreal: use an awful outFilter hack to convert PUIDs->nicks when sending outgoing commands 2016-04-01 23:14:04 -07:00
James Lu
74ee1ded4d unreal: Start work on some really hacky Unreal 3.2 compat code (#193)
What works:
- Tracking user JOINs, QUITs, PARTs

What doesn't work:
- Sending messages from PyLink clients to 3.2 users. They have fake UIDs (nick@counter) which don't go anywhere, meaning messages are silently dropped.
2016-04-01 23:02:12 -07:00
James Lu
fd32bbf45f unreal: fix typo in last commit 2016-04-01 19:12:58 -07:00
James Lu
efcc30c983 unreal: don't confuse legacy SERVER introductions from our uplink with protocol negotiation
Reported by Rascle on IRC.
2016-04-01 19:08:25 -07:00
James Lu
70b9bde2c4 unreal: fix a little typo 2016-03-26 13:26:57 -07:00
James Lu
ad517f80da unreal: bump protocol version to 4000 2016-03-26 13:19:06 -07:00
James Lu
19ac5b59a5 protocols: drop underscores from pre-defined opertypes 2016-03-26 13:15:22 -07:00
James Lu
44083ccd5e core: Store opertype info in all IrcUser objects
This allows plugins to define custom opertypes for their clients, and still have them show in WHOIS queries.
2016-03-26 12:55:23 -07:00
James Lu
bdbc1020f2 Merge branch 'master' into devel 2016-03-26 12:50:35 -07:00
James Lu
9cd1635f68 unreal: fix wrong variable name in handle_umode2 2016-03-26 12:50:23 -07:00
James Lu
e183078645 protocols: Remove "secret" testing channel name 2016-03-20 17:34:13 -07:00
James Lu
decdf141fd unreal: don't use updateClient to update hostname of clients internally 2016-02-20 18:19:15 -08:00
James Lu
2ebdb4bad6 unreal: support services account tracking (#25), fix handle_SVSMODE applying modes on the wrong target 2016-02-20 18:16:21 -08:00
James Lu
3c3ae104ba unreal: remove bad check for users connecting via IPv4
This fixes a crash when... anyone using IPv4 connects.
2016-01-23 13:52:37 -08:00
James Lu
a220659eaf Move unreal's handle_events block to ts6_common
Precursor to part 2 of #156.
2016-01-16 17:48:22 -08:00
James Lu
812a866a4e protocols: rename pingServer -> ping 2016-01-16 17:11:23 -08:00
James Lu
3d0bf18001 protocols: rename topicClient -> topic; topicServer -> topicBurst
This is one of the few commands that I won't consolidate at this time, because there is actually a difference in how most IRCds handle topic bursts and normal topic changes
2016-01-16 17:09:52 -08:00
James Lu
5ccf204c75 protocols: consolidate modeClient and modeServer into mode() 2016-01-16 17:08:17 -08:00
James Lu
eef97ac035 protocols: consolidate killServer / killClient into kill() 2016-01-16 17:03:22 -08:00
James Lu
ee65ac60e1 protocols: rename sjoinServer(...) -> sjoin(...) 2016-01-16 16:53:46 -08:00
James Lu
108be5e25e protocols: rename knockClient -> knock 2016-01-16 16:41:17 -08:00
James Lu
b4e5c57a35 protocols: rename inviteClient(...) -> invite(...) 2016-01-16 16:38:27 -08:00
James Lu
acdd7dbb78 protocols: rename joinClient(...) -> join(...) 2016-01-16 16:36:45 -08:00
James Lu
ff6841c551 protocols: record the right sender in TOPIC handlers (first part of #127) 2016-01-09 20:50:55 -08:00
James Lu
8db8f6b6c4 note to self: never use case-insensitive find/replace again 2016-01-09 18:34:41 -08:00
James Lu
48203ff321 protocols: reword error text 2016-01-09 17:44:18 -08:00
James Lu
9a43a620f9 unreal: implicitly set +xt when SETHOST or CHGHOST is received (#136) 2016-01-03 11:28:35 -08:00
James Lu
adcb61da67 unreal: update users' hosts properly on setting +x/-x
Closes #136.
2016-01-03 11:28:26 -08:00
James Lu
eac934c237 classes: sort code, move nickToUid, clientToServer, isInternalClient, isInternalServer into the Irc class
The following BREAKING changes are made:
utils.nickToUid(irc, nick) -> irc.nickToUid(nick)
utils.isInternalClient(irc, uid) -> irc.isInternalClient(uid)
utils.isInternalServer(irc, uid) -> irc.isInternalServer(uid)
utils.clientToServer(irc, uid) -> utils.getServer(uid)
2015-12-31 17:28:47 -08:00
James Lu
741fed9acd protocols: allow changing remote users' hosts in updateClient
Closes #142.
2015-12-30 15:54:09 -08:00
James Lu
bf7522697a Rename PYLINK_CLIENT_OPERED hook -> CLIENT_OPERED
To be consistent, any PYLINK_* hooks should internal hooks sent out by PyLink itself. CLIENT_OPERED, on the other hand, requires protocol modules to send it and thus, shouldn't be labeled as a PYLINK_* hook.
2015-12-26 15:41:22 -08:00
James Lu
11adee9d78 Yet another documentation refresh (#113) 2015-12-26 14:45:28 -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