network/netdev: verify specified MAC address

Drop multicast bit and set local bit of the specified MAC address.

This also makes failure in generating persistent MAC address
non-critical.
This commit is contained in:
Yu Watanabe
2021-11-27 06:39:04 +09:00
parent 5e20e1e3e3
commit 007899f43e
4 changed files with 51 additions and 42 deletions
+3 -7
View File
@@ -66,13 +66,9 @@ static int netdev_veth_verify(NetDev *netdev, const char *filename) {
"Veth NetDev without peer name configured in %s. Ignoring",
filename);
if (v->hw_addr_peer.length == 0) {
r = netdev_generate_hw_addr(v->ifname_peer, &v->hw_addr_peer);
if (r < 0)
return log_netdev_warning_errno(netdev, r,
"Failed to generate persistent hardware address for peer '%s': %m",
v->ifname_peer);
}
r = netdev_generate_hw_addr(netdev, v->ifname_peer, &v->hw_addr_peer);
if (r < 0)
return r;
return 0;
}