aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJonny Lamb <jonnylamb@gnome.org>2010-12-01 22:39:48 +0800
committerJonny Lamb <jonnylamb@gnome.org>2010-12-01 22:39:48 +0800
commit53ead42832d2af12c9487a6f8b370787442940f9 (patch)
tree34a9a6f2e8700d3adec20c5383aaf260f3e00ec9
parenta76960e927b5f32387c17bb580d360669d6aace8 (diff)
downloadgsoc2013-empathy-53ead42832d2af12c9487a6f8b370787442940f9.tar
gsoc2013-empathy-53ead42832d2af12c9487a6f8b370787442940f9.tar.gz
gsoc2013-empathy-53ead42832d2af12c9487a6f8b370787442940f9.tar.bz2
gsoc2013-empathy-53ead42832d2af12c9487a6f8b370787442940f9.tar.lz
gsoc2013-empathy-53ead42832d2af12c9487a6f8b370787442940f9.tar.xz
gsoc2013-empathy-53ead42832d2af12c9487a6f8b370787442940f9.tar.zst
gsoc2013-empathy-53ead42832d2af12c9487a6f8b370787442940f9.zip
auth-factory: also handle auth channels
Signed-off-by: Jonny Lamb <jonnylamb@gnome.org>
-rw-r--r--data/Empathy.Auth.client4
-rw-r--r--libempathy/empathy-auth-factory.c13
2 files changed, 16 insertions, 1 deletions
diff --git a/data/Empathy.Auth.client b/data/Empathy.Auth.client
index 4c6adc0de..1fbf10368 100644
--- a/data/Empathy.Auth.client
+++ b/data/Empathy.Auth.client
@@ -4,3 +4,7 @@ Interfaces=org.freedesktop.Telepathy.Client.Handler
[org.freedesktop.Telepathy.Client.Handler.HandlerChannelFilter 0]
org.freedesktop.Telepathy.Channel.ChannelType s=org.freedesktop.Telepathy.Channel.Type.ServerTLSConnection
org.freedesktop.Telepathy.Channel.TargetHandleType u=0
+
+[org.freedesktop.Telepathy.Client.Handler.HandlerChannelFilter 1]
+org.freedesktop.Telepathy.Channel.ChannelType s=org.freedesktop.Telepathy.Channel.Type.ServerAuthentication
+org.freedesktop.Telepathy.Channel.Type.ServerAuthentication s=org.freedesktop.Telepathy.Channel.Interface.SASLAuthentication
diff --git a/libempathy/empathy-auth-factory.c b/libempathy/empathy-auth-factory.c
index fa2b7dcd1..fa706d5fd 100644
--- a/libempathy/empathy-auth-factory.c
+++ b/libempathy/empathy-auth-factory.c
@@ -218,12 +218,23 @@ empathy_auth_factory_init (EmpathyAuthFactory *self)
FALSE, handle_channels_cb, self, NULL);
tp_base_client_take_handler_filter (priv->handler, tp_asv_new (
+ /* ChannelType */
TP_PROP_CHANNEL_CHANNEL_TYPE, G_TYPE_STRING,
EMP_IFACE_CHANNEL_TYPE_SERVER_TLS_CONNECTION,
+ /* AuthenticationMethod */
TP_PROP_CHANNEL_TARGET_HANDLE_TYPE, G_TYPE_UINT,
TP_HANDLE_TYPE_NONE, NULL));
- g_object_unref (bus);
+ tp_base_client_take_handler_filter (priv->handler, tp_asv_new (
+ /* ChannelType */
+ TP_PROP_CHANNEL_CHANNEL_TYPE, G_TYPE_STRING,
+ TP_IFACE_CHANNEL_TYPE_SERVER_AUTHENTICATION,
+ /* AuthenticationMethod */
+ TP_PROP_CHANNEL_TYPE_SERVER_AUTHENTICATION_AUTHENTICATION_METHOD,
+ G_TYPE_STRING, TP_IFACE_CHANNEL_INTERFACE_SASL_AUTHENTICATION,
+ NULL));
+
+ g_object_unref (bus);
}
static void