Mercurial > pidgin.yaz
diff libpurple/protocols/jabber/disco.c @ 26539:20743d9bd62d
Fix allowing gmail user to initiate voice call by advertising a specific ext
From xep-0115 v1.3:
"The names of the feature bundles MUST NOT be used for semantic purposes: they
are merely opaque identifiers that will be used in other use cases."
author | Paul Aurich <paul@darkrain42.org> |
---|---|
date | Sat, 04 Apr 2009 17:01:59 +0000 |
parents | 1ecbda91458a |
children | bc7fac8e2f79 |
line wrap: on
line diff
--- a/libpurple/protocols/jabber/disco.c Sat Apr 04 07:29:50 2009 +0000 +++ b/libpurple/protocols/jabber/disco.c Sat Apr 04 17:01:59 2009 +0000 @@ -148,6 +148,20 @@ xmlnode_set_attrib(feature, "var", feat->namespace); } } +#ifdef USE_VV + } else if (g_str_equal(node, CAPS0115_NODE "#" "voice-v1")) { + /* + * HUGE HACK! We advertise this ext (see jabber_presence_create_js + * where we add <c/> to the <presence/>) for the Google Talk + * clients that don't actually check disco#info features. + * + * This specific feature is redundant but is what + * node='http://mail.google.com/xmpp/client/caps', ver='1.1' + * advertises as 'voice-v1'. + */ + xmlnode *feature = xmlnode_new_child(query, "feature"); + xmlnode_set_attrib(feature, "var", "http://www.google.com/xmpp/protocol/voice/v1"); +#endif } else { xmlnode *error, *inf;