Project

General

Profile

Bug #3289

HDHomerun support doesn't work when secondary NIC has the external IP

Added by Todd Quessenberry about 9 years ago.

Status:
New
Priority:
Normal
Assignee:
-
Category:
Configuration
Target version:
-
Start date:
2015-11-12
Due date:
% Done:

0%

Estimated time:
Found in version:
4.0.7
Affected Versions:

Description

I'm trying to run Tvheadend in a Docker container (https://github.com/dreamcat4/docker-images/blob/master/tvh/README.md) which has two NICs (en0, en1). When it contacts the HDHomerun to stream, it has to pass the IP address of the Tvheadend server to the HDHomerun so that it can make a connection back. It currently just gets the address of the first NIC (which is a reasonable default approach), but that's not the exposed external address of the container so the callback fails.

See https://github.com/tvheadend/tvheadend/blob/master/src/input/mpegts/tvhdhomerun/tvhdhomerun_frontend.c#L89 for where it gets the local ip address.

It'd be great if this supported a different mechanism of getting the local address, or at least provided a mechanism to override the value (either the address itself or the interface to get the address from) with either an addition to a configuration file or command line parameter or something. Maybe there's functions in tcp.c that could be leveraged? (I have no C skills but have been poking around the code.) Or maybe if a bind address is specified as a command line parameter that could be passed to tvhdhomerun_frontend to use as it is for other services.

Also available in: Atom PDF