WIP: IBR: Initial attempt
Not with the current state of the MR, but I can create accounts already if I shut off feature_bind
, feature_session
, and feature_mechanisms
in slixmpp. See also slixmpp!4
What we had in mind was to attempt account creation (loop until the user gets it right or cancels), and then attempt the normal auth process with the provided jid/password during creation.
For now I am focusing on getting IBR to work and not the UI at all as you can see. I also only make it works for the default prosody case. Will support more when this works.
At the moment, the issue is that feature_bind kicks in, tries to authenticate, fails, and somewhere something sends </stream:stream>
.
2018-08-20 00:09:37,738 DEBUG:xmlstream:SEND: <stream:stream to='buquet.me' xmlns:stream='http://etherx.jabber.org/streams' xmlns='jabber:client' xml:lang='en' version='1.0'>
2018-08-20 00:09:38,044 DEBUG:xmlstream:RECV: <stream:stream xml:lang="en" from="buquet.me" id="098889c2-f1a7-48dc-bc28-a07d34b95df2" version="1.0">
2018-08-20 00:09:38,045 DEBUG:xmlstream:RECV: <stream:features xmlns="http://etherx.jabber.org/streams"><starttls xmlns="urn:ietf:params:xml:ns:xmpp-tls"><required /></starttls></stream:features>
2018-08-20 00:09:38,047 DEBUG:xmlstream:SEND: <starttls xmlns="urn:ietf:params:xml:ns:xmpp-tls"><required /></starttls>
2018-08-20 00:09:38,350 DEBUG:xmlstream:RECV: <proceed xmlns="urn:ietf:params:xml:ns:xmpp-tls" />
2018-08-20 00:09:38,351 DEBUG:starttls:Starting TLS
2018-08-20 00:09:39,374 DEBUG:xmlstream:Event triggered: ssl_cert
2018-08-20 00:09:39,380 DEBUG:xmlstream:Event triggered: tls_success
2018-08-20 00:09:39,380 DEBUG:xmlstream:SEND: <stream:stream to='buquet.me' xmlns:stream='http://etherx.jabber.org/streams' xmlns='jabber:client' xml:lang='en' version='1.0'>
2018-08-20 00:09:39,682 DEBUG:xmlstream:RECV: <stream:stream xml:lang="en" from="buquet.me" id="b3560f1c-4a41-43fe-a207-f143584ea053" version="1.0">
2018-08-20 00:09:39,683 DEBUG:xmlstream:RECV: <stream:features xmlns="http://etherx.jabber.org/streams"><mechanisms xmlns="urn:ietf:params:xml:ns:xmpp-sasl"><mechanism>PLAIN</mechanism><mechanism>SCRAM-SHA-1</mechanism><mechanism>SCRAM-SHA-1-PLUS</mechanism></mechanisms><register xmlns="http://jabber.org/features/iq-register" /></stream:features>
2018-08-20 00:09:39,685 DEBUG:xmlstream:SEND: <iq id="69a48a4c-903f-49dc-aeea-a3bd4b99f2f0-1" type="get"><query xmlns="jabber:iq:register" /></iq>
2018-08-20 00:09:39,685 DEBUG:xmlstream:Event triggered: register
2018-08-20 00:09:39,686 ERROR:mechanisms:No appropriate login method.
2018-08-20 00:09:39,686 DEBUG:xmlstream:Event triggered: failed_all_auth
2018-08-20 00:09:39,688 DEBUG:rostertab: TAB Refresh: RosterInfoTab
2018-08-20 00:09:39,688 DEBUG:roster_win:Refresh: RosterWin
2018-08-20 00:09:39,688 DEBUG:misc:Refresh: VerticalSeparator
2018-08-20 00:09:39,688 DEBUG:text_win:Refresh: TextWin
2018-08-20 00:09:39,689 DEBUG:roster_win:Refresh: ContactInfoWin
2018-08-20 00:09:39,689 DEBUG:info_bar:Refresh: GlobalInfoBar
2018-08-20 00:09:39,689 DEBUG:input_placeholders:Refresh: HelpText
2018-08-20 00:09:39,689 DEBUG:xmlstream:Event triggered: no_auth
2018-08-20 00:09:39,690 DEBUG:rostertab: TAB Refresh: RosterInfoTab
2018-08-20 00:09:39,690 DEBUG:roster_win:Refresh: RosterWin
2018-08-20 00:09:39,690 DEBUG:misc:Refresh: VerticalSeparator
2018-08-20 00:09:39,690 DEBUG:text_win:Refresh: TextWin
2018-08-20 00:09:39,691 DEBUG:roster_win:Refresh: ContactInfoWin
2018-08-20 00:09:39,691 DEBUG:info_bar:Refresh: GlobalInfoBar
2018-08-20 00:09:39,691 DEBUG:input_placeholders:Refresh: HelpText
2018-08-20 00:09:39,691 DEBUG:xmlstream:SEND: </stream:stream>
2018-08-20 00:09:39,691 DEBUG:clientxmpp:Finished processing stream features.
2018-08-20 00:09:39,691 DEBUG:xmlstream:Event triggered: stream_negotiated
2018-08-20 00:09:39,692 DEBUG:connection:FOO: <Future pending>
2018-08-20 00:09:39,692 DEBUG:xmlstream:SEND: <iq id="69a48a4c-903f-49dc-aeea-a3bd4b99f2f0-2" type="set"><query xmlns="jabber:iq:register"><x xmlns="jabber:x:data" type="submit"><field var="FORM_TYPE"><value>jabber:iq:register</value></field><field var="username"><value>caaa</value></field><field var="password"><value>test</value></field></x></query></iq>
2018-08-20 00:09:39,989 DEBUG:xmlstream:RECV: <iq id="69a48a4c-903f-49dc-aeea-a3bd4b99f2f0-1" type="result"><query xmlns="jabber:iq:register"><instructions>Choose a username and password for use with this service.</instructions><username /><password /><x xmlns="jabber:x:data" type="form"><title>Creating a new account</title><instructions>Choose a username and password for use with this service.</instructions><field type="text-single" label="Username" var="username"><required /></field><field type="text-private" label="Password" var="password"><required /></field></x></query></iq>
2018-08-20 00:09:39,992 DEBUG:xmlstream:End of stream received
2018-08-20 00:09:39,992 DEBUG:xmlstream:Event triggered: killed
2018-08-20 00:09:39,993 INFO:xmlstream:connection_lost: (None,)
2018-08-20 00:09:39,993 DEBUG:xmlstream:Event triggered: disconnected
2018-08-20 00:09:39,994 DEBUG:xmlstream:Tried to cancel unscheduled event: Whitespace Keepalive
2018-08-20 00:09:39,994 DEBUG:xmlstream:Event triggered: session_end
2018-08-20 00:09:39,995 DEBUG:xmlstream:Tried to cancel unscheduled event: Ping keepalive
2018-08-20 00:09:39,996 DEBUG:rostertab: TAB Refresh: RosterInfoTab
2018-08-20 00:09:39,996 DEBUG:roster_win:Refresh: RosterWin
2018-08-20 00:09:39,996 DEBUG:roster_win:The roster has changed, rebuilding the cache…
2018-08-20 00:09:39,996 DEBUG:misc:Refresh: VerticalSeparator
2018-08-20 00:09:39,996 DEBUG:text_win:Refresh: TextWin
2018-08-20 00:09:39,997 DEBUG:roster_win:Refresh: ContactInfoWin
2018-08-20 00:09:39,997 DEBUG:info_bar:Refresh: GlobalInfoBar
2018-08-20 00:09:39,997 DEBUG:input_placeholders:Refresh: HelpText
2018-08-20 00:09:44,059 DEBUG:core:Input is readable.