1
0
mirror of https://github.com/profanity-im/profanity.git synced 2025-01-03 14:57:42 -05:00

Fix optionnal sessionid in xep 0050

This commit is contained in:
Paul Fariello 2019-01-21 15:02:54 +01:00
parent 1cb045e30c
commit ac2d1c07fa
2 changed files with 9 additions and 2 deletions

View File

@ -1226,10 +1226,15 @@ _command_exec_response_handler(xmpp_stanza_t *const stanza, void *const userdata
win_command_exec_error(win, command, "Unsupported command response");
return 0;
}
const char *sessionid = xmpp_stanza_get_attribute(cmd, "sessionid");
DataForm *form = form_create(x);
CommandConfigData *data = malloc(sizeof(CommandConfigData));
data->sessionid = strdup(xmpp_stanza_get_attribute(cmd, "sessionid"));
if (sessionid == NULL) {
data->sessionid = NULL;
} else {
data->sessionid = strdup(sessionid);
}
data->command = command;
ProfConfWin *confwin = (ProfConfWin*)wins_new_config(from, form, iq_submit_command_config, iq_cancel_command_config, data);
confwin_handle_configuration(confwin, form);

View File

@ -2078,7 +2078,9 @@ stanza_create_command_config_submit_iq(xmpp_ctx_t *ctx, const char *const room,
xmpp_stanza_set_name(command, STANZA_NAME_COMMAND);
xmpp_stanza_set_ns(command, STANZA_NS_COMMAND);
xmpp_stanza_set_attribute(command, "node", node);
xmpp_stanza_set_attribute(command, "sessionid", sessionid);
if (sessionid != NULL) {
xmpp_stanza_set_attribute(command, "sessionid", sessionid);
}
xmpp_stanza_t *x = form_create_submission(form);
xmpp_stanza_add_child(command, x);