The "network" and "wireless" modules now support interfaces enslaved to
a bonding master. We check sysfs for bonded interfaces, and update each
slave's AF_INET/AF_INET6 from its master.
Use a Try... Except... block instead of a function flag when checking
for the MAC address. This has the benefit of requiring no changes for
user, but fixes the problem with interfaces that do not have MACs.
Network interfaces don't necessarily have a MAC address. For example,
the tunnel devices created by OpenVPN do not. Previously, passing a
network interface that did not have a MAC address caused the network
module to fail, since it assumed that there would be one.
This commit just adds a flag to the network module "mac", which defaults
to True. If True, the module behaves like before. If False, the check
for the MAC address is skipped and the {mac} format variable is replaced
with "NONE".
I tested this with my OpenVPN interface as well as my regular interface
and it works fine.