Changeset 416b973
- Timestamp:
- 2021-04-16T10:13:51Z (4 years ago)
- Children:
- 21a328ab
- Parents:
- a42169b
- Location:
- protocols/jabber
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
protocols/jabber/block.c
ra42169b r416b973 23 23 24 24 #include "jabber.h" 25 26 int jabber_block_feature(struct im_connection *ic)27 {28 struct jabber_data *jd = ic->proto_data;29 GSList *features = jd->features;30 int foundbk = FALSE;31 struct prpl *prpl = ic->acc->prpl;32 33 while (features) {34 if (!strcmp(features->data, XMLNS_BLOCK)) {35 foundbk = TRUE;36 }37 features = g_slist_next(features);38 }39 40 if (foundbk) {41 prpl->add_deny = jabber_buddy_block;42 prpl->rem_deny = jabber_buddy_unblock;43 prpl->add_permit = jabber_buddy_permit;44 prpl->rem_permit = jabber_buddy_unpermit;45 } else {46 prpl->add_deny = NULL;47 prpl->rem_deny = NULL;48 prpl->add_permit = NULL;49 prpl->rem_permit = NULL;50 }51 52 return foundbk;53 }54 25 55 26 void jabber_buddy_blockunblock(struct im_connection *ic, char *who, int block) … … 87 58 } 88 59 60 //jabber doesn't have permit lists so these are empty 89 61 void jabber_buddy_permit(struct im_connection *ic, char *who) 90 62 { 91 63 } 64 92 65 void jabber_buddy_unpermit(struct im_connection *ic, char *who) 93 66 { -
protocols/jabber/iq.c
ra42169b r416b973 1007 1007 { 1008 1008 struct jabber_data *jd = ic->proto_data; 1009 struct prpl *prpl = ic->acc->prpl; 1009 1010 struct xt_node *query, *id, *c; 1010 1011 char *feature; … … 1014 1015 } 1015 1016 1016 c = query->children; 1017 1018 while ((c = xt_find_node(c, "feature"))) { 1019 feature = xt_find_attr(c, "var"); 1020 if (feature) { 1021 jd->features = g_slist_append(jd->features, g_strdup(feature)); 1022 } 1023 c = c->next; 1024 } 1017 if (xt_find_node_by_attr(query->children, "feature", "var", XMLNS_BLOCK)) { 1018 prpl->add_deny = jabber_buddy_block; 1019 prpl->rem_deny = jabber_buddy_unblock; 1020 prpl->add_permit = jabber_buddy_permit; 1021 prpl->rem_permit = jabber_buddy_unpermit; 1022 } 1025 1023 1026 1024 if (xt_find_node_by_attr(query->children, "feature", "var", XMLNS_CARBONS) && … … 1051 1049 } 1052 1050 } 1053 1054 jabber_block_feature(ic);1055 1051 1056 1052 return XT_HANDLED; -
protocols/jabber/jabber.h
ra42169b r416b973 109 109 GHashTable *buddies; 110 110 111 GSList *features;112 111 GSList *filetransfers; 113 112 GSList *streamhosts;
Note: See TracChangeset
for help on using the changeset viewer.