James Lu
c59997827f
hybrid, ts6: update mode definitions
...
- +p is actually just noknock on hybrid & charybdis
- Fill in *A-*D lists (they were incomplete)
2016-04-18 11:22:54 -07:00
James Lu
560311a98b
nefarious: handle VERSION requests
2016-04-18 10:55:05 -07:00
James Lu
81d2450460
nefarious: relay KILL user data properly
2016-04-18 10:52:41 -07:00
James Lu
4b4db64705
nefarious: experimental host changing support via FAKE
...
This seems to work fine for changing remote users' hosts, but changing the host of internal PyLink clients doesn't seem to work at all...
2016-04-18 10:52:09 -07:00
James Lu
25aacbd1fa
nefarious: actually check RECVPASS
2016-04-17 22:33:16 -07:00
James Lu
c379287482
nefarious: implement account & vhost checking
...
Many thanks to @jobe1986 again, for giving me the specifics on how all of this works. :)
2016-04-17 22:23:44 -07:00
James Lu
38441f0302
nefarious: fix typo in NICK change handling
2016-04-17 22:23:11 -07:00
James Lu
9d28be1dc8
nefarious: updateClient stub
2016-04-17 22:22:38 -07:00
James Lu
fbd71a88f5
nefarious: convert nicks to UID in mode handling
2016-04-17 21:26:21 -07:00
James Lu
1a8652e982
nefarious: fill in cmodes, umodes lists
2016-04-17 21:17:27 -07:00
James Lu
9362b74d78
nefarious: handle CLEARMODE
2016-04-17 20:52:38 -07:00
James Lu
2a6b096401
nefarious: add KNOCK stub (not supported on P10)
2016-04-17 20:33:35 -07:00
James Lu
29d2fea3b2
nefarious: implement WHOIS handling & outbound numerics
2016-04-17 20:32:21 -07:00
James Lu
933029824c
nefarious: AWAY and INVITE support
2016-04-17 20:28:51 -07:00
James Lu
20123c52e0
nefarious: implement TOPIC support
2016-04-16 18:46:31 -07:00
James Lu
68eed62f70
nefarious: implement outgoing SJOIN and SQUIT
2016-04-16 18:05:32 -07:00
James Lu
1892dd5fb4
nefarious: implement outgoing SJOIN (via BURST)
2016-04-16 17:49:59 -07:00
James Lu
25ca2f8399
nefarious: fix BURST prefix handling
...
When one userpair is given with some mode prefixes, it implicitly applies to all other following UIDs,
until another userpair is given with a prefix. For example: UID1,UID3:o,UID4,UID5 would assume that
UID1 has no prefixes, but UID3-5 all have op when joining.
This was not properly accounted for previously.
2016-04-16 17:06:48 -07:00
James Lu
fccfb62609
Merge branch 'devel' into wip/p10
2016-04-16 17:04:32 -07:00
James Lu
36683fc70e
ts6: keep state properly when handling JOIN
2016-04-16 17:03:57 -07:00
James Lu
d635967d3b
nefarious: keep state properly when handling JOIN
2016-04-16 17:00:50 -07:00
James Lu
20087c8872
nefarious: inbound SQUIT support
2016-04-16 16:54:34 -07:00
James Lu
a13211e0db
nefarious: implement KILL, fix bugs in outgoing kick & incoming join
2016-04-16 16:46:30 -07:00
James Lu
e18c7025db
nefarious: implement NICK, QUIT, PART, KICK
2016-04-15 14:08:33 -07:00
James Lu
560aa5b1f8
nefarious: MODE support
2016-04-15 13:50:09 -07:00
James Lu
1c7e0fbeae
nefarious: handle inbound & outbound PRIVMSG/NOTICE
2016-04-15 12:30:52 -07:00
James Lu
f9f3e97f42
nefarious: handle end of burst (send acknowledgement and hook)
2016-04-15 12:30:31 -07:00
James Lu
cc16c610dd
nefarious: handle ban exempts in BURST
2016-04-15 12:19:54 -07:00
James Lu
8a7c39691f
nefarious: fix type error in handle_join
2016-04-15 12:12:17 -07:00
James Lu
1676d33795
nefarious: fix PING syntax for Nefarious
2016-04-15 12:12:07 -07:00
James Lu
b9e568c962
nefarious: don't send empty mode lists to parseModes
...
Doing so raises assertionerror, which causes the link to fail!
2016-04-15 11:53:08 -07:00
James Lu
3c8c6f2027
nefarious: fix syntax in BURST mode handling
2016-04-15 11:41:49 -07:00
James Lu
0d217845ab
nefarious: Handle BURST, incoming & outgoing JOIN
2016-04-15 11:38:27 -07:00
James Lu
6682627af8
nefarious: handle PING / PONG
...
Doesn't seem to work yet...
2016-04-15 11:37:53 -07:00
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