Mercurial > ~mikael > mcabber > hg
comparison mcabber/src/roster.c @ 1600:c5ee395fbc8c
Updated Entity Capabilities support (XEP-0115)
author | franky |
---|---|
date | Tue, 23 Sep 2008 10:59:25 +0200 |
parents | dcd5d4c75199 |
children |
comparison
equal
deleted
inserted
replaced
1599:dcd5d4c75199 | 1600:c5ee395fbc8c |
---|---|
65 time_t status_timestamp; | 65 time_t status_timestamp; |
66 enum imrole role; | 66 enum imrole role; |
67 enum imaffiliation affil; | 67 enum imaffiliation affil; |
68 gchar *realjid; /* for chatrooms, if buddy's real jid is known */ | 68 gchar *realjid; /* for chatrooms, if buddy's real jid is known */ |
69 guint events; | 69 guint events; |
70 char *caps; | |
70 #ifdef JEP0022 | 71 #ifdef JEP0022 |
71 struct jep0022 jep22; | 72 struct jep0022 jep22; |
72 #endif | 73 #endif |
73 #ifdef JEP0085 | 74 #ifdef JEP0085 |
74 struct jep0085 jep85; | 75 struct jep0085 jep85; |
148 g_free(p_res->jep22.last_msgid_rcvd); | 149 g_free(p_res->jep22.last_msgid_rcvd); |
149 #endif | 150 #endif |
150 #ifdef HAVE_GPGME | 151 #ifdef HAVE_GPGME |
151 g_free(p_res->pgpdata.sign_keyid); | 152 g_free(p_res->pgpdata.sign_keyid); |
152 #endif | 153 #endif |
154 g_free(p_res->caps); | |
153 g_free(p_res); | 155 g_free(p_res); |
154 } | 156 } |
155 | 157 |
156 static void free_all_resources(GSList **reslist) | 158 static void free_all_resources(GSList **reslist) |
157 { | 159 { |
1194 res *p_res = get_resource(roster_usr, resname); | 1196 res *p_res = get_resource(roster_usr, resname); |
1195 if (p_res) | 1197 if (p_res) |
1196 p_res->events = events; | 1198 p_res->events = events; |
1197 } | 1199 } |
1198 | 1200 |
1201 char *buddy_resource_getcaps(gpointer rosterdata, const char *resname) | |
1202 { | |
1203 roster *roster_usr = rosterdata; | |
1204 res *p_res = get_resource(roster_usr, resname); | |
1205 if (p_res) | |
1206 return p_res->caps; | |
1207 return NULL; | |
1208 } | |
1209 | |
1210 void buddy_resource_setcaps(gpointer rosterdata, const char *resname, | |
1211 const char *caps) | |
1212 { | |
1213 roster *roster_usr = rosterdata; | |
1214 res *p_res = get_resource(roster_usr, resname); | |
1215 if (p_res) { | |
1216 g_free(p_res->caps); | |
1217 p_res->caps = g_strdup(caps); | |
1218 } | |
1219 } | |
1220 | |
1199 struct jep0022 *buddy_resource_jep22(gpointer rosterdata, const char *resname) | 1221 struct jep0022 *buddy_resource_jep22(gpointer rosterdata, const char *resname) |
1200 { | 1222 { |
1201 #ifdef JEP0022 | 1223 #ifdef JEP0022 |
1202 roster *roster_usr = rosterdata; | 1224 roster *roster_usr = rosterdata; |
1203 res *p_res = get_resource(roster_usr, resname); | 1225 res *p_res = get_resource(roster_usr, resname); |