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
8b8895988d
ts6: map EUID hook to UID
2015-12-30 16:53:35 -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
f3d8c35219
ts6: fix sending wrong UID in handle_chghost hook payload
2015-12-30 15:53:31 -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
3c51231ce8
inspircd: re-add RSQUIT handler ( closes #150 )
2015-12-24 19:52:52 -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
James Lu
349cff36e1
protocols: in TOPIC hooks, send the topic as keyword "text" instead of keyword "topic"
...
This is just to be more consistent, as other hooks usually use "text" for text fields.
2015-12-18 22:05:10 -08:00
James Lu
d60a48bb11
protocols: actually update away status in awayClient
...
"Oops, I forgot to do this."
2015-12-17 21:50:50 -08:00
James Lu
6d597e4482
unreal: call PYLINK_CLIENT_OPERED hooks where we're supposed to
2015-12-17 21:37:01 -08:00
James Lu
09bb2976f8
inspircd: Remove a couple of overzealous find+replaces
2015-12-17 21:19:40 -08:00
James Lu
6b14a885bc
protocols: add support for endburst_delay in spawnServer ( #128 )
2015-12-17 21:18:11 -08:00
James Lu
f79524e9e1
unreal: remove duplicate import
2015-12-06 17:44:59 -08:00
James Lu
62501ce8f2
unreal: actually, storing the cloaked host instead of the real host is a better idea
...
This prevents IP leaks, at least until #136 is fixed. Reverts part of b965f2c
.
2015-11-28 20:57:33 -08:00
James Lu
f8cc297522
unreal: remove "possible desync" warning in _getNick
2015-11-26 22:52:29 -08:00
James Lu
994eaef12c
unreal: forcibly SETHOST to the desired vHost in spawnClient
...
This prevents real host / IP address leaks, since the "virt host" specified in UID doesn't seem to be respected by the IRCd (real host is shown instead). Workaround for #136 .
2015-11-26 22:34:15 -08:00
James Lu
0c068c6543
unreal: fix #137
...
a.k.a. fix the mess I made encoding IPs by not knowing about socket.inet_pton / socket.inet_ntop.
2015-11-26 22:15:52 -08:00
James Lu
b965f2c4b0
unreal: store the displayed host, not the Unreal-cloaking (+x) host in users
...
I was misinterpreting the UID command syntax. See #136 for what still has to be done.
2015-11-22 13:07:25 -08:00
James Lu
5c0517ba40
unreal/ts6/relay: add some more user mode support
...
Cloaking is still a bit iffy on UnrealIRCd networks - Unreal insists on applying its own cloaking for +x users, but vHosts for non +x remote users don't apply at all (their real host is shown instead)
2015-11-21 23:57:24 -08:00
James Lu
e86d21e67d
unreal: map SETHOST/IDENT/NAME to the right hooks
2015-11-21 23:28:39 -08:00
James Lu
06539fc813
unreal: add missing SJOIN->JOIN hook map, and set irc.connected (relay will otherwise break)
2015-11-15 21:42:58 -08:00
James Lu
f3428d264b
ts6: actually send original TS in INVITE hook
2015-11-15 21:16:03 -08:00
James Lu
0f269da9b8
unreal: add outgoing KNOCK
...
In Unreal, KNOCKs are simply specially formatted notices sent from the orginating user's server. No special inbound hook is used to handle this as a result.
2015-11-15 21:09:40 -08:00
James Lu
2ddb72f9ec
unreal: add incoming/outgoing INVITE support
2015-11-15 21:00:51 -08:00
James Lu
89e515f513
unreal: don't set TS to 0 when it's sent in MODE (samode overrides the timestamp as this to ensure it always works)
2015-11-15 09:52:01 -08:00
James Lu
7e8e8f33f7
unreal: add updateClient
2015-11-15 09:45:46 -08:00
James Lu
e167be2a69
move awayClient/handle_away to ts6_common
2015-11-15 09:34:26 -08:00
James Lu
a5a2481205
unreal: handle sethost, chghost, and all that
2015-11-15 09:30:29 -08:00
James Lu
ac48c49591
Move squitServer/spawnServer to ts6_common, add topicServer for Unreal
2015-11-15 09:12:21 -08:00
James Lu
5664218254
unreal: add WHOIS handling
2015-11-11 19:40:26 -08:00
James Lu
dfefaeabc5
Merge branch 'devel' into wip/unrealircd
2015-11-11 19:40:22 -08:00
James Lu
eeedeb0135
Move numericServer to ts6_common
2015-11-11 19:40:10 -08:00
James Lu
8c60782753
unreal: add modeClient/modeServer
2015-11-11 19:24:57 -08:00
James Lu
76472560ab
unreal: add killServer/killClient
2015-11-11 19:09:37 -08:00
James Lu
fcd1bf5c37
unreal: fix typo in one updateTS call
2015-11-11 19:09:30 -08:00
James Lu
6f9feb46b1
unreal: fix last commit (actually map the hook & set modes on RIGHT target)
2015-11-11 18:55:05 -08:00
James Lu
6601071d35
unreal: add svsmode/svs2mode handler
2015-11-08 15:27:09 -08:00
James Lu
119aa8939b
unreal: use Protocol.updateTS() for TS checks
2015-11-08 15:27:09 -08:00
James Lu
619b004bdf
Merge branch 'devel' into wip/unrealircd
2015-11-08 15:14:51 -08:00
James Lu
2008df047c
Fix logic in last commit
...
ts has to be set to orig_ts if missing, otherwise a later comparison would try to check for None <= some int, which would error
2015-11-08 15:14:03 -08:00
James Lu
c88f126331
Merge branch 'devel' into wip/unrealircd
2015-11-08 15:10:42 -08:00
James Lu
2eeba50a2a
Modularize TS updating code ( Closes #129 )
2015-11-08 10:49:09 -08:00
James Lu
6f36fb7126
unreal: alias SVSKILL to KILL
2015-11-01 21:50:46 -08:00
James Lu
4a4c43d3c4
unreal: handle timestamps in MODE (channel bursts), ignoring when TS is 0
2015-11-01 21:41:41 -08:00
James Lu
cedcb9b11a
Merge branch 'master' into wip/unrealircd
2015-11-01 20:40:56 -08:00
James Lu
c5b3441f6a
inspircd: alias SVSTOPIC to FTOPIC (reported by @siniStar7boy)
...
SVSTOPIC is used by services to set topics when m_topiclock (server side topic locking) is enabled on the IRCd. Unfortunately, usage of this isn't documented anywehere......
Basically, this makes PyLink treat it as a regular server topic change (FTOPIC), since the arguments are the same anyways.
2015-10-31 19:15:03 -07:00
James Lu
59af8e196c
ts6: fix call to operup hook when handling EUID
2015-10-25 10:27:06 -07:00