tipc: fix build issue when building without IPv6
We can't directly call ipv6_sock_mc_join() but should use the stub
instead and protect it around IS_ENABLED.
Fixes: d0f91938be
("tipc: add ip/udp media type")
Signed-off-by: Marcelo Ricardo Leitner <marcelo.leitner@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Родитель
d15b1de46f
Коммит
446981e5fc
|
@ -44,6 +44,7 @@
|
||||||
#include <net/sock.h>
|
#include <net/sock.h>
|
||||||
#include <net/ip.h>
|
#include <net/ip.h>
|
||||||
#include <net/udp_tunnel.h>
|
#include <net/udp_tunnel.h>
|
||||||
|
#include <net/addrconf.h>
|
||||||
#include <linux/tipc_netlink.h>
|
#include <linux/tipc_netlink.h>
|
||||||
#include "core.h"
|
#include "core.h"
|
||||||
#include "bearer.h"
|
#include "bearer.h"
|
||||||
|
@ -247,10 +248,13 @@ static int enable_mcast(struct udp_bearer *ub, struct udp_media_addr *remote)
|
||||||
mreqn.imr_multiaddr = remote->ipv4;
|
mreqn.imr_multiaddr = remote->ipv4;
|
||||||
mreqn.imr_ifindex = ub->ifindex;
|
mreqn.imr_ifindex = ub->ifindex;
|
||||||
err = ip_mc_join_group(sk, &mreqn);
|
err = ip_mc_join_group(sk, &mreqn);
|
||||||
|
#if IS_ENABLED(CONFIG_IPV6)
|
||||||
} else {
|
} else {
|
||||||
if (!ipv6_addr_is_multicast(&remote->ipv6))
|
if (!ipv6_addr_is_multicast(&remote->ipv6))
|
||||||
return 0;
|
return 0;
|
||||||
err = ipv6_sock_mc_join(sk, ub->ifindex, &remote->ipv6);
|
err = ipv6_stub->ipv6_sock_mc_join(sk, ub->ifindex,
|
||||||
|
&remote->ipv6);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
|
|
Загрузка…
Ссылка в новой задаче