James Lu
3729b23e43
Move KICK handlers to IRCS2SProtocol
2017-07-05 00:34:48 -07:00
James Lu
449b547a23
ngircd: properly track server tokens so that users spawn on the right servers
...
This brings in utils.PUIDGenerator once again for pseudo-SIDs; the counter numbers in these are used directly as server tokens
2017-07-05 00:18:13 -07:00
James Lu
4e082c2bbf
PUIDGenerator: allow custom counter start values
2017-07-05 00:12:25 -07:00
James Lu
163f0099e7
IRCCommonProtocol: also expand PSIDs in _expandPUID
2017-07-04 23:56:12 -07:00
James Lu
5d4f2149e6
Move squit() to ircs2s_common
2017-07-04 23:41:00 -07:00
James Lu
9132556fd9
PyLinkNetworkCore: fix __repr__ definition
2017-07-04 23:32:41 -07:00
James Lu
b780070ee6
ngircd: implement nick changing
2017-07-04 23:26:05 -07:00
James Lu
42a25300c4
ngircd: don't leave user TS none in spawn_client
2017-07-04 23:25:49 -07:00
James Lu
759210a1e4
ngircd: add inbound & outbound JOIN, SERVER
2017-07-04 23:10:12 -07:00
James Lu
84a6cec732
p10: fix endburst_delay note
2017-07-04 23:09:48 -07:00
James Lu
37f0dcb456
ngircd: fix SQUIT user tracking
2017-07-04 23:09:13 -07:00
James Lu
970b38719d
core: rename ping() to _ping_uplink(), and drop the unused source/target arguments
2017-07-04 22:09:50 -07:00
James Lu
43af9d1bac
protocols: move ping() into IRCCommonProtocol
2017-07-04 22:00:22 -07:00
James Lu
276b0b251d
protocols: move handle_pong to IRCCommonProtocol
2017-07-04 21:55:09 -07:00
James Lu
2e5fc2467f
ngircd: handle CHANINFO (channel mode/topic bursts) and NJOIN (userlist bursts)
2017-07-03 14:24:57 -07:00
James Lu
7b2f93fd4c
ngircd: send an UID hook in user introductions
2017-07-03 14:24:45 -07:00
James Lu
b6b1cbeb2d
ngircd: send our own server negotiation info to complete the connection
...
Aside from the 376, none of this is /required/, but it's best to be consistent...
2017-07-03 13:35:43 -07:00
James Lu
4cdae540b5
IRCCommonProtocol: fix type of maxnicklen
2017-07-03 13:07:38 -07:00
James Lu
66af57e74f
IRCCommonProtocol: handle EXCEPTS, INVEX, NICKLEN, DEAF, CALLERID in 005
2017-07-03 13:05:47 -07:00
James Lu
06d69aadf7
clientbot: fix self.connected.set() order
2017-07-03 13:04:43 -07:00
James Lu
a5e7d76341
IRCCommonProtocol: only update the same tokens once per connection
2017-07-03 12:49:38 -07:00
James Lu
ec308acfcb
protocols: move 005 handling code to IRCCommonProtocol
...
Also enable extended server negotiation for ngIRCd, which really just passes 005 between servers (nifty!)
2017-07-03 12:45:39 -07:00
James Lu
e9d7ac39ea
ngircd: remove duplicate function
2017-07-03 12:21:44 -07:00
James Lu
091c763a0f
Initial ngIRCd protocol stub
2017-07-03 00:24:26 -07:00
James Lu
8bf65f3820
ircs2s_common: implicitly expand PUIDs in _send_with_prefix
2017-07-03 00:13:17 -07:00
James Lu
78034096a8
protocols: merge _expandPUID into ircs2s_common
2017-07-03 00:11:49 -07:00
James Lu
8ddcc4d9a6
Move part, quit, message, notice, topic, _send_with_prefix, _expandPUID to ircs2s_common
2017-07-03 00:05:58 -07:00
James Lu
f163d7ddde
protocols: remove extraneous "Error: " from exception messages
2017-07-02 22:52:46 -07:00
James Lu
c9272c25ce
IRCS2SProtocol: skip implicit message sender fetching if the first arg starts with a :
2017-07-02 22:44:57 -07:00
James Lu
640e903dd6
Move _get_SID/_get_UID to IRCCommonProtocol
2017-07-02 22:36:47 -07:00
James Lu
bbc4dec8dd
NetworkCoreWithUtils: shortcut _get_SID/UID if the target already exists
2017-07-02 22:35:39 -07:00
James Lu
e866e9eb7b
NetworkCore: demote "stopping connect loop" messages to DEBUG
2017-07-02 22:26:28 -07:00
James Lu
e9a6328566
protocols: remove unnecessary handle_squit overrides
2017-07-02 22:20:52 -07:00
James Lu
d4260734dc
clientbot: make sure incoming server messages don't clash with a PSID/PUID
2017-07-02 22:13:57 -07:00
James Lu
1e39fb78db
clientbot: rename _validateNick -> _check_puid_collision
2017-07-02 22:11:40 -07:00
James Lu
ce2852bdc0
clientbot: get rid of _get_SID in message parsing
...
It isn't needed because any external server messages are sent raw.
2017-07-02 22:09:22 -07:00
James Lu
62669c085d
relay: re-add 'CLAIM #channel -'
...
This was mistakenly removed in d51c399351
due to a merge conflict, oops...
2017-07-02 22:06:50 -07:00
James Lu
51d8d3b3b8
clientbot: store external server names raw instead of using server name mangling
2017-07-02 21:59:40 -07:00
James Lu
ee5a884328
clientbot: fix imports for PyLink 2.0
2017-07-02 21:59:29 -07:00
James Lu
883f9199ec
control: move rehash signal to SIGUSR1, and shutdown on SIGHUP (terminal close)
...
PyLink technically isn't a daemon, so it's a bit odd to have it linger around after the controlling terminal has died.
2017-07-02 21:19:04 -07:00
James Lu
f0fab0c0ad
games: remove 'fml'
...
This is a blocking command which can potentially freeze the server given enough network interruption.
It will likely be reintroduced later on in some sort of "Websites" plugin, possibly in the contrib repository.
2017-07-02 21:18:32 -07:00
James Lu
f800c9f7c2
Merge branch 'wip/irc-explosion-2' into devel ( #475 )
...
This brings in a major refactor of the IRC/protocol stack, to start off 2.0-dev.
2017-07-02 21:16:06 -07:00
James Lu
5158497125
Bump version to 2.0-dev
2017-07-02 21:15:15 -07:00
James Lu
2c32269b7f
PyLink 1.2-beta1
2017-07-02 13:19:49 -07:00
James Lu
f2b644e2bb
relay: be more verbose in 'grabbing spawnlocks' messages
2017-07-02 12:36:33 -07:00
James Lu
60788e4ba5
relay_clientbot: remove dark blue from the random colours list
...
It's difficult to read on clients configurated to use a dark background. Reported by @MrBenC
2017-07-01 18:06:50 -07:00
James Lu
06ef421578
classes: clean up references to deprecated classes/methods
2017-06-30 21:49:29 -07:00
James Lu
54d7fe6dc5
protocols: convert IrcServer usage to Server
2017-06-30 21:45:10 -07:00
James Lu
a204d2b2db
core: convert IrcUser calls to User
2017-06-30 21:44:31 -07:00
James Lu
b81a03fda9
protocols: Channel.removeuser -> Channel.remove_user
2017-06-30 21:40:50 -07:00