aboutsummaryrefslogtreecommitdiffstats
path: root/protocols/jabber/jabber_util.c
diff options
context:
space:
mode:
authorWilmer van der Gaast <wilmer@gaast.net>2006-09-20 21:42:27 +0200
committerWilmer van der Gaast <wilmer@gaast.net>2006-09-20 21:42:27 +0200
commit21167d2d14c333d67445546bb69dd52dd295287d (patch)
tree50c010702a3487c666ad8e614b25879de258d9cf /protocols/jabber/jabber_util.c
parentf06894d8f55b50b632c1d81ad878f8581273ba66 (diff)
It can send a valid (pre-XMPP) login packet. Lots of work to do, still...
Diffstat (limited to 'protocols/jabber/jabber_util.c')
-rw-r--r--protocols/jabber/jabber_util.c22
1 files changed, 21 insertions, 1 deletions
diff --git a/protocols/jabber/jabber_util.c b/protocols/jabber/jabber_util.c
index ff79cb16..46811d05 100644
--- a/protocols/jabber/jabber_util.c
+++ b/protocols/jabber/jabber_util.c
@@ -1,7 +1,7 @@
/***************************************************************************\
* *
* BitlBee - An IRC to IM gateway *
-* Jabber module - Main file *
+* Jabber module - Misc. stuff *
* *
* Copyright 2006 Wilmer van der Gaast <wilmer@gaast.net> *
* *
@@ -23,6 +23,8 @@
#include "jabber.h"
+static int next_id = 1;
+
char *set_eval_resprio( set_t *set, char *value )
{
account_t *acc = set->data;
@@ -46,3 +48,21 @@ char *set_eval_tls( set_t *set, char *value )
else
return set_eval_bool( set, value );
}
+
+struct xt_node *jabber_make_packet( char *name, char *type, char *to, struct xt_node *children )
+{
+ char *id = g_strdup_printf( "BeeX%04x", next_id++ );
+ struct xt_node *node;
+
+ node = xt_new_node( name, NULL, children );
+
+ xt_add_attr( node, "id", id );
+ if( type )
+ xt_add_attr( node, "type", type );
+ if( to )
+ xt_add_attr( node, "to", to );
+
+ g_free( id );
+
+ return node;
+}