Software /
code /
prosody
File
spec/scansion/extdisco.scs @ 13182:c48ae06e24d6
util.datamanager: Fix indexing first item if not at the very start
If the first item does not start at position 0 then the index function
produces a phantom first entry covering position zero until where the
real first item starts. When using the index, this would make it either
appear as the first item was missing or cause an off-by-one issue with
remaining items.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Mon, 10 Jul 2023 17:19:05 +0200 |
parent | 11753:c4599a7c534c |
line wrap: on
line source
# XEP-0215: External Service Discovery [Client] Romeo password: password jid: user@localhost/mFquWxSr ----- Romeo connects Romeo sends: <iq type='get' xml:lang='sv' id='lx2' to='localhost'> <services xmlns='urn:xmpp:extdisco:2'/> </iq> Romeo receives: <iq type='result' id='lx2' from='localhost'> <services xmlns='urn:xmpp:extdisco:2'> <service host='default.example' transport='udp' port='9876' type='stun'/> <service port='9876' type='turn' restricted='1' password='yHYYBDN7M3mdlug0LTdJbW0GvvQ=' transport='udp' host='default.example' username='1219525744'/> <service port='9876' type='turn' restricted='1' password='1Uc6QfrDhIlbK97rGCUQ/cUICxs=' transport='udp' host='default.example' username='1219525744'/> <service port='2121' type='ftp' restricted='1' password='password' transport='tcp' host='default.example' username='john'/> <service port='21' type='ftp' restricted='1' password='password' transport='tcp' host='ftp.example.com' username='john'/> </services> </iq> Romeo sends: <iq type='get' xml:lang='sv' id='lx3' to='localhost'> <services xmlns='urn:xmpp:extdisco:2' type='ftp'/> </iq> Romeo receives: <iq type='result' id='lx3' from='localhost'> <services xmlns='urn:xmpp:extdisco:2'> <service port='2121' type='ftp' restricted='1' password='password' transport='tcp' host='default.example' username='john'/> <service port='21' type='ftp' restricted='1' password='password' transport='tcp' host='ftp.example.com' username='john'/> </services> </iq> Romeo sends: <iq type='get' xml:lang='sv' id='lx4' to='localhost'> <credentials xmlns='urn:xmpp:extdisco:2'> <service host='default.example' type='turn'/> </credentials> </iq> Romeo receives: <iq type='result' id='lx4' from='localhost'> <credentials xmlns='urn:xmpp:extdisco:2'> <service port='9876' type='turn' restricted='1' password='yHYYBDN7M3mdlug0LTdJbW0GvvQ=' transport='udp' host='default.example' username='1219525744'/> <service port='9876' type='turn' restricted='1' password='1Uc6QfrDhIlbK97rGCUQ/cUICxs=' transport='udp' host='default.example' username='1219525744'/> </credentials> </iq> Romeo sends: <iq type='get' xml:lang='sv' id='lx5' to='localhost'> <credentials xmlns='urn:xmpp:extdisco:2'> <service host='default.example' /> </credentials> </iq> Romeo receives: <iq type='error' id='lx5' from='localhost'> <error type='modify'> <bad-request xmlns='urn:ietf:params:xml:ns:xmpp-stanzas'/> </error> </iq> Romeo disconnects # recording ended on 2020-07-18T16:47:57Z