| Commit message (Collapse) | Author | Age | Lines |
... | |
|
|
|
|
|
|
|
| |
This is enough to log in with their usernames, make 'chat add' based
groupchat joins slightly more smooth, and see mention names as nicks.
All the MUC list stuff is left out intentionally since that's not as
stable as I wish.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Another take on the subprotocols idea that, IMO, was a failure.
Unlike the other implementation, this one doesn't touch gtalk/facebook
accounts, it just adds another copy of the "jabber" prpl called "hipchat".
And, based on the protocol name:
- sets JFLAG_HIPCHAT to jabber_data
- sets the default value of the "server" setting
- only includes the oauth setting for jabber-type accounts
This is slightly more "hardcoded" but honestly facebook and gtalk are
just as hardcoded as this.
Copying the prpl is needed because the meaning of the usernames is
completely different (there's no srv lookup stuff either)
|
|
|
|
|
|
|
|
| |
If the from="..." of the message that includes a subject refers to us,
that buddy object won't have an ext_jid set, and passing that to
strchr() results in pain.
This happens with recent versions of an xmpp server called "lets-chat".
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- irc_im.c:
- bee_irc_user_msg: strdup leaks when otr swallows messages
- bee_irc_user_action_response: GString leak in all ctcp replies
- otr.c:
- call g_slist_free() on the list of the otr_policy setting
- otr_filter_msg_in: call otrl_tlv_free() if "tlvs" are returned
- otr_filter_msg_out: don't g_strdup() if the message should be ignored
- log_otr_message: g_strdup_vprintf() leaks always
- nogaim.c:
- imcb_ask_auth/imcb_ask_add: leaks in g_strdup_printf()
- imcb_ask_add leaks imcb_ask_cb_data if the user already exists
- add imcb_ask_cb_free() to correctly free its data
- msn_util.c: add msn_buddy_ask_free(), ditto
- storage_xml.c: pass_cr/password if base64_decode or arc_decode fail
- ssl_gnutls.c: conn->hostname leak in error conditions, like invalid certs
- jabber_util.c: jabber_buddy_by_ext_jid() leaks jid if it's not an ext jid
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This segfault happened when none of the available streamhosts can be
connected to - or if at least one of them fails to connect.
Before this commit, it can be reproduced reliably by setting the "proxy"
setting of the account to nonsense, for example, this is what i used:
proxy.example.org,1.2.3.4,7777;proxy.example.com,173.194.42.65,80
jabber_bs_recv_handshake_abort() calls jabber_bs_recv_handshake(), which
is supposed to restart the handshake with the next streamhost. And it
replaced bt->tf->watch_out, which held an event ID, with a newer event
ID. So the replaced event ID doesn't get removed, and it gets called
again when its socket is closed by the timeout - and by the time that
happens, the memory is free()'d already. Boom.
The patch is simple - created jabber_bs_remove_events() to cleanup those
events, and use it before any code that expects to restart the cycle.
So basically the same as doing b_event_remove(bt->tf->watch_out).
I hope there aren't more bugs like this in this code.
|
|
|
|
|
|
|
|
|
| |
- get_ft_by_sid()
- generate_pseudoaddr() (also uses g_compute_checksum_for_string() to
make the code shorter)
- jabber_streamhost_new()
Behavior should be the same.
|
|
|
|
|
|
|
| |
Used uncrustify, with the configuration file in ./doc/uncrustify.cfg
Commit author set to "Indent <please@skip.me>" so that it's easier to
skip while doing git blame.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This changes behavior slightly:
- md5_init()/sha1_init() allocate a GChecksum
- md5_finish()/sha1_finish() close and free() it
- md5_digest_keep() was added (no sha1 equivalent needed)
And yes, glib has this concept of "closing" the GChecksum, which means
it can't be used anymore after g_checksum_get_digest().
jabber_cache_add() actually seems to need to do that to generate some
random-ish values, so i kept that working by adding a md5_digest_keep()
function that copies the GChecksum before it gets closed
GChecksum was introduced in glib 2.16, so the configure script version
was bumped. We were already depending on glib 2.16 accidentally
(some post-3.2.2 code uses GHashTableIter)
|
|
|
|
|
| |
This sets the default value of 'nick' for newly created groupchats.
There is no way to set an account-wide nick.
|
|
|
|
|
|
|
|
|
| |
When bee_chat needs to check for self messages, it can call this
function to let the protocol implementation do the comparison.
In the case of jabber, sometimes the server reports a different username
after login, this one is stored in jd->internal_jid, and the one that is
used for login isn't changed
|
|
|
|
|
|
| |
Also refactor jabber_normalize() to be UTF8 aware.
See trac ticket 1106 for more details
|
|
|
|
|
|
|
|
|
|
|
| |
This fixes warnings about passing signed chars to them (apparently they
are implemented as macros that do array lookups without checks in some
platforms, yay)
Specifically:
functions=isalnum|isalpha|isdigit|isspace|isxdigit|tolower|toupper
sed -ir "s/$functions/g_ascii_&/g" **/*.c
|
|
|
|
|
| |
- http_incoming_data calling itself
- jabber_bs_free_transfer calling jabber_si_free_transfer
|
|
|
|
|
|
|
|
| |
Very similar to XEP-0091 which is already supported, but was marked as
obsolete, replaced by XEP-0203. The main differences are the tag name
and the timestamp format.
Due to the similarities, both XEPs are still supported.
|
|
|
|
| |
Got this one while trying to connect to google servers with hipchat auth
|
|
|
|
| |
The MSN XMPP gateway was shutdown december 2013 and isn't coming back.
|
| |
|
| |
|
|
|
|
| |
Patch from ticket #1112
|
| |
|
|\
| |
| |
| |
| |
| | |
XML-formatted user configs from disk I/O so we can try to start using other
mechanisms to store them (a REST API or something, for example).
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
my copyright mentions since some were getting pretty stale. Left files not
touched since before 2012 alone so that this change doesn't touch almost
EVERY source file.
|
| |
| |
| |
| |
| | |
domain like you, you can omit the domain name.
|
| |
| |
| |
| |
| | |
these days.
|
| | |
|
| |
| |
| |
| |
| |
| | |
callback fails, we shouldn't try to continue the ft and dereference the NULL
ptr it returned.
|
| | |
|
|\ \ |
|
|/ /
| |
| |
| |
| |
| |
| | |
This change will make BitlBee acknowledge messages when requested.
It will not request message receipts from other clients, mainly because I am
not sure if this feature can be mapped to IRC cleanly.
|
| |
| |
| |
| |
| | |
XMPP support.
|
|/ |
|
| |
|
|
|
|
|
| |
a little more helpful.
|
|
|
|
|
| |
unexpectedly being set to something already.
|
|
|
|
|
|
|
| |
Just join #somechannel and start inviting people. It should Just Work,
like on other IM networks. Works at least with GTalk and with other
servers that have conference stuff installed on conference.$servername.
|
|
|
|
|
| |
this for automatically generating a sane name for groupchats.
|
|
|
|
|
| |
Hopefully this change fixes a small memory leak.
|
| |
|
|
|
|
|
|
| |
and added some safeguards to keep the user from messaging it when we're
not actually doing OAuth setup.
|
|\ |
|
| |
| |
| |
| |
| | |
changeset:devel,856.
|
| |\ |
|
| | |
| | |
| | |
| | |
| | | |
bit. Any non-0 failure means a problem.
|
| | |
| | |
| | |
| | |
| | | |
(Think of Twitter, but also MSN/Yahoo! authentication.)
|
| | | |
|
| | | |
|
| |/ |
|
| |
| |
| |
| |
| | |
a bogus password.
|