#570 closed defect (fixed)
BitlBee fails to connect to QQ (problems with protocol version setting)
Reported by: | anonymous | Owned by: | wilmer |
---|---|---|---|
Priority: | normal | Milestone: | |
Component: | Purple | Version: | |
Keywords: | Cc: | ||
IRC client+version: | Client-independent | Operating System: | Public server |
OS version/distro: |
Description
reproduce:
account add qq ID passwd account on
BAM
Attachments (0)
Change History (24)
comment:1 Changed at 2010-03-10T00:19:27Z by
comment:2 Changed at 2010-03-10T00:26:01Z by
Yeah, I just noticed that and have a backtrace already. I see exactly what the problem is and will just have to cook up a solution.
It's late here already so I have to sleep, but will hopefully be able to fix this pretty soon.
comment:3 Changed at 2010-03-10T21:38:15Z by
gettimeofday({1268256920, 96974}, NULL) = 0 read(6, "PRIVMSG &bitlbee :account add qq"..., 512) = 42 write(2, "Setting with unknown type: serve"..., 38) = 38 write(2, "Setting with unknown type: clien"..., 46) = 46 gettimeofday({1268256920, 98506}, NULL) = 0 gettimeofday({1268256920, 98722}, NULL) = 0 writev(4, [{"l\4\1\1\4\0\0\0\201\0\0\0w\0\0\0\1\1o\0\36\0\0\0/im/pidg"..., 136}, {"e\1\0\0", 4}], 2) = 140 writev(4, [{"l\4\1\1\4\0\0\0\202\0\0\0w\0\0\0\1\1o\0\36\0\0\0/im/pidg"..., 136}, {"e\1\0\0", 4}], 2) = 140 fstat64(6, {st_mode=S_IFSOCK|0777, st_size=0, ...}) = 0 fcntl64(6, F_GETFL) = 0x802 (flags O_RDWR|O_NONBLOCK) gettimeofday({1268256920, 102893}, NULL) = 0 poll([{fd=4, events=POLLIN}, {fd=10, events=POLLIN}, {fd=8, events=POLLIN}, {fd=6, events=POLLOUT}, {fd=6, events=POLLIN}], 5, 4996) = 1 ([{fd=6, revents=POLLOUT}]) gettimeofday({1268256920, 103445}, NULL) = 0 write(6, ":rootroot@localhost.localdomain"..., 79) = 79 gettimeofday({1268256920, 103987}, NULL) = 0 poll([{fd=4, events=POLLIN}, {fd=10, events=POLLIN}, {fd=8, events=POLLIN}, {fd=6, events=POLLIN}], 4, 4995) = 1 ([{fd=6, revents=POLLIN}]) gettimeofday({1268256923, 663073}, NULL) = 0 read(6, "PRIVMSG &bitlbee :account on\r\n", 512) = 30 fstat64(6, {st_mode=S_IFSOCK|0777, st_size=0, ...}) = 0 fcntl64(6, F_GETFL) = 0x802 (flags O_RDWR|O_NONBLOCK) writev(4, [{"l\4\1\1\4\0\0\0\203\0\0\0w\0\0\0\1\1o\0\36\0\0\0/im/pidg"..., 136}, {"s\1\0\0", 4}], 2) = 140 --- SIGSEGV (Segmentation fault) @ 0 (0) --- time(NULL) = 1268256923 send(5, "<27>Mar 10 22:35:23 bitlbee[5467"..., 85, MSG_NOSIGNAL) = 85 tgkill(5467, 5467, SIGSEGV) = 0 sigreturn() = ? (mask now []) --- SIGSEGV (Segmentation fault) @ 0 (0) --- Process 5467 detached
comment:4 Changed at 2010-03-11T01:09:29Z by
Yeah, I know what the problem is already. There's some settings field reported by libpurple that BitlBee can't deal with yet (a list, which is non-obvious to squeeze into an IRC UI).
I have ideas on how to fix this, will have something ready in a few days hopefully.
comment:5 Changed at 2010-03-12T01:08:37Z by
changeset:wilmer-libpurple,507
That should work now. I can get it to show me an error message. Can you see how it works for you?
comment:6 Changed at 2010-03-12T22:04:58Z by
looks fine so far, but when i connect i get an error message about the version being too old, i guess they changed the protocol. i probably related to this: http://developer.pidgin.im/ticket/11530
comment:7 Changed at 2010-03-14T01:45:46Z by
Resolution: | → fixed |
---|---|
Status: | new → closed |
BitlBee bug here's fixed, it's up to the libpurple folks to fix th new problem.. :-/
comment:8 Changed at 2010-04-12T06:38:37Z by
Resolution: | fixed |
---|---|
Status: | closed → reopened |
hey, its me again
it works in pidgin when i go to the client config advanced tab and set the client version to qq 2008
in the accounts.xml it looks like this:
<setting name='client_version' type='string'>qq2008</setting>
so i guess this can be set somewhere api-wise would be a good idea to set it to qq2008 by default
comment:9 Changed at 2010-04-13T19:15:21Z by
The libpurple people should do that.. :-/
Did you have to change that setting in Pidgin to make it work?
BTW you can also use "account set qq/client_version qq2008" in BitlBee to fix this. Have you tried?
comment:11 Changed at 2010-04-22T13:58:55Z by
it somehow refuses to set it. all it does is reply to my request with client_version = 'qq2005'
i tried account set 0/client_version qq2008
comment:12 Changed at 2010-04-22T14:05:11Z by
I'm not sure, but I think "help purple qq" should give you a list of possible values.
comment:13 Changed at 2010-04-22T15:33:21Z by
LOL, ok found it... it accepts "QQ2008" but not "qq2008"
comment:14 Changed at 2010-04-22T15:36:42Z by
still cant connect tho.
it looks like client_version has to be lowercase,
but you can not set it lowercase. cant even set it back to the default value "qq2005" after setting it to "QQ2008"
comment:15 Changed at 2010-04-29T08:31:49Z by
Priority: | major → normal |
---|---|
Summary: | bitlbee crashes when connecting to QQ network → BitlBee fails to connect to QQ (problems with protocol version setting) |
Hmm, I may have confused the internal and external option names here or something like that. :-/ I'll take a look.
Also, I'll change the description since this bug's not about crashing anymore.
comment:16 Changed at 2010-05-09T23:25:37Z by
Hello,
Sorry for the delay: I may have this fixed now, but as I don't have a qq account I can't test this myself. See changeset:wilmer-libpurple,525. Can you see if it works?
comment:17 Changed at 2010-05-23T14:05:44Z by
Resolution: | → fixed |
---|---|
Status: | reopened → closed |
I'll close this one. If you at some point have a chance to test this, please let me know how it goes (feel free to reopen if it's still broken).
comment:18 Changed at 2010-06-04T16:35:28Z by
Ok.
It works!
ill i have to do is
account set 0/client_version qq2008
then i can connect just fine. :)
thanks man.
now i hope that otr will make it into bitlbee so i can finally ditch pidgin or dont need to run 2 bitlbee instances
comment:19 Changed at 2010-06-04T16:39:28Z by
OTR is also getting closer. :-)
Thanks for the report, I'm glad it works now!
comment:20 Changed at 2010-06-04T16:40:06Z by
BTW if you use irssi or XChat you can do OTR from inside your IRC client in the meantime. IT doesn't work great for some people but it's definitely worth trying.
comment:21 Changed at 2010-06-04T16:51:39Z by
yeah i did that before but it was really bad (as i already wrote in the otr ticket)
anyhow.. theres still one issue with this.
when i send a new msg to someone it does not open a query window. but instead all the messages are displayed in the control channel.
comment:22 Changed at 2010-06-04T16:57:16Z by
Is that really an issue with the QQ/purple module?
How do you send your own message? Remember that you get your responses in BitlBee the same way you sent your last msg to that person. So if you msg'ed him/her inside &bitlbee that's how you get the responses.
comment:23 Changed at 2010-06-04T17:09:09Z by
from inside the control channel i used /msg ID blahblah
in this particular case i sent myself a message.
comment:24 Changed at 2010-06-04T22:57:52Z by
Using /msg as well? And the response comes from exactly the same nick, or a slightly different one?
you dont need an account to reproduce this just use random data, same thing happens