Opened at 2012-01-10T16:51:20Z
Closed at 2012-01-12T10:40:32Z
#893 closed defect (fixed)
Multiple twitter accounts causes 'Authentication failure'
| Reported by: | DjSlash | Owned by: | |
|---|---|---|---|
| Priority: | normal | Milestone: | |
| Component: | BitlBee | Version: | devel |
| Keywords: | Cc: | ||
| IRC client+version: | Client-independent | Operating System: | Linux |
| OS version/distro: |
Description
I have three twitter accounts enabled in bitlbee, but since two days or so, bitlbee seems to be having problems authenticating them seperatly. So I got a bit testing going on and I can not pinpoint the exact trigger yet. Sometimes it looks like if it's working fine, but then it disconnects again. Since it *can* connect fine when enabling the account, there is obviously nothing wrong with the authentication process (nor with my account credentials).
This is on a debian testing (wheezy) system with http://code.bitlbee.org/debian/devel/testing/amd64/ as apt-source. Affected/tested versions: bitlbee-3.0.4+devel+849-1 & bitlbee-3.0.4+z+20120104+devel+870-2
Attachments (0)
Change History (5)
comment:1 Changed at 2012-01-10T17:23:19Z by
comment:2 Changed at 2012-01-10T19:45:24Z by
I've seen something similar - getting bumped off Twitter with a 401 Unauthorized.
Debug log of HTTP traffic: https://gist.github.com/1590748
comment:3 Changed at 2012-01-10T23:50:57Z by
Patch for people who like those:
=== modified file 'protocols/twitter/twitter_lib.c'
--- protocols/twitter/twitter_lib.c 2011-12-26 18:17:51 +0000
+++ protocols/twitter/twitter_lib.c 2012-01-10 23:36:29 +0000
@@ -886,10 +886,6 @@
td->http_fails = 0;
if (!(ic->flags & OPT_LOGGED_IN))
imcb_connected(ic);
- } else if (req->status_code == 401) {
- imcb_error(ic, "Authentication failure");
- imc_logout(ic, FALSE);
- goto end;
} else {
// It didn't go well, output the error and return.
if (++td->http_fails >= 5)
@@ -938,10 +934,6 @@
td->http_fails = 0;
if (!(ic->flags & OPT_LOGGED_IN))
imcb_connected(ic);
- } else if (req->status_code == 401) {
- imcb_error(ic, "Authentication failure");
- imc_logout(ic, FALSE);
- goto end;
} else {
// It didn't go well, output the error and return.
if (++td->http_fails >= 5)
comment:4 Changed at 2012-01-11T01:59:26Z by
Thanks - I'll run it and report back. It's strange though that one request will fail with a 401, and another in the debug log will get a 200. Could it be a threading issue?
comment:5 Changed at 2012-01-12T10:40:32Z by
| Resolution: | → fixed |
|---|---|
| Status: | new → closed |
Oh yes, so this was fixed in a commit two days ago..

This is Twitter fucking up. They sometimes reject BitlBee's authentication info and BitlBee treats that as a fatal error. Which is IMHO a reasonable thing to do but not when the service is being unreasonable.