diff libpurple/protocols/jabber/jabber.h @ 17576:e49b259fc7dd

PEP publishing features are now only announced in disco#info when PEP is supported by the server.
author Andreas Monitzer <pidgin@monitzer.com>
date Fri, 15 Jun 2007 07:13:41 +0000
parents 2e0799b916b9
children 759cd72bd2ff
line wrap: on
line diff
--- a/libpurple/protocols/jabber/jabber.h	Wed Jun 13 16:03:11 2007 +0000
+++ b/libpurple/protocols/jabber/jabber.h	Fri Jun 15 07:13:41 2007 +0000
@@ -154,6 +154,18 @@
 	gboolean pep;
 } JabberStream;
 
+typedef gboolean (JabberFeatureEnabled)(JabberStream *js, const gchar *shortname, const gchar *namespace);
+
+typedef struct _JabberFeature
+{
+	gchar *shortname;
+	gchar *namespace;
+	JabberFeatureEnabled *is_enabled;
+} JabberFeature;
+
+/* what kind of additional features as returned from disco#info are supported? */
+extern GList *jabber_features;
+
 void jabber_process_packet(JabberStream *js, xmlnode *packet);
 void jabber_send(JabberStream *js, xmlnode *data);
 void jabber_send_raw(JabberStream *js, const char *data, int len);
@@ -167,7 +179,7 @@
 
 char *jabber_parse_error(JabberStream *js, xmlnode *packet);
 
-void jabber_add_feature(const gchar *shortname, const gchar *namespace);
+void jabber_add_feature(const gchar *shortname, const gchar *namespace, JabberFeatureEnabled cb); /* cb may be NULL */
 void jabber_remove_feature(const gchar *shortname);
 
 /** PRPL functions */
@@ -189,13 +201,4 @@
 void jabber_register_commands(void);
 void jabber_init_plugin(PurplePlugin *plugin);
 
-typedef struct _JabberFeature
-{
-	gchar *shortname;
-	gchar *namespace;
-} JabberFeature;
-
-/* what kind of additional features as returned from disco#info are supported? */
-extern GList *jabber_features;
-
 #endif /* _PURPLE_JABBER_H_ */