| Commit message (Collapse) | Author | Age | Lines |
|
|
|
|
| |
Most of the time that error meant a confusion on bitlbee's side, often a
server for which we sent a join request and never got a reply for.
|
|
|
|
| |
Also applies to hipchat.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fixes trac ticket 1265 - see the comments on that ticket for reasons on
why personal tokens and not the usual oauth flow. TL;DR hipchat doesn't
allow third party apps to own oauth client secrets. Instead, those are
generated when the "addon" is "installed" which requires a flow that is
either impossible or too awkward to use in bitlbee.
So, after giving up on the right way and telling the users to manage
tokens the ugly way, what's left to do is easy, just a few tweaks in the
sasl blob and short-circuit most of the actual oauth stuff. I didn't
even bother changing the service struct from google. It's not used.
This also updates the gtalk SASL X-OAUTH2 code to use GStrings instead of
juggling with malloc/strlen/strcpy, and simplifies a bit the way
GStrings are used in the equivalent SASL PLAIN code.
|
|
|
|
|
|
|
|
|
| |
Basically the same thing as github PR #55, which fixes trac bug 415,
but this one conditionalized that behavior and uses the API introduced a
few commits ago.
I didn't think too much about the setting name and i'm open to changing
it to anything else
|
|
|
|
|
| |
This prevents them from being stored or copied to other clients when
carbons are enabled.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Facebook's oauth has been broken for months, and in the last few days
they broke plain logins too, so I just added an error message that says
this when you do "account on":
Facebook's XMPP service is gone. Try this instead:
https://wiki.bitlbee.org/HowtoFacebookMQTT
Also nuked all the oauth related code, except some parts of lib/oauth2.c
which seemed generic enough to maybe help in the future with other
not-really-compliant not-really-implementations of the not-really-oauth2
not-really-spec
|
|
|
|
|
|
|
|
|
|
|
| |
It's basically prepending the organization id, appending the default MUC
host from the success packet, and generating a slug based on the name
for the middle part, which is replacing a few characters with
underscores and doing a unicode aware lowercasing.
Includes tests, which are useless other than validating the initial
implementation with the test vectors that i already tested manually.
Guaranteed to detect zero breakages in the future. Good test code.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
"Message carbons" (XEP-0280) is a server feature to get copies of
outgoing messages sent from other clients connected to the same account.
It's not widely supported by most public XMPP servers (easier if you
host your own), but this will probably change in the next few years.
This is enabled by default if the server supports it. It can also be
disabled with the "carbons" account setting.
Loosely based on a patch by kormat from trac ticket 1021. (Thanks!)
I moved stuff around, simplified things, fixed a few bugs, and used the
new self-messages feature.
|
|
|
|
|
|
|
|
|
|
| |
Twitter and MSN are all HTTP/SSL, so they don't need it either.
The out of tree facebook and steam plugins are also covered by the
HTTP/SSL changes.
Yahoo is written in a weird way and doesn't seem to need it (it seems it
doesn't immediately stop connections when you tell it to logout)
|
|
|
|
|
|
|
| |
Fixes trac ticket 1111, https://bugs.bitlbee.org/bitlbee/ticket/1111
One of the most annoying issues. You're trying to debug stuff and it
just crashes even harder than without the debug enabled.
|
|
|
|
|
|
|
|
|
|
|
| |
Since bare JIDs from typing notifications are now accepted, the other
buddy objects never get the flag JBFLAG_DOES_XEP85 set. This fixes it by
checking both the buddy with resource and the bare one, with the
implication that if the bare JID has that flag, all other resources get
typing notifications.
Follow up to the previous commit, splitting since they are actually
unrelated fixes, although this one is a consequence of the previous one.
|
| |
|
|
|
|
| |
Use "account jabber set anonymous on" to have bitlbee try that method
|
|
|
|
|
| |
- GMail notifications stuff is now just 'mail_notifications'
- sed -i s/notify_handle/mail_notifications_handle/
|
|
|
|
|
|
|
|
| |
- Add gmail_notifications_limit hidden setting, set to 5 by default.
- Don't show "snippets" in email notifications. Not very useful and they
make the whole thing seem too spammy
- Show sender name instead of your own email
- Default values for empty subject / sender
|
| |
|
|
|
|
|
|
|
|
|
|
| |
CID 18634: 'Logically dead code' in jabber_get_info
CID 18638: 'Dereference after null check' in oauth2_access_token_done
CID 18691: 'Copy into fixed size buffer' in bee_irc_user_new
CID 20274: Leak in bee_irc_chat_invite
CID 20297, CID 20283: Leaks in crypt_main
Some the base64 leaks there weren't detected, needs modeling.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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)
|
|
|
|
|
|
|
| |
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
|
|
|
|
| |
The MSN XMPP gateway was shutdown december 2013 and isn't coming back.
|
|\
| |
| |
| |
| |
| | |
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.
|
|/ |
|
|
|
|
|
| |
a little more helpful.
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
| |
and added some safeguards to keep the user from messaging it when we're
not actually doing OAuth setup.
|
|\ |
|
| |
| |
| |
| |
| | |
changeset:devel,856.
|
| |\ |
|
| | |
| | |
| | |
| | |
| | | |
(Think of Twitter, but also MSN/Yahoo! authentication.)
|
| | | |
|
| |/ |
|
| |
| |
| |
| |
| | |
a bogus password.
|
| |
| |
| |
| |
| | |
magic, fixes escaping issues.
|
| | |
|
| |
| |
| |
| |
| |
| | |
and "proper" OAuth2) Facebook OAuth support. (And, add wl.offline scope to get
tokens that don't expire after an hour.)
|
| |
| |
| |
| |
| |
| | |
and somewhat for MS Messenger. The fb part needs different parsing of the
authorize request, and possibly some other work.
|
|\| |
|
| |
| |
| |
| |
| |
| |
| | |
hidden-default settings, which means a setting is hidden unless it was
changed from the default. This seems like appropriate behaviour for
something as obscure as this.
|
| |
| |
| |
| |
| |
| | |
Found one double free() bug causing troubles when a buddy_msg() handler takes
down the IM connection immediately.
|
| | |
|
| | |
|
| |
| |
| |
| |
| | |
great and imc_logout() gets (rightfully) confused when jabber_data is empty).
|
| | |
|