avformat/udp: specify the local address for some source filtered multicast joins
authorMarton Balint <cus@passwd.hu>
Fri, 21 Sep 2018 20:27:02 +0000 (22:27 +0200)
committerMarton Balint <cus@passwd.hu>
Wed, 3 Oct 2018 20:03:29 +0000 (22:03 +0200)
commitd3bda871f033be4825ecb69d444b3396bf2a2eb7
treeaadbe35df0319d5e9d5bd7247f4a61fc7a2f0649
parent91a136345273e8d256b996365dd3d76265b69719
avformat/udp: specify the local address for some source filtered multicast joins

We already use localaddr for the multicast joins without source filters, so we
should use them for source filters as well. This patch only fixes the
IP_ADD_SOURCE_MEMBERSHIP and the IP_BLOCK_SOURCE case.

Unless we do this, the kernel automatically selects an interface based on the
source address, and that interface might be different from the one set in
localaddr. For blocked sources this even casues EINVAL because we joined the
multicast group on a different interface.

Signed-off-by: Marton Balint <cus@passwd.hu>
libavformat/udp.c