]> git.0d.be Git - empathy.git/commitdiff
auth-factory: also handle auth channels
authorJonny Lamb <jonnylamb@gnome.org>
Wed, 1 Dec 2010 14:39:48 +0000 (14:39 +0000)
committerJonny Lamb <jonnylamb@gnome.org>
Wed, 1 Dec 2010 14:39:48 +0000 (14:39 +0000)
Signed-off-by: Jonny Lamb <jonnylamb@gnome.org>
data/Empathy.Auth.client
libempathy/empathy-auth-factory.c

index 4c6adc0deb60b386fb34c1f999761ff213e46e36..1fbf103685c71da77137a66b8f72b72bd6ed6010 100644 (file)
@@ -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
index fa2b7dcd15ff16b3cf28333fc34bf83f3482caf0..fa706d5fde6a7d17dc010864e937c586b6af3392 100644 (file)
@@ -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