James Lu
7003ff848d
Attempt to make sender validation in protocols a bit less repetitive
2016-04-29 23:43:39 -07:00
James Lu
05752d9f60
Merge branch 'master' into devel
2016-04-29 23:43:15 -07:00
James Lu
01bf0325fb
inspircd: fix wrong variable in KILL text
2016-04-29 23:43:03 -07:00
James Lu
bd0874a484
Merge branch 'wip/split-utils' into devel
2016-04-29 23:32:52 -07:00
James Lu
b61ac21e86
hybrid, ts6: adjust umode definitions again
...
- Prefix non-standard snomask umodes with sno_ to avoid confusion
- Remove _hybrid suffixes and chary_ prefixes, they serve little use
- Re-map some hybrid modes to match existing definitions: showadmin->admin, smessages->snomask, hideops->hideoper, softcallerid->deaf_commonchan
2016-04-29 22:39:37 -07:00
James Lu
0061414ee5
nefarious: remove untested parsing of umode +h for now
2016-04-29 22:32:26 -07:00
James Lu
b78b911323
unreal: fix JOIN handling & normalize channel case
...
Reported by Rascle on IRC.
2016-04-28 19:17:20 -07:00
James Lu
dd7b3821e9
nefarious: deduplicate outgoing BURST mode prefixes
2016-04-27 16:43:09 -07:00
James Lu
1bd2bd760c
hybrid, nefarious: add missing BURST/SJOIN->JOIN hook mapping
...
Reported by Rascle on IRC.
2016-04-27 16:42:38 -07:00
James Lu
a8fc9428cf
protocols: migrate to irc.parseModes/applyModes ( #199 )
2016-04-24 21:44:31 -07:00
James Lu
40a86de040
protocols: reword spawnClient description text
2016-04-24 21:17:56 -07:00
James Lu
f8c2ee3ed3
protocols: use KeyedDefaultdict to enumerate UID generators
2016-04-24 21:16:41 -07:00
James Lu
2c60aa6395
Separate UID/SID generators into various protocol modules ( #199 )
2016-04-24 21:08:07 -07:00
James Lu
128a6363d5
nefarious: easier SID encoding using struct
2016-04-23 10:54:54 -07:00
James Lu
0e0d96efc6
nefarious: properly decode IPv6 addresses, move IP decoding into separate function
2016-04-23 10:44:17 -07:00
James Lu
9f454402d2
nefarious: don't confuse the TS argument with the user list, if a BURST is sent with only bans
2016-04-18 21:29:00 -07:00
James Lu
fd909395ff
nefarious: ignore empty BURSTs with no useful data
2016-04-18 20:59:06 -07:00
James Lu
bc578240bb
nefarious: fix checks for what is an IPv6 / IPv4 address
2016-04-18 20:54:16 -07:00
James Lu
0fad0f7a2c
nefarious: add missing import
...
Reported by Rascle on IRC.
2016-04-18 20:40:01 -07:00
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