Mercurial > pidgin.yaz
annotate libpurple/protocols/jabber/usernick.c @ 28133:3eef8392a54b
jabber: Add a BOSH send timer (queue up stanzas), fixes connecting to Prosody
This send timer shouldn't strictly be necessary, but Prosody currently
closes the TCP stream after every response (MattJ tells me there's a
pipelining bug that they couldn't fix, so they just disabled it), but in my
tests, the initial purple_ssl_read doesn't catch the EOF/disconnection
(the read returns EAGAIN), so the prpl, while processing the response from
the server, thinks that BOSH connection is still open, and tries to send
to send to it. *Then*, the write input watcher triggers and read returns 0
(EOF). The request that was sent is then lost.
Anyway, I've termed Prosody a fuzzer for BOSH. :-)
author | Paul Aurich <paul@darkrain42.org> |
---|---|
date | Sun, 02 Aug 2009 03:00:00 +0000 |
parents | 5872d1bc546f |
children | 8c991e09efcb |
rev | line source |
---|---|
17597
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
1 /* |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
2 * purple - Jabber Protocol Plugin |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
3 * |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
4 * Copyright (C) 2007, Andreas Monitzer <andy@monitzer.com> |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
5 * |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
6 * This program is free software; you can redistribute it and/or modify |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
7 * it under the terms of the GNU General Public License as published by |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
8 * the Free Software Foundation; either version 2 of the License, or |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
9 * (at your option) any later version. |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
10 * |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
11 * This program is distributed in the hope that it will be useful, |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
14 * GNU General Public License for more details. |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
15 * |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
16 * You should have received a copy of the GNU General Public License |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
17 * along with this program; if not, write to the Free Software |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
18 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
19 * |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
20 */ |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
21 |
19697
d32ed28cf645
Fix mingw build of xmpp prpl
Daniel Atallah <daniel.atallah@gmail.com>
parents:
17597
diff
changeset
|
22 #include "internal.h" |
d32ed28cf645
Fix mingw build of xmpp prpl
Daniel Atallah <daniel.atallah@gmail.com>
parents:
17597
diff
changeset
|
23 |
17597
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
24 #include "usernick.h" |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
25 #include "pep.h" |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
26 #include <string.h> |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
27 #include "internal.h" |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
28 #include "request.h" |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
29 #include "status.h" |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
30 |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
31 static void jabber_nick_cb(JabberStream *js, const char *from, xmlnode *items) { |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
32 /* it doesn't make sense to have more than one item here, so let's just pick the first one */ |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
33 xmlnode *item = xmlnode_get_child(items, "item"); |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
34 JabberBuddy *buddy = jabber_buddy_find(js, from, FALSE); |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
35 xmlnode *nick; |
20058
5103485b4b26
Plug some memory leaks.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
20000
diff
changeset
|
36 char *nickname = NULL; |
25443
5f9a24d1c25e
Remove some extra trailing whitespace I noticed after merging mlundblad's
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
21570
diff
changeset
|
37 |
26855
e816444c1a01
Handle User Nick notifications via <presence/> stanzas (receive-only). Refs #864.
Paul Aurich <paul@darkrain42.org>
parents:
25987
diff
changeset
|
38 /* ignore the nick of people not on our buddy list */ |
17597
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
39 if (!buddy || !item) |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
40 return; |
25443
5f9a24d1c25e
Remove some extra trailing whitespace I noticed after merging mlundblad's
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
21570
diff
changeset
|
41 |
17597
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
42 nick = xmlnode_get_child_with_namespace(item, "nick", "http://jabber.org/protocol/nick"); |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
43 if (!nick) |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
44 return; |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
45 nickname = xmlnode_get_data(nick); |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
46 serv_got_alias(js->gc, from, nickname); |
20058
5103485b4b26
Plug some memory leaks.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
20000
diff
changeset
|
47 g_free(nickname); |
17597
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
48 } |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
49 |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
50 static void do_nick_set(JabberStream *js, const char *nick) { |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
51 xmlnode *publish, *nicknode; |
25443
5f9a24d1c25e
Remove some extra trailing whitespace I noticed after merging mlundblad's
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
21570
diff
changeset
|
52 |
17597
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
53 publish = xmlnode_new("publish"); |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
54 xmlnode_set_attrib(publish,"node","http://jabber.org/protocol/nick"); |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
55 nicknode = xmlnode_new_child(xmlnode_new_child(publish, "item"), "nick"); |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
56 xmlnode_set_namespace(nicknode, "http://jabber.org/protocol/nick"); |
25443
5f9a24d1c25e
Remove some extra trailing whitespace I noticed after merging mlundblad's
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
21570
diff
changeset
|
57 |
17597
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
58 if(nick && nick[0] != '\0') |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
59 xmlnode_insert_data(nicknode, nick, -1); |
25443
5f9a24d1c25e
Remove some extra trailing whitespace I noticed after merging mlundblad's
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
21570
diff
changeset
|
60 |
17597
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
61 jabber_pep_publish(js, publish); |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
62 /* publish is freed by jabber_pep_publish -> jabber_iq_send -> jabber_iq_free |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
63 (yay for well-defined memory management rules) */ |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
64 } |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
65 |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
66 static void do_nick_got_own_nick_cb(JabberStream *js, const char *from, xmlnode *items) { |
20058
5103485b4b26
Plug some memory leaks.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
20000
diff
changeset
|
67 char *oldnickname = NULL; |
26873
5872d1bc546f
On errors, don't pretend we did fetch something, pass NULL.
Paul Aurich <paul@darkrain42.org>
parents:
26855
diff
changeset
|
68 xmlnode *item = NULL; |
5872d1bc546f
On errors, don't pretend we did fetch something, pass NULL.
Paul Aurich <paul@darkrain42.org>
parents:
26855
diff
changeset
|
69 |
5872d1bc546f
On errors, don't pretend we did fetch something, pass NULL.
Paul Aurich <paul@darkrain42.org>
parents:
26855
diff
changeset
|
70 if (items) |
5872d1bc546f
On errors, don't pretend we did fetch something, pass NULL.
Paul Aurich <paul@darkrain42.org>
parents:
26855
diff
changeset
|
71 item = xmlnode_get_child(items,"item"); |
25443
5f9a24d1c25e
Remove some extra trailing whitespace I noticed after merging mlundblad's
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
21570
diff
changeset
|
72 |
17597
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
73 if(item) { |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
74 xmlnode *nick = xmlnode_get_child_with_namespace(item,"nick","http://jabber.org/protocol/nick"); |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
75 if(nick) |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
76 oldnickname = xmlnode_get_data(nick); |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
77 } |
25443
5f9a24d1c25e
Remove some extra trailing whitespace I noticed after merging mlundblad's
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
21570
diff
changeset
|
78 |
21570
dccfd999ffe7
merge of '76c07fcb434a2a7aa289734bb221c171a376d73b'
Evan Schoenberg <evan.s@dreskin.net>
parents:
21244
diff
changeset
|
79 purple_request_input(js->gc, _("Set User Nickname"), _("Please specify a new nickname for you."), |
17597
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
80 _("This information is visible to all contacts on your contact list, so choose something appropriate."), |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
81 oldnickname, FALSE, FALSE, NULL, _("Set"), PURPLE_CALLBACK(do_nick_set), _("Cancel"), NULL, |
21570
dccfd999ffe7
merge of '76c07fcb434a2a7aa289734bb221c171a376d73b'
Evan Schoenberg <evan.s@dreskin.net>
parents:
21244
diff
changeset
|
82 purple_connection_get_account(js->gc), NULL, NULL, js); |
20058
5103485b4b26
Plug some memory leaks.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
20000
diff
changeset
|
83 g_free(oldnickname); |
17597
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
84 } |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
85 |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
86 static void do_nick_set_nick(PurplePluginAction *action) { |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
87 PurpleConnection *gc = (PurpleConnection *) action->context; |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
88 JabberStream *js = gc->proto_data; |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
89 char *jid = g_strdup_printf("%s@%s", js->user->node, js->user->domain); |
25443
5f9a24d1c25e
Remove some extra trailing whitespace I noticed after merging mlundblad's
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
21570
diff
changeset
|
90 |
17597
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
91 /* since the nickname might have been changed by another resource of this account, we always have to request the old one |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
92 from the server to present as the default for the new one */ |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
93 jabber_pep_request_item(js, jid, "http://jabber.org/protocol/nick", NULL, do_nick_got_own_nick_cb); |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
94 g_free(jid); |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
95 } |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
96 |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
97 void jabber_nick_init(void) { |
25575
26eabe8e739b
Removing short-names for features and calculating own caps hash.
Tobias Markmann <tfar@soc.pidgin.im>
parents:
21570
diff
changeset
|
98 jabber_add_feature("http://jabber.org/protocol/nick", jabber_pep_namespace_only_when_pep_enabled_cb); |
26eabe8e739b
Removing short-names for features and calculating own caps hash.
Tobias Markmann <tfar@soc.pidgin.im>
parents:
21570
diff
changeset
|
99 jabber_pep_register_handler("http://jabber.org/protocol/nick", jabber_nick_cb); |
17597
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
100 } |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
101 |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
102 void jabber_nick_init_action(GList **m) { |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
103 PurplePluginAction *act = purple_plugin_action_new(_("Set Nickname..."), do_nick_set_nick); |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
104 *m = g_list_append(*m, act); |
5f4dcaf1f886
User Nickname now sets the buddy's server_alias, which means that no UI changes are required for supporting this XEP. Also forgot to add usernick.[hc].
Andreas Monitzer <pidgin@monitzer.com>
parents:
diff
changeset
|
105 } |