diff options
Diffstat (limited to 'ethernet_interface.cpp')
-rw-r--r-- | ethernet_interface.cpp | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/ethernet_interface.cpp b/ethernet_interface.cpp index d887bf5..b70db40 100644 --- a/ethernet_interface.cpp +++ b/ethernet_interface.cpp @@ -555,7 +555,11 @@ void EthernetInterface::writeConfigurationFile() // write the network section stream << "[" << "Network" << "]\n"; +#ifdef LINK_LOCAL_AUTOCONFIGURATION stream << "LinkLocalAddressing=yes\n"; +#else + stream << "LinkLocalAddressing=no\n"; +#endif stream << "IPv6AcceptRA=false\n"; // Add the VLAN entry @@ -587,7 +591,11 @@ void EthernetInterface::writeConfigurationFile() // Static for (const auto& addr : addrs) { - if (addr.second->origin() == AddressOrigin::Static) + if (addr.second->origin() == AddressOrigin::Static +#ifndef LINK_LOCAL_AUTOCONFIGURATION + || addr.second->origin() == AddressOrigin::LinkLocal +#endif + ) { std::string address = addr.second->address() + "/" + std::to_string(addr.second->prefixLength()); |