From 6df50a0c5e1cdf18eac5dcd467b1f08f57fad7a0 Mon Sep 17 00:00:00 2001 From: Robert Mustacchi Date: Thu, 12 Apr 2012 23:43:19 +0000 Subject: HVM-728 Multicast isn't available to VMs --- net/vnic.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/net/vnic.c b/net/vnic.c index 8813de0..b54a040 100644 --- a/net/vnic.c +++ b/net/vnic.c @@ -314,12 +314,24 @@ net_init_vnic(QemuOpts *opts, Monitor *mon, const char *name, VLANState *vlan) } } + /* + * We are enabling support for two different kinds of promiscuous modes. + * The first is getting us the basics of the unicast traffic that we + * care about. The latter is going to ensure that we also get other + * types of physical traffic such as multicast and broadcast. + */ if (dlpi_promiscon(vsp->vns_hdl, DL_PROMISC_SAP) != DLPI_SUCCESS) { error_report("vnic: failed to be promiscous with interface %s", ifname); return (-1); } + if (dlpi_promiscon(vsp->vns_hdl, DL_PROMISC_PHYS) != DLPI_SUCCESS) { + error_report("vnic: failed to be promiscous with interface %s", + ifname); + return (-1); + } + fd = dlpi_fd(vsp->vns_hdl); if (fcntl(fd, F_SETFL, O_NONBLOCK) < 0) { -- cgit v1.2.3