Software /
code /
prosody
File
spec/scansion/extdisco.scs @ 12713:52eead170bb8
util.paseto: Drop custom wrappers around key objects
The PASETO spec recommends - no, *requires* - that implementations enforce
type safety for keys, and e.g. do not pass them around as arbitrary byte
strings. Typed wrapper objects are recommended.
I originally followed this advice when starting the lib. However, key wrapping
and type safety is now also a feature of util.crypto. All we're doing is
duplicating it unnecessarily with this additional wrapper code.
author | Matthew Wild <mwild1@gmail.com> |
---|---|
date | Mon, 11 Jul 2022 14:30:39 +0100 |
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