From df790e247cb9573add96e39b49162ad20a47534e Mon Sep 17 00:00:00 2001 From: James Booth Date: Mon, 21 Jan 2013 02:18:03 +0000 Subject: Respond to iq requests for capabilities --- src/stanza.c | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) (limited to 'src/stanza.c') diff --git a/src/stanza.c b/src/stanza.c index 4274ed22..dd71d277 100644 --- a/src/stanza.c +++ b/src/stanza.c @@ -431,6 +431,34 @@ stanza_contains_caps(xmpp_stanza_t * const stanza) return TRUE; } +gboolean +stanza_is_caps_request(xmpp_stanza_t * const stanza) +{ + char *type = xmpp_stanza_get_attribute(stanza, STANZA_ATTR_TYPE); + + if (g_strcmp0(type, STANZA_TYPE_GET) != 0) { + return FALSE; + } + + xmpp_stanza_t *query = xmpp_stanza_get_child_by_name(stanza, STANZA_NAME_QUERY); + + if (query == NULL) { + return FALSE; + } + + char *ns = xmpp_stanza_get_ns(query); + + if (ns == NULL) { + return FALSE; + } + + if (strcmp(ns, XMPP_NS_DISCO_INFO) != 0) { + return FALSE; + } + + return TRUE; +} + char * stanza_caps_get_hash(xmpp_stanza_t * const stanza) { -- cgit 1.4.1-2-gfad0