Use correct memory functions for GG oauth.
[pidgin-git.git] / libpurple / protocols / gg / roster.h
blob8af4c1f7bd982b64a9e3ff0db0f16f5f6c3a40a9
1 /* purple
3 * Purple is the legal property of its developers, whose names are too numerous
4 * to list here. Please refer to the COPYRIGHT file distributed with this
5 * source distribution.
7 * Rewritten from scratch during Google Summer of Code 2012
8 * by Tomek Wasilczyk (http://www.wasilczyk.pl).
10 * Previously implemented by:
11 * - Arkadiusz Miskiewicz <misiek@pld.org.pl> - first implementation (2001);
12 * - Bartosz Oler <bartosz@bzimage.us> - reimplemented during GSoC 2005;
13 * - Krzysztof Klinikowski <grommasher@gmail.com> - some parts (2009-2011).
15 * This program is free software; you can redistribute it and/or modify
16 * it under the terms of the GNU General Public License as published by
17 * the Free Software Foundation; either version 2 of the License, or
18 * (at your option) any later version.
20 * This program is distributed in the hope that it will be useful,
21 * but WITHOUT ANY WARRANTY; without even the implied warranty of
22 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
23 * GNU General Public License for more details.
25 * You should have received a copy of the GNU General Public License
26 * along with this program; if not, write to the Free Software
27 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
30 #ifndef PURPLE_GG_ROSTER_H
31 #define PURPLE_GG_ROSTER_H
33 #include <internal.h>
34 #include <libgadu.h>
36 typedef struct
38 gpointer content;
39 gboolean is_updating;
41 GList *sent_updates;
42 GList *pending_updates;
44 guint timer;
45 } ggp_roster_session_data;
47 /* setup */
48 gboolean ggp_roster_enabled(void);
49 void ggp_roster_setup(PurpleConnection *gc);
50 void ggp_roster_cleanup(PurpleConnection *gc);
52 /* synchronization control */
53 void ggp_roster_request_update(PurpleConnection *gc);
55 /* libgadu callbacks */
56 void ggp_roster_reply(PurpleConnection *gc,
57 struct gg_event_userlist100_reply *reply);
58 void ggp_roster_version(PurpleConnection *gc,
59 struct gg_event_userlist100_version *version);
61 /* libpurple callbacks */
62 void ggp_roster_alias_buddy(PurpleConnection *gc, const char *who,
63 const char *alias);
64 void ggp_roster_group_buddy(PurpleConnection *gc, const char *who,
65 const char *old_group, const char *new_group);
66 void ggp_roster_rename_group(PurpleConnection *, const char *old_name,
67 PurpleGroup *group, GList *moved_buddies);
68 void ggp_roster_add_buddy(PurpleConnection *gc, PurpleBuddy *buddy,
69 PurpleGroup *group, const char *message);
70 void ggp_roster_remove_buddy(PurpleConnection *gc, PurpleBuddy *buddy,
71 PurpleGroup *group);
73 #endif /* PURPLE_GG_ROSTER_H */