+
+/*
+ * Return the results for a "jabber:iq:roster:query"
+ *
+ * Since we are not yet managing a roster, we simply return the entire wholist.
+ *
+ */
+void jabber_iq_roster_query(void)
+{
+ struct CitContext *cptr;
+ int aide = (CC->user.axlevel >= 6);
+
+ cprintf("<query xmlns=\"jabber:iq:roster\">");
+
+ for (cptr = ContextList; cptr != NULL; cptr = cptr->next) {
+
+ if (((cptr->cs_flags&CS_STEALTH)==0) || (aide)) {
+ cprintf("<item jid=\"%s\" name=\"%s\" subscription=\"both\">",
+ cptr->cs_inet_email,
+ cptr->user.fullname
+ );
+ cprintf("<group>%s</group>", config.c_humannode);
+ cprintf("</item>");
+ }
+ }
+
+/**** these remain here for documentation example only
+
+ cprintf("<item jid=\"romeo@example.net\" name=\"Romeo\" subscription=\"both\">");
+ cprintf("<group>Friends</group>");
+ cprintf("</item>");
+
+ cprintf("<item jid=\"mercutio@example.org\" name=\"Mercutio\" subscription=\"from\">");
+ cprintf("<group>Friends</group>");
+ cprintf("</item>");
+
+ cprintf("<item jid=\"benvolio@example.org\" name=\"Benvolio\" subscription=\"both\">");
+ cprintf("<group>Friends</group>");
+ cprintf("</item>");
+
+ ****/
+
+ cprintf("</query>");
+}
+
+