Opened 10 years ago

Closed 10 years ago

Last modified 10 years ago

#9956 closed defect (fixed)

Cannot connect to XMPP servers without SRV record

Reported by: codesquid Owned by: darkrain42
Milestone: 2.6.2 Component: libpurple
Version: 2.6.1 Keywords: XMPP SRV DNS record
Cc: akrherz, shs_bulldog

Description

I'm using the Windows version.

After updating to 2.6.1 I could no longer connect to my server. It used to work fine with 2.5.8

2.6.1 would start up fine but the status button at the bottom of the buddy list would display "connecting" and remain that way forever.

My server was lacking a SRV record, after adding a SRV record I was once again able to connect to my XMPP server.

This appears to be a bug in Pidgin or one of its dependencies since the existence of a SRV record is not mandatory according to RFC 3920 section 14.3:

If the SRV lookup fails, the fallback is a normal IPv4/IPv6 address record resolution to determine the IP address, using the "xmpp-client" port of 5222, registered with the IANA.

Attachments (1)

purple-258.log (5.5 KB) - added by akrherz 10 years ago.
Pidgin 2.5.8 debug log

Download all attachments as: .zip

Change History (28)

comment:1 Changed 10 years ago by darkrain42

  • Component changed from unclassified to libpurple
  • Milestone set to 2.6.2
  • Owner changed from rekkanoryo to darkrain42

the XMPP prpl already does this; the issue is that the DNS SRV code on Win32 doesn't trigger the callback to the XMPP prpl when an error occurs.

comment:2 Changed 10 years ago by darkrain42

  • Status changed from new to pending

I asked codesquid to attach a debug log from 2.5.8, so pending.

comment:3 Changed 10 years ago by akrherz

reproducing here. Would be happy to provide any info necessary.

Changed 10 years ago by akrherz

Pidgin 2.5.8 debug log

comment:4 Changed 10 years ago by darkrain42@…

  • Resolution set to fixed
  • Status changed from pending to closed

(In 1fa60074b939d7c3827e843242f1532560f6f4a6):
Fix not calling the SRV timeout on the win32 code. Closes #9956.

comment:5 Changed 10 years ago by darkrain42

Stu compiled http://pidgin.im/~nosnilmot/2.6.1/srvfix/libpurple.dll, which contains the patch and has been verified working by multiple people.

comment:6 Changed 10 years ago by darkrain42

Ticket #9964 has been marked as a duplicate of this ticket.

comment:7 Changed 10 years ago by rekkanoryo

Ticket #9965 has been marked as a duplicate of this ticket.

comment:8 follow-up: Changed 10 years ago by shs_bulldog

I copied the libpurple.dll into my directory and then when I started pidgin it wouldn't connect because it said the certificate on the server was no valid. I deleted the account and tried to recreate it. After I typed in my settings and hit save, Pidgin crashed. I tried several times, same result, so I ended up downgrading to 2.5.8 which works fine.

It may just have been me but wanted to share in case im not the only one.

comment:9 in reply to: ↑ 8 ; follow-up: Changed 10 years ago by darkrain42

Replying to shs_bulldog:

I copied the libpurple.dll into my directory and then when I started pidgin it wouldn't connect because it said the certificate on the server was no valid. I deleted the account and tried to recreate it. After I typed in my settings and hit save, Pidgin crashed. I tried several times, same result, so I ended up downgrading to 2.5.8 which works fine.

It may just have been me but wanted to share in case im not the only one.

It would be good to see a crash report for this (install the debug version, see TipsForBugReports). The 'certificate invalid' error probably indicates the certificate is self-signed. See #9971.

comment:10 in reply to: ↑ 9 Changed 10 years ago by nosnilmot

It would be good to see a crash report for this (install the debug version, see TipsForBugReports).

Note that installing the debug version will replace libpurple.dll, you will then want to use http://pidgin.im/~nosnilmot/2.6.1/srvfix/debug/libpurple.dll which is the same as above but intended for use with the debug build.

comment:11 Changed 10 years ago by nosnilmot

Ticket #9988 has been marked as a duplicate of this ticket.

comment:12 Changed 10 years ago by nosnilmot

Ticket #9980 has been marked as a duplicate of this ticket.

comment:13 Changed 10 years ago by nosnilmot

Ticket #9979 has been marked as a duplicate of this ticket.

comment:14 Changed 10 years ago by darkrain42

Ticket #9994 has been marked as a duplicate of this ticket.

comment:15 Changed 10 years ago by darkrain42

Ticket #10001 has been marked as a duplicate of this ticket.

comment:16 Changed 10 years ago by darkrain42

Ticket #9999 has been marked as a duplicate of this ticket.

comment:17 Changed 10 years ago by darkrain42

Ticket #10009 has been marked as a duplicate of this ticket.

comment:18 Changed 10 years ago by QuLogic

Ticket #10026 has been marked as a duplicate of this ticket.

comment:19 Changed 10 years ago by rekkanoryo

Ticket #10042 has been marked as a duplicate of this ticket.

comment:20 Changed 10 years ago by darkrain42

Ticket #10042 has been marked as a duplicate of this ticket.

comment:21 Changed 10 years ago by darkrain42

Ticket #10034 has been marked as a duplicate of this ticket.

comment:22 Changed 10 years ago by darkrain42

Ticket #10083 has been marked as a duplicate of this ticket.

comment:23 Changed 10 years ago by darkrain42

Ticket #10089 has been marked as a duplicate of this ticket.

comment:24 Changed 10 years ago by darkrain42

Ticket #10103 has been marked as a duplicate of this ticket.

comment:26 Changed 10 years ago by darkrain42

Ticket #10156 has been marked as a duplicate of this ticket.

comment:27 Changed 10 years ago by darkrain42

Ticket #10183 has been marked as a duplicate of this ticket.

Note: See TracTickets for help on using tickets.
All information, including names and email addresses, entered onto this website or sent to mailing lists affiliated with this website will be public. Do not post confidential information, especially passwords!