mirror of
https://codeberg.org/Mercury-IM/Smack
synced 2024-11-26 08:12:05 +01:00
Use the correct ad-hoc action in ServiceAdministrationManager
Fixes SMACK-804. Thanks to Holger Weiß for his help with the issue. Smack would always use the 'next' action only 'execute' (which is always allowed) and 'complete' where candidates. Example XMPP trace: SENT: <iq to='salem.geekplace.eu' id='f0JiQ-45' type='set'><command xmlns='http://jabber.org/protocol/commands' node='http://jabber.org/protocol/admin#add-user' action='execute'></command></iq><r xmlns='urn:xmpp:sm:3'/> RECV: <iq xml:lang='en' to='sinttest-admin@salem.geekplace.eu/one-phx8g' from='salem.geekplace.eu' type='result' id='f0JiQ-45'> <command status='executing' sessionid='2018-02-21T14:48:13.508812Z' node='http://jabber.org/protocol/admin#add-user' xmlns='http://jabber.org/protocol/commands'> <actions execute='complete'> <complete/> </actions> <x type='form' xmlns='jabber❌data'> <title>Add User</title> <field var='FORM_TYPE' type='hidden'><value>http://jabber.org/protocol/admin</value></field> <field var='accountjid' type='jid-single' label='Jabber ID'><required/></field> <field var='password' type='text-private' label='Password'><required/></field> <field var='password-verify' type='text-private' label='Password Verification'><required/></field> </x> </command> </iq> SENT: <iq to='salem.geekplace.eu' id='f0JiQ-49' type='set'> <command xmlns='http://jabber.org/protocol/commands' node='http://jabber.org/protocol/admin#add-user' sessionid='2018-02-21T14:48:13.508812Z' action='next'> <x xmlns='jabber❌data' type='submit'> <field var='FORM_TYPE' type='hidden'><value>http://jabber.org/protocol/admin</value></field> <field var='accountjid' type='jid-single'><value>smack-inttest-one-phx8g@salem.geekplace.eu</value></field> <field var='password' type='text-private'><value>L2Cz2gKeVsBAEBRJ</value></field> <field var='password-verify' type='text-private'><value>L2Cz2gKeVsBAEBRJ</value></field> </x> </command> </iq> RECV: <iq xml:lang='en' to='sinttest-admin@salem.geekplace.eu/one-phx8g' from='salem.geekplace.eu' type='error' id='f0JiQ-49'> <command action='next' sessionid='2018-02-21T14:48:13.508812Z' node='http://jabber.org/protocol/admin#add-user' xmlns='http://jabber.org/protocol/commands'> <x type='submit' xmlns='jabber❌data'> <field var='FORM_TYPE' type='hidden'><value>http://jabber.org/protocol/admin</value></field> <field var='accountjid' type='jid-single'><value>smack-inttest-one-phx8g@salem.geekplace.eu</value></field> <field var='password' type='text-private'><value>L2Cz2gKeVsBAEBRJ</value></field> <field var='password-verify' type='text-private'><value>L2Cz2gKeVsBAEBRJ</value></field> </x> </command> <error code='400' type='modify'><bad-request xmlns='urn:ietf:params:xml:ns:xmpp-stanzas'/><text xmlns='urn:ietf:params:xml:ns:xmpp-stanzas'>Unexpected action</text> </error> </iq>
This commit is contained in:
parent
20b97eb241
commit
245a3b3851
1 changed files with 2 additions and 2 deletions
|
@ -85,7 +85,7 @@ public class ServiceAdministrationManager extends Manager {
|
||||||
FormField passwordVerifyField = answerForm.getField("password-verify");
|
FormField passwordVerifyField = answerForm.getField("password-verify");
|
||||||
passwordVerifyField.addValue(password);
|
passwordVerifyField.addValue(password);
|
||||||
|
|
||||||
command.next(answerForm);
|
command.execute(answerForm);
|
||||||
assert (command.isCompleted());
|
assert (command.isCompleted());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -113,7 +113,7 @@ public class ServiceAdministrationManager extends Manager {
|
||||||
FormField accountJids = answerForm.getField("accountjids");
|
FormField accountJids = answerForm.getField("accountjids");
|
||||||
accountJids.addValues(JidUtil.toStringList(jidsToDelete));
|
accountJids.addValues(JidUtil.toStringList(jidsToDelete));
|
||||||
|
|
||||||
command.next(answerForm);
|
command.execute(answerForm);
|
||||||
assert (command.isCompleted());
|
assert (command.isCompleted());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue