File

spec/scansion/keep_full_sub_req.scs @ 11922:28f5c8061dad

net.server_epoll: Fix streaming downloads (thanks Menel) ff4e34c448a4 broke the way net.http.server streams downloads from disk because it made writes from the ondrain callback no longer reset the want-write flag, causing the download to halt. Writes from the predrain handler still must not trigger anything but additions to the buffer, since it is about to do all the socket writing already.
author Kim Alvefur <zash@zash.se>
date Fri, 19 Nov 2021 15:45:01 +0100
parent 10515:35bf3b80480f
line wrap: on
line source

# server MUST keep a record of the complete presence stanza comprising the subscription request (#689)

[Client] Alice
	jid: pars-a@localhost
	password: password

[Client] Bob
	jid: pars-b@localhost
	password: password

[Client] Bob's phone
	jid: pars-b@localhost/phone
	password: password

---------

Alice connects

Alice sends:
	<presence to="${Bob's JID}" type="subscribe">
		<preauth xmlns="urn:xmpp:pars:0" token="1tMFqYDdKhfe2pwp" />
	</presence>

Alice disconnects

Bob connects

Bob sends:
	<presence/>

Bob receives:
	<presence from="${Bob's full JID}"/>

Bob receives:
	<presence from="${Alice's JID}" type="subscribe">
		<preauth xmlns="urn:xmpp:pars:0" token="1tMFqYDdKhfe2pwp" />
	</presence>

Bob disconnects

# Works if they reconnect too

Bob's phone connects

Bob's phone sends:
	<presence/>

Bob's phone receives:
	<presence from="${Bob's phone's full JID}"/>


Bob's phone receives:
	<presence from="${Alice's JID}" type="subscribe">
		<preauth xmlns="urn:xmpp:pars:0" token="1tMFqYDdKhfe2pwp" />
	</presence>

Bob's phone disconnects