aboutsummaryrefslogtreecommitdiff
path: root/libdino
diff options
context:
space:
mode:
Diffstat (limited to 'libdino')
-rw-r--r--libdino/src/service/connection_manager.vala5
-rw-r--r--libdino/src/service/module_manager.vala11
2 files changed, 14 insertions, 2 deletions
diff --git a/libdino/src/service/connection_manager.vala b/libdino/src/service/connection_manager.vala
index c8b5c4ed..5e92dec9 100644
--- a/libdino/src/service/connection_manager.vala
+++ b/libdino/src/service/connection_manager.vala
@@ -231,12 +231,13 @@ public class ConnectionManager : Object {
stream.attached_modules.connect((stream) => {
stream_attached_modules(account, stream);
change_connection_state(account, ConnectionState.CONNECTED);
-
-// stream.get_module(Xep.Muji.Module.IDENTITY).join_call(stream, new Jid("test@muc.poez.io"), true);
});
stream.get_module(Sasl.Module.IDENTITY).received_auth_failure.connect((stream, node) => {
set_connection_error(account, new ConnectionError(ConnectionError.Source.SASL, null));
});
+ stream.get_module(Xep.ExtensibleSaslProfile.Module.IDENTITY).received_auth_failure.connect((stream, node) => {
+ set_connection_error(account, new ConnectionError(ConnectionError.Source.SASL, null));
+ });
string connection_uuid = connections[account].uuid;
stream.received_node.connect(() => {
diff --git a/libdino/src/service/module_manager.vala b/libdino/src/service/module_manager.vala
index 64be76e1..127f2d93 100644
--- a/libdino/src/service/module_manager.vala
+++ b/libdino/src/service/module_manager.vala
@@ -46,8 +46,19 @@ public class ModuleManager {
lock(module_map) {
module_map[account] = new ArrayList<XmppStreamModule>();
module_map[account].add(new Iq.Module());
+
+ var sasl2_module = new Xep.ExtensibleSaslProfile.Module(account.bare_jid.localpart, account.password);
+ module_map[account].add(sasl2_module);
module_map[account].add(new Sasl.Module(account.bare_jid.to_string(), account.password));
module_map[account].add(new Xep.StreamManagement.Module());
+
+ var bind2_sasl2_activation = new Xep.Bind2.Sasl2Activation();
+ bind2_sasl2_activation.inline_activation_providers[Xep.MessageCarbons.NS_URI] = new Xep.MessageCarbons.Bind2Activation();
+ bind2_sasl2_activation.inline_activation_providers[Xep.StreamManagement.NS_URI] = new Xep.StreamManagement.Bind2Activation();
+
+ sasl2_module.inline_activation_providers[Xep.Bind2.NS_URI] = bind2_sasl2_activation;
+ sasl2_module.inline_activation_providers[Xep.StreamManagement.NS_URI] = new Xep.StreamManagement.Sasl2Activation();
+
module_map[account].add(new Bind.Module(account.resourcepart));
module_map[account].add(new Session.Module());
module_map[account].add(new Roster.Module());