From 317995b921c96ce62ce17adb90b94e84c6e5e9d3 Mon Sep 17 00:00:00 2001 From: Adam Ierymenko Date: Fri, 23 May 2014 17:35:35 -0400 Subject: Fixed for Linux tap for GitHub Issue #69 --- node/UnixEthernetTap.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/node/UnixEthernetTap.cpp b/node/UnixEthernetTap.cpp index aea4f00e..4f9291ac 100644 --- a/node/UnixEthernetTap.cpp +++ b/node/UnixEthernetTap.cpp @@ -272,7 +272,7 @@ UnixEthernetTap::UnixEthernetTap( // Set MAC address ifr.ifr_ifru.ifru_hwaddr.sa_family = ARPHRD_ETHER; - memcpy(ifr.ifr_ifru.ifru_hwaddr.sa_data,mac.data,6); + mac.copyTo(ifr.ifr_ifru.ifru_hwaddr.sa_data,6); if (ioctl(sock,SIOCSIFHWADDR,(void *)&ifr) < 0) { ::close(_fd); ::close(sock); @@ -696,7 +696,7 @@ bool UnixEthernetTap::updateMulticastGroups(std::set &groups) ++fno; } if ((devname)&&(!strcmp(devname,_dev.c_str()))&&(mcastmac)&&(Utils::unhex(mcastmac,mac,6) == 6)) - newGroups.insert(MulticastGroup(MAC(mac),0)); + newGroups.insert(MulticastGroup(MAC(mac,6),0)); } } ::close(fd); -- cgit v1.2.3