patches/telepathy-gabble-10-jingleinfo.diff
author jurikm
Sun, 12 Feb 2012 14:04:10 +0000
changeset 8245 383896da4129
parent 3220 2e6660cf83df
permissions -rw-r--r--
SFEsauerbraten.spec: add IPS package name
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
3220
2e6660cf83df SFEtelepathy-gabble.spec: fix jingleinfo security bug
jurikm
parents:
diff changeset
     1
--- telepathy-gabble-0.10.3/src/jingle-factory.c	Wed Oct  6 14:43:30 2010
2e6660cf83df SFEtelepathy-gabble.spec: fix jingleinfo security bug
jurikm
parents:
diff changeset
     2
+++ telepathy-gabble-0.10.3-patch/src/jingle-factory.c	Sat Feb 19 15:14:19 2011
2e6660cf83df SFEtelepathy-gabble.spec: fix jingleinfo security bug
jurikm
parents:
diff changeset
     3
@@ -254,7 +254,23 @@
2e6660cf83df SFEtelepathy-gabble.spec: fix jingleinfo security bug
jurikm
parents:
diff changeset
     4
   GabbleJingleFactoryPrivate *priv = fac->priv;
2e6660cf83df SFEtelepathy-gabble.spec: fix jingleinfo security bug
jurikm
parents:
diff changeset
     5
   LmMessageSubType sub_type;
2e6660cf83df SFEtelepathy-gabble.spec: fix jingleinfo security bug
jurikm
parents:
diff changeset
     6
   LmMessageNode *query_node, *node;
2e6660cf83df SFEtelepathy-gabble.spec: fix jingleinfo security bug
jurikm
parents:
diff changeset
     7
+  const gchar *from = wocky_node_get_attribute (wocky_stanza_get_top_node (message), "from");
2e6660cf83df SFEtelepathy-gabble.spec: fix jingleinfo security bug
jurikm
parents:
diff changeset
     8
 
2e6660cf83df SFEtelepathy-gabble.spec: fix jingleinfo security bug
jurikm
parents:
diff changeset
     9
+  if (from != NULL)
2e6660cf83df SFEtelepathy-gabble.spec: fix jingleinfo security bug
jurikm
parents:
diff changeset
    10
+    {
2e6660cf83df SFEtelepathy-gabble.spec: fix jingleinfo security bug
jurikm
parents:
diff changeset
    11
+      TpBaseConnection *base_conn = TP_BASE_CONNECTION (priv->conn);
2e6660cf83df SFEtelepathy-gabble.spec: fix jingleinfo security bug
jurikm
parents:
diff changeset
    12
+      TpHandleRepoIface *contact_repo = tp_base_connection_get_handles (
2e6660cf83df SFEtelepathy-gabble.spec: fix jingleinfo security bug
jurikm
parents:
diff changeset
    13
+          base_conn, TP_HANDLE_TYPE_CONTACT);
2e6660cf83df SFEtelepathy-gabble.spec: fix jingleinfo security bug
jurikm
parents:
diff changeset
    14
+      TpHandle sender = tp_handle_lookup (contact_repo, from, NULL, NULL);
2e6660cf83df SFEtelepathy-gabble.spec: fix jingleinfo security bug
jurikm
parents:
diff changeset
    15
+
2e6660cf83df SFEtelepathy-gabble.spec: fix jingleinfo security bug
jurikm
parents:
diff changeset
    16
+      if (sender != base_conn->self_handle)
2e6660cf83df SFEtelepathy-gabble.spec: fix jingleinfo security bug
jurikm
parents:
diff changeset
    17
+        {
2e6660cf83df SFEtelepathy-gabble.spec: fix jingleinfo security bug
jurikm
parents:
diff changeset
    18
+          DEBUG ("ignoring jingleinfo from '%s', not ourself nor the server",
2e6660cf83df SFEtelepathy-gabble.spec: fix jingleinfo security bug
jurikm
parents:
diff changeset
    19
+              from);
2e6660cf83df SFEtelepathy-gabble.spec: fix jingleinfo security bug
jurikm
parents:
diff changeset
    20
+          return LM_HANDLER_RESULT_ALLOW_MORE_HANDLERS;
2e6660cf83df SFEtelepathy-gabble.spec: fix jingleinfo security bug
jurikm
parents:
diff changeset
    21
+        }
2e6660cf83df SFEtelepathy-gabble.spec: fix jingleinfo security bug
jurikm
parents:
diff changeset
    22
+    }
2e6660cf83df SFEtelepathy-gabble.spec: fix jingleinfo security bug
jurikm
parents:
diff changeset
    23
+
2e6660cf83df SFEtelepathy-gabble.spec: fix jingleinfo security bug
jurikm
parents:
diff changeset
    24
   query_node = lm_message_node_get_child_with_namespace (
2e6660cf83df SFEtelepathy-gabble.spec: fix jingleinfo security bug
jurikm
parents:
diff changeset
    25
       wocky_stanza_get_top_node (message), "query", NS_GOOGLE_JINGLE_INFO);
2e6660cf83df SFEtelepathy-gabble.spec: fix jingleinfo security bug
jurikm
parents:
diff changeset
    26