telepathygabble/inc/util.h
author Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
Tue, 02 Feb 2010 01:10:06 +0200
changeset 0 d0f3a028347a
permissions -rw-r--r--
Revision: 201003 Kit: 201005

/*
 * util.h - Headers for Gabble utility functions
 * Copyright (C) 2006 Collabora Ltd.
 *   @author Robert McQueen <robert.mcqueen@collabora.co.uk>
 * 
 *
 * This library is free software; you can redistribute it and/or
 * modify it under the terms of the GNU Lesser General Public
 * License as published by the Free Software Foundation; either
 * version 2.1 of the License, or (at your option) any later version.
 *
 * This library is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 * Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public
 * License along with this library; if not, write to the Free Software
 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
 */

#include <glib.h>
#include "loudmouth/loudmouth.h"

#include "gabble-types.h"

#ifndef __GABBLE_UTIL_H__
#define __GABBLE_UTIL_H__

gchar *
sha1_hex (const gchar *bytes, guint len);
gboolean g_strdiff (const gchar *left, const gchar *right);
void lm_message_node_add_own_nick (LmMessageNode *node, GabbleConnection *conn);
void lm_message_node_steal_children (LmMessageNode *snatcher, LmMessageNode *mum);
gboolean lm_message_node_has_namespace (LmMessageNode *node, const gchar *ns, const gchar *tag);
LmMessageNode *lm_message_node_get_child_with_namespace (LmMessageNode *node, const gchar *name, const gchar *ns);

/* format: a@b/c */
void gabble_decode_jid (const gchar *jid, gchar **a, gchar **b, gchar **c);

gpointer gabble_mixin_offset_cast (gpointer instance, guint offset);

#endif /* __GABBLE_UTIL_H__ */