jingle-ibb/ibb.c
changeset 60 05184a1846d1
parent 58 daafe5b8a48d
child 61 c7879aae9e1d
--- a/jingle-ibb/ibb.c	Tue Jul 20 12:49:17 2010 +0200
+++ b/jingle-ibb/ibb.c	Tue Jul 20 19:16:58 2010 +0200
@@ -36,13 +36,16 @@
 static LmMessageHandler* jingle_ibb_handler = NULL;
 
 gconstpointer jingle_ibb_check(JingleContent *cn, GError **err);
+gboolean jingle_ibb_cmp(gconstpointer data1, gconstpointer data2);
+void jingle_ibb_handle(gconstpointer data, JingleContent *jc);
+
 static void jingle_ibb_init(void);
 static void jingle_ibb_uninit(void);
 
 
 const gchar *deps[] = { "jingle", NULL };
 
-JingleTransportFuncs funcs = {jingle_ibb_check, NULL};
+JingleTransportFuncs funcs = {jingle_ibb_check, jingle_ibb_handle, jingle_ibb_cmp};
 
 module_info_t  info_jingle_inbandbytestream = {
   .branch          = MCABBER_BRANCH,
@@ -142,6 +145,17 @@
   return 1;
 }
 
+void jingle_ibb_handle(gconstpointer data, JingleContent *jc)
+{
+  JingleIBB *jibb = (JingleIBB*) data;
+  gchar *bsize;
+  bsize = g_strdup_printf("%i", jibb->blocksize); 
+  LmMessageNode *node = lm_message_node_add_child(jc->node, "transport", NULL);
+  lm_message_node_set_attributes(node, "xmlns", NS_JINGLE_TRANSPORT_IBB,
+                                 "sid", jibb->sid,
+                                 "block-size", bsize);
+  g_free(bsize);
+}
 
 static void jingle_ibb_init(void)
 {