Opened 16 years ago

Closed 16 years ago

#9001 closed defect (Invalid)

UPNP was using fully qualified domain names to devices that couldn'tt resolve them

Reported by: satz@… Owned by: beirdo
Priority: minor Milestone: unknown
Component: MythTV - UPnP Version: 0.23.1
Severity: medium Keywords: UPNP
Cc: Ticket locked: no

Description

I changed my server name in the mythtv-setup from an IP address to a host name while playing with multiple back-ends. This broke the ability to play via UPNP on some (WD TV Live Plus) players. The backend is using the FQDN instead of the IP address in the UPNP which the player cannot resolve.

The solution is to turn all host names into IP addresses. I have included a patch as a proof of concept which allows my WD device to begin to play again.

The patch is still deficient in the following areas: 1) It is possible the DNS resolver will not return any addresses. This isn't always handed. 2) The backend music UPNP handler doesn't cache the back end's IP address like the Video and TV handling. This will hammer the network with resolver requests for every song and will ultimately cause a crash due to the above case of not checking the return.

Attachments (1)

upnpdiff.txt (15.8 KB ) - added by satz@… 16 years ago.
Patch to allow the backend to use IP addresses instead of hostsnames for UPNP

Download all attachments as: .zip

Change History (5)

by satz@…, 16 years ago

Attachment: upnpdiff.txt added

Patch to allow the backend to use IP addresses instead of hostsnames for UPNP

comment:1 by beirdo, 16 years ago

Owner: set to beirdo
Status: newaccepted

comment:2 by beirdo, 16 years ago

The other way to fix this is to use IP addresses, not names.

I will look into this after 0.24

comment:3 by beirdo, 16 years ago

Component: MythTV - GeneralMythTV - UPnP

comment:4 by robertm, 16 years ago

Resolution: Invalid
Status: acceptedclosed

Setting your backend to a hostname instead of an IP address is not supported. That's why mythtv-setup asks for an IP address, not a hostname.

Note: See TracTickets for help on using tickets.