Fix the send_session_terminate function.
--- a/jingle/send.c Wed Jul 07 23:02:01 2010 +0200
+++ b/jingle/send.c Thu Jul 08 00:08:34 2010 +0200
@@ -29,22 +29,24 @@
#include <jingle/send.h>
-void jingle_send_session_terminate(LmMessage *m, const gchar *reason)
+void jingle_send_session_terminate(JingleNode *jn, const gchar *reason)
{
LmMessage *r;
- LmMessageNode *err;
+ JingleNode *reply = g_new0(JingleNode, 1);
+
+ reply->action = JINGLE_SESSION_TERMINATE;
+ reply->sid = jn->sid;
- r = lm_message_new_iq_from_query(m, LM_MESSAGE_SUB_TYPE_SET);
+ r = lm_message_from_jinglenode(reply, lm_message_get_from(jn->message));
- if (reason != NULL) {
+ if (reason != NULL) {
+ // TODO check reason
err = lm_message_node_add_child(r->node, "reason", NULL);
lm_message_node_add_child(err, reason, NULL);
}
- // TODO vérifier que reason est connu
-
if (r) {
- lm_connection_send(lconnection, r, NULL);
- lm_message_unref(r);
+ lm_connection_send(lconnection, r, NULL);
+ lm_message_unref(r);
}
}
--- a/jingle/send.h Wed Jul 07 23:02:01 2010 +0200
+++ b/jingle/send.h Thu Jul 08 00:08:34 2010 +0200
@@ -1,6 +1,10 @@
#ifndef __SEND_H__
#define __SEND_H__ 1
-void jingle_send_session_terminate(LmMessage *m, const gchar *reason);
+#include <glib.h>
+#include <loudmouth/loudmouth.h>
+
+
+void jingle_send_session_terminate(JingleNode *jn, const gchar *reason);
#endif