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

392 Commits

Author SHA1 Message Date
James Lu
8ba0412ece nefarious: set realhost = displayed host 2016-04-14 17:31:51 -07:00
James Lu
5796b75373 nefarious: track and send user IPs the P10 way - thanks @jobe1986 for the tips! 2016-04-14 17:25:45 -07:00
James Lu
393771a32a nefarious: split p10b64encode() away from P10SIDGenerator 2016-04-14 16:24:26 -07:00
James Lu
3299a871f2 nefarious: basic command handlers for NICK and SERVER
Still a bit incomplete atm. User IPs and accounts are not tracked yet.
2016-04-14 16:10:44 -07:00
James Lu
db911149db nefarious: update module header 2016-04-14 15:36:59 -07:00
James Lu
a12b2cb5dc nefarious: don't drop messages without a sender
During the initial link phase, the uplink server isn't even known. It sends "SERVER blah blah" and "PASS :whatever" as is.
2016-04-14 15:36:59 -07:00
James Lu
74af9b67ba protocols: p10.py -> nefarious.py 2016-04-12 07:00:45 -07:00
James Lu
19f1ee1be8 p10: initial protocol stub (#87)
This can connect and spawn the main PyLink client right now... It can't do anything else
2016-04-10 20:24:58 -07:00
James Lu
3a00e46b48 Move getSid/getUid into classes.Protocol 2016-04-10 19:00:44 -07:00
James Lu
38e098aef4 inspircd: normalize chmode +r name
This should be "registered", not "c_registered" in order to be consistent with other protocols.
2016-04-09 18:25:17 -07:00
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
248c0cbb78 hybrid: virtual umodes +d/+x don't take arguments 2016-04-08 22:20:23 -07:00
James Lu
32038e666a hybrid: track vHost changes (#198) 2016-04-08 22:02:08 -07:00
James Lu
d0655b701a hybrid: implement services account tracking (#198) 2016-04-08 21:38:41 -07:00
James Lu
3ec3d4cebb hybrid: Fix typo in 0be83449fb (#198) 2016-04-08 20:57:03 -07:00
James Lu
e4cd028e86 hybrid: prettier logging, fix wrong argument being passed to IrcUser 2016-04-08 20:46:03 -07:00
James Lu
b3447b74c2 hybrid: make a note of how hybrid UID differs from standard TS6
These are two mutually incompatible implementations, which is why this module exists separately from ts6!
2016-04-08 20:41:27 -07:00
James Lu
5a6a6ca40e hybrid: require caps EX IE SVS EOB HOPS QS TBURST SVS 2016-04-08 20:40:54 -07:00
James Lu
3dbae3b744 hybrid: fix EOB handler name 2016-04-08 20:36:14 -07:00
James Lu
0be83449fb hybrid: implement outgoing host change in updateClient (#198) 2016-04-08 20:35:45 -07:00
James Lu
3b3080d199 hybrid: drop unused svstag handler 2016-04-08 20:22:53 -07:00
James Lu
aeb65478cb hybrid: implement topicBurst (#198) 2016-04-08 20:01:45 -07:00
James Lu
abcf3b6082 ts6: re-add some of the ircd traffic examples 2016-04-07 18:23:21 -07:00
James Lu
fb74179f58 hybrid: handle services logins on burst too 2016-04-07 18:23:18 -07:00
James Lu
3ae9155e78 hybrid: inherit from proto/ts6, drastically reducing the module size 2016-04-07 18:11:13 -07:00
James Lu
d585b60507 Merge branch 'devel+hybrid' of github.com:DanielOaks/PyLink into wip/hybrid 2016-04-07 17:53:57 -07:00
Daniel Oaks
59809e1530 hybrid: Dispatch ENDBURST so it can be caught by plugins 2016-04-07 22:29:15 +10: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
cb3187c5e9 ts6_common: do reverse nick lookup for KICK targets
Also needed for Unreal 3.2 compat, as the kick target may be a nick (on legacy servers) instead of a UID.
2016-04-03 13:03:00 -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
4157cb5671 ts6_common: use a better variable name for _getSid() 2016-04-03 12:49:50 -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
Daniel Oaks
80b659a940 hybrid: Actually set irc.connected on CAPAB, like other protocols 2016-03-30 17:24:26 +10:00