annotate libpurple/protocols/myspace/message.h @ 27243:7054f810b0f9

Check in code that connects to oscar using clientLogin. This is the authentication scheme they've publically documented. We still use the old MD5-style login as the default, but you can optionally try this out by checking a check box on the advanced tab of your oscar account. Functionally everything is supposed to be the same. However, for some reason users with Mobile IM forwarding turned on don't show up online and can't be messaged. Not sure why. Using clientLogin DOES make it easier for AOL to track us. And yes, it probably makes it easier for AOL to block us, too. But I don't believe they want to do that. I believe they're trying to keep their network open, and I think we should appreciate that and try to work with them. We're not just some small open source project that slips under the radar unnoticed anymore. It's good to have options, right? None of this code was taken from anywhere (outside of libpurple). I wrote it all from scratch (and took a few bits from other places in libpurple). I did use the documentation on http://dev.aol.com/aim , but I don't believe that affects us from a licensing standpoint in any way. If you disagree we should talk about it on the devel mailing list.
author Mark Doliner <mark@kingant.net>
date Tue, 23 Jun 2009 18:20:12 +0000
parents c044eb54b7ac
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
17321
ddcf9ef2ccec Add MsimMessage implementation (sending only).
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
1 /** MySpaceIM protocol messages
ddcf9ef2ccec Add MsimMessage implementation (sending only).
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
2 *
ddcf9ef2ccec Add MsimMessage implementation (sending only).
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
3 * \author Jeff Connelly
ddcf9ef2ccec Add MsimMessage implementation (sending only).
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
4 *
17923
d87916bd1d73 Fix email address.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 17383
diff changeset
5 * Copyright (C) 2007, Jeff Connelly <jeff2@soc.pidgin.im>
17321
ddcf9ef2ccec Add MsimMessage implementation (sending only).
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
6 *
ddcf9ef2ccec Add MsimMessage implementation (sending only).
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
7 * This program is free software; you can redistribute it and/or modify
ddcf9ef2ccec Add MsimMessage implementation (sending only).
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
8 * it under the terms of the GNU General Public License as published by
ddcf9ef2ccec Add MsimMessage implementation (sending only).
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
9 * the Free Software Foundation; either version 2 of the License, or
ddcf9ef2ccec Add MsimMessage implementation (sending only).
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
10 * (at your option) any later version.
ddcf9ef2ccec Add MsimMessage implementation (sending only).
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
11 *
ddcf9ef2ccec Add MsimMessage implementation (sending only).
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
12 * This program is distributed in the hope that it will be useful,
ddcf9ef2ccec Add MsimMessage implementation (sending only).
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
ddcf9ef2ccec Add MsimMessage implementation (sending only).
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
ddcf9ef2ccec Add MsimMessage implementation (sending only).
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
15 * GNU General Public License for more details.
ddcf9ef2ccec Add MsimMessage implementation (sending only).
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
16 *
ddcf9ef2ccec Add MsimMessage implementation (sending only).
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
17 * You should have received a copy of the GNU General Public License
ddcf9ef2ccec Add MsimMessage implementation (sending only).
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
18 * along with this program; if not, write to the Free Software
19680
44b4e8bd759b The FSF changed its address a while ago; our files were out of date.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 19253
diff changeset
19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
17321
ddcf9ef2ccec Add MsimMessage implementation (sending only).
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
20 */
ddcf9ef2ccec Add MsimMessage implementation (sending only).
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
21
ddcf9ef2ccec Add MsimMessage implementation (sending only).
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
22 #ifndef _MYSPACE_MESSAGE_H
ddcf9ef2ccec Add MsimMessage implementation (sending only).
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
23 #define _MYSPACE_MESSAGE_H
ddcf9ef2ccec Add MsimMessage implementation (sending only).
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
24
17323
793301c04e3a (Incomplete - plugin does not load) Begin migrating protocol message receiving to MsimMessage.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 17321
diff changeset
25 #include <glib.h>
793301c04e3a (Incomplete - plugin does not load) Begin migrating protocol message receiving to MsimMessage.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 17321
diff changeset
26
24721
68cc1a8a0d21 Shuffling things around, remove stray whitespace, remove some forward
Mark Doliner <mark@kingant.net>
parents: 22324
diff changeset
27 #define MsimMessage GList /* #define instead of typedef to avoid casting */
68cc1a8a0d21 Shuffling things around, remove stray whitespace, remove some forward
Mark Doliner <mark@kingant.net>
parents: 22324
diff changeset
28 typedef gchar MsimMessageType;
68cc1a8a0d21 Shuffling things around, remove stray whitespace, remove some forward
Mark Doliner <mark@kingant.net>
parents: 22324
diff changeset
29 typedef struct _MsimMessageElement MsimMessageElement;
68cc1a8a0d21 Shuffling things around, remove stray whitespace, remove some forward
Mark Doliner <mark@kingant.net>
parents: 22324
diff changeset
30
68cc1a8a0d21 Shuffling things around, remove stray whitespace, remove some forward
Mark Doliner <mark@kingant.net>
parents: 22324
diff changeset
31 #include "session.h"
68cc1a8a0d21 Shuffling things around, remove stray whitespace, remove some forward
Mark Doliner <mark@kingant.net>
parents: 22324
diff changeset
32
17321
ddcf9ef2ccec Add MsimMessage implementation (sending only).
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
33 /* Types */
24721
68cc1a8a0d21 Shuffling things around, remove stray whitespace, remove some forward
Mark Doliner <mark@kingant.net>
parents: 22324
diff changeset
34 struct _MsimMessageElement
17321
ddcf9ef2ccec Add MsimMessage implementation (sending only).
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
35 {
18895
f732d072b118 Change all code to better match the style of libpurple - use 8-space tabs
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 18880
diff changeset
36 const gchar *name; /**< Textual name of element. */
22324
9479cf89a97d In msimprpl, support dynamically-allocated strings in message element names,
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 19680
diff changeset
37 gboolean dynamic_name; /**< TRUE if 'name' is a dynamic string to be freed, not static. */
18895
f732d072b118 Change all code to better match the style of libpurple - use 8-space tabs
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 18880
diff changeset
38 guint type; /**< MSIM_TYPE_* code. */
f732d072b118 Change all code to better match the style of libpurple - use 8-space tabs
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 18880
diff changeset
39 gpointer data; /**< Pointer to data, or GUINT_TO_POINTER for int/bool. */
24721
68cc1a8a0d21 Shuffling things around, remove stray whitespace, remove some forward
Mark Doliner <mark@kingant.net>
parents: 22324
diff changeset
40 };
17321
ddcf9ef2ccec Add MsimMessage implementation (sending only).
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
41
19250
c0888d137172 Add msim_msg_get_next_element_node() to loop over MsimMessage's.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 18897
diff changeset
42 #define msim_msg_get_next_element_node(msg) ((MsimMessage *)(msg->next))
c0888d137172 Add msim_msg_get_next_element_node() to loop over MsimMessage's.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 18897
diff changeset
43
17321
ddcf9ef2ccec Add MsimMessage implementation (sending only).
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
44 /* Protocol field types */
18895
f732d072b118 Change all code to better match the style of libpurple - use 8-space tabs
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 18880
diff changeset
45 #define MSIM_TYPE_RAW '-'
f732d072b118 Change all code to better match the style of libpurple - use 8-space tabs
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 18880
diff changeset
46 #define MSIM_TYPE_INTEGER 'i'
f732d072b118 Change all code to better match the style of libpurple - use 8-space tabs
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 18880
diff changeset
47 #define MSIM_TYPE_STRING 's'
f732d072b118 Change all code to better match the style of libpurple - use 8-space tabs
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 18880
diff changeset
48 #define MSIM_TYPE_BINARY 'b'
f732d072b118 Change all code to better match the style of libpurple - use 8-space tabs
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 18880
diff changeset
49 #define MSIM_TYPE_BOOLEAN 'f'
f732d072b118 Change all code to better match the style of libpurple - use 8-space tabs
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 18880
diff changeset
50 #define MSIM_TYPE_DICTIONARY 'd'
f732d072b118 Change all code to better match the style of libpurple - use 8-space tabs
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 18880
diff changeset
51 #define MSIM_TYPE_LIST 'l'
17321
ddcf9ef2ccec Add MsimMessage implementation (sending only).
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
52
17968
a2298513db8b Move msim_escape() and msim_unescape() to message.c.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 17964
diff changeset
53 gchar *msim_escape(const gchar *msg);
a2298513db8b Move msim_escape() and msim_unescape() to message.c.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 17964
diff changeset
54 gchar *msim_unescape(const gchar *msg);
a2298513db8b Move msim_escape() and msim_unescape() to message.c.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 17964
diff changeset
55
18897
d0be4366e876 Change msim_msg_new() and msim_msg_new_v() to accept the first key name as
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 18895
diff changeset
56 MsimMessage *msim_msg_new(gchar *first_key, ...);
17359
d69bcd74c240 Enhance msim_msg_new() to accept a variadic arguments, like msim_send(),
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 17358
diff changeset
57 /* No sentinel attribute, because can leave off varargs if not_empty is FALSE. */
d69bcd74c240 Enhance msim_msg_new() to accept a variadic arguments, like msim_send(),
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 17358
diff changeset
58
17348
d8903e1320a9 Previously, the return value of the processing function and msim_process() told
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 17341
diff changeset
59 MsimMessage *msim_msg_clone(MsimMessage *old);
18880
f41db253c1af Add a new public function msim_msg_free_element_data(), that frees element data (but the MsimMessageElement * still must be g_free()'d). Internally, msim_msg_free_element() is still used, as a callback to g_list_foreach() to free every element in an MsimMessage.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 17973
diff changeset
60 void msim_msg_free_element_data(MsimMessageElement *elem);
17321
ddcf9ef2ccec Add MsimMessage implementation (sending only).
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
61 void msim_msg_free(MsimMessage *msg);
17383
f057837085b0 Change to use const gchar * where appropriate.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 17359
diff changeset
62 MsimMessage *msim_msg_append(MsimMessage *msg, const gchar *name, MsimMessageType type, gpointer data);
f057837085b0 Change to use const gchar * where appropriate.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 17359
diff changeset
63 MsimMessage *msim_msg_insert_before(MsimMessage *msg, const gchar *name_before, const gchar *name, MsimMessageType type, gpointer data);
18880
f41db253c1af Add a new public function msim_msg_free_element_data(), that frees element data (but the MsimMessageElement * still must be g_free()'d). Internally, msim_msg_free_element() is still used, as a callback to g_list_foreach() to free every element in an MsimMessage.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 17973
diff changeset
64 gchar *msim_msg_pack_element_data(MsimMessageElement *elem);
17383
f057837085b0 Change to use const gchar * where appropriate.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 17359
diff changeset
65 void msim_msg_dump(const char *fmt_string, MsimMessage *msg);
17321
ddcf9ef2ccec Add MsimMessage implementation (sending only).
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
66 gchar *msim_msg_pack(MsimMessage *msg);
17323
793301c04e3a (Incomplete - plugin does not load) Begin migrating protocol message receiving to MsimMessage.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 17321
diff changeset
67
17964
6d1d86ab6a59 In MsimMessage, add support for MSIM_TYPE_LIST - pipe-separated lists.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 17923
diff changeset
68 void msim_msg_list_free(GList *l);
6d1d86ab6a59 In MsimMessage, add support for MSIM_TYPE_LIST - pipe-separated lists.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 17923
diff changeset
69
24721
68cc1a8a0d21 Shuffling things around, remove stray whitespace, remove some forward
Mark Doliner <mark@kingant.net>
parents: 22324
diff changeset
70 /* Based on http://permalink.gmane.org/gmane.comp.parsers.sparse/695
17964
6d1d86ab6a59 In MsimMessage, add support for MSIM_TYPE_LIST - pipe-separated lists.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 17923
diff changeset
71 * Define macros for useful gcc attributes. */
17352
86b4862b7a02 Add GCC sentinal attribute to msim_send().
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 17348
diff changeset
72 #ifdef __GNUC__
17964
6d1d86ab6a59 In MsimMessage, add support for MSIM_TYPE_LIST - pipe-separated lists.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 17923
diff changeset
73 #define GCC_VERSION (__GNUC__ * 1000 + __GNUC_MINOR__)
6d1d86ab6a59 In MsimMessage, add support for MSIM_TYPE_LIST - pipe-separated lists.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 17923
diff changeset
74 #define FORMAT_ATTR(pos) __attribute__ ((__format__ (__printf__, pos, pos+1)))
6d1d86ab6a59 In MsimMessage, add support for MSIM_TYPE_LIST - pipe-separated lists.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 17923
diff changeset
75 #define NORETURN_ATTR __attribute__ ((__noreturn__))
6d1d86ab6a59 In MsimMessage, add support for MSIM_TYPE_LIST - pipe-separated lists.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 17923
diff changeset
76 /* __sentinel__ attribute was introduced in gcc 3.5 */
6d1d86ab6a59 In MsimMessage, add support for MSIM_TYPE_LIST - pipe-separated lists.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 17923
diff changeset
77 #if (GCC_VERSION >= 3005)
18895
f732d072b118 Change all code to better match the style of libpurple - use 8-space tabs
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 18880
diff changeset
78 #define SENTINEL_ATTR __attribute__ ((__sentinel__(0)))
17964
6d1d86ab6a59 In MsimMessage, add support for MSIM_TYPE_LIST - pipe-separated lists.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 17923
diff changeset
79 #else
18895
f732d072b118 Change all code to better match the style of libpurple - use 8-space tabs
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 18880
diff changeset
80 #define SENTINEL_ATTR
17964
6d1d86ab6a59 In MsimMessage, add support for MSIM_TYPE_LIST - pipe-separated lists.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 17923
diff changeset
81 #endif /* gcc >= 3.5 */
6d1d86ab6a59 In MsimMessage, add support for MSIM_TYPE_LIST - pipe-separated lists.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 17923
diff changeset
82 #else
18895
f732d072b118 Change all code to better match the style of libpurple - use 8-space tabs
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 18880
diff changeset
83 #define FORMAT_ATTR(pos)
f732d072b118 Change all code to better match the style of libpurple - use 8-space tabs
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 18880
diff changeset
84 #define NORETURN_ATTR
f732d072b118 Change all code to better match the style of libpurple - use 8-space tabs
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 18880
diff changeset
85 #define SENTINEL_ATTR
24721
68cc1a8a0d21 Shuffling things around, remove stray whitespace, remove some forward
Mark Doliner <mark@kingant.net>
parents: 22324
diff changeset
86 #endif
17964
6d1d86ab6a59 In MsimMessage, add support for MSIM_TYPE_LIST - pipe-separated lists.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 17923
diff changeset
87
6d1d86ab6a59 In MsimMessage, add support for MSIM_TYPE_LIST - pipe-separated lists.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 17923
diff changeset
88 /* Cause gcc to emit "a missing sentinel in function call" if forgot
6d1d86ab6a59 In MsimMessage, add support for MSIM_TYPE_LIST - pipe-separated lists.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 17923
diff changeset
89 * to write NULL as last, terminating parameter. */
6d1d86ab6a59 In MsimMessage, add support for MSIM_TYPE_LIST - pipe-separated lists.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 17923
diff changeset
90 gboolean msim_send(struct _MsimSession *session, ...) SENTINEL_ATTR;
17352
86b4862b7a02 Add GCC sentinal attribute to msim_send().
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 17348
diff changeset
91
17326
57bde8784308 (Plugin loads, but cannot do anything useful)
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 17323
diff changeset
92 gboolean msim_msg_send(struct _MsimSession *session, MsimMessage *msg);
17321
ddcf9ef2ccec Add MsimMessage implementation (sending only).
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
93
24728
c1c464583f8c Mark some parameters as const char * instead of char * and don't
Mark Doliner <mark@kingant.net>
parents: 24721
diff changeset
94 MsimMessage *msim_parse(const gchar *raw);
17323
793301c04e3a (Incomplete - plugin does not load) Begin migrating protocol message receiving to MsimMessage.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 17321
diff changeset
95
24764
c044eb54b7ac Fix a leak in myspace prpl.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 24728
diff changeset
96 MsimMessageElement *msim_msg_get(const MsimMessage *msg, const gchar *name);
19253
b66c5991c011 For each msim_msg_get_*() function that takes an element name, add
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 19252
diff changeset
97
b66c5991c011 For each msim_msg_get_*() function that takes an element name, add
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 19252
diff changeset
98 /* Retrieve data by name */
24764
c044eb54b7ac Fix a leak in myspace prpl.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 24728
diff changeset
99 gchar *msim_msg_get_string(const MsimMessage *msg, const gchar *name);
c044eb54b7ac Fix a leak in myspace prpl.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 24728
diff changeset
100 GList *msim_msg_get_list(const MsimMessage *msg, const gchar *name);
c044eb54b7ac Fix a leak in myspace prpl.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 24728
diff changeset
101 MsimMessage *msim_msg_get_dictionary(const MsimMessage *msg, const gchar *name);
c044eb54b7ac Fix a leak in myspace prpl.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 24728
diff changeset
102 guint msim_msg_get_integer(const MsimMessage *msg, const gchar *name);
c044eb54b7ac Fix a leak in myspace prpl.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 24728
diff changeset
103 gboolean msim_msg_get_binary(const MsimMessage *msg, const gchar *name, gchar **binary_data, gsize *binary_length);
17323
793301c04e3a (Incomplete - plugin does not load) Begin migrating protocol message receiving to MsimMessage.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 17321
diff changeset
104
19253
b66c5991c011 For each msim_msg_get_*() function that takes an element name, add
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 19252
diff changeset
105 /* Retrieve data by element (MsimMessageElement *), returned from msim_msg_get() */
b66c5991c011 For each msim_msg_get_*() function that takes an element name, add
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 19252
diff changeset
106 gchar *msim_msg_get_string_from_element(MsimMessageElement *elem);
b66c5991c011 For each msim_msg_get_*() function that takes an element name, add
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 19252
diff changeset
107 guint msim_msg_get_integer_from_element(MsimMessageElement *elem);
b66c5991c011 For each msim_msg_get_*() function that takes an element name, add
Jeffrey Connelly <jaconnel@calpoly.edu>
parents: 19252
diff changeset
108
17321
ddcf9ef2ccec Add MsimMessage implementation (sending only).
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
diff changeset
109 #endif /* _MYSPACE_MESSAGE_H */