public
Description: MSN Messenger library in C
Homepage: http://code.google.com/p/msn-pecan/
Clone URL: git://github.com/felipec/msn-pecan.git
Search Repo:
msn-pecan / pecan_util.h
100644 70 lines (60 sloc) 2.435 kb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
/**
 * Copyright (C) 2007-2008 Felipe Contreras
 *
 * Purple is the legal property of its developers, whose names are too numerous
 * to list here. Please refer to the COPYRIGHT file distributed with this
 * source distribution.
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 2 of the License, or
 * (at your option) any later version.
 *
 * This program 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 General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program; if not, write to the Free Software
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
 */
 
#ifndef PECAN_UTIL_H
#define PECAN_UTIL_H
 
#include <glib.h>
 
gchar *pecan_url_decode (const gchar *url);
 
/**
 * Parses the MSN message formatting into a format compatible with Purple.
 *
 * @param mime The mime header with the formatting.
 * @param pre_ret The returned prefix string.
 * @param post_ret The returned postfix string.
 *
 * @return The new message.
 */
void msn_parse_format(const char *mime, char **pre_ret, char **post_ret);
 
/**
 * Parses the Purple message formatting (html) into the MSN format.
 *
 * @param html      The html message to format.
 * @param attributes  The returned attributes string.
 * @param message    The returned message string.
 *
 * @return The new message.
 */
void msn_import_html(const char *html, char **attributes, char **message);
 
void
pecan_handle_challenge (const gchar *input,
                        const gchar *product_id,
                        gchar *output);
 
void msn_parse_socket(const char *str, char **ret_host, int *ret_port);
char *msn_rand_guid(void);
gchar *pecan_normalize (const gchar *str);
 
#if !GLIB_CHECK_VERSION(2,12,0)
void g_hash_table_remove_all (GHashTable *hash_table);
#endif /* !GLIB_CHECK_VERSION(2,12,0) */
gpointer g_hash_table_peek_first (GHashTable *hash_table);
gboolean g_ascii_strcase_equal (gconstpointer v1, gconstpointer v2);
guint g_ascii_strcase_hash (gconstpointer v);
 
gchar *pecan_get_xml_field (const gchar *tag, const gchar *start, const gchar *end);
 
#endif /* PECAN_UTIL_H */