Skip to content

[th/l3cfg-1] Add NML3Cfg and NML3ConfigData (still unused)

Thomas Haller requested to merge th/l3cfg-1 into master

Currently, NMDevice does too much. Also, NMIP[46]Config does too much.

This will be heavily reworked.

  • handling IP configuration will be done by a new type NML3Cfg. This instance is tied to an ifindex. That means, it can be shared between NMDevice instances. NMDevice is also exposed on D-Bus (as NMDBusObject). Sometimes a device changes aspects and can manage a different ifindex. The NML3Cfg instance can be passed around (and controlled by different/multiple NMDevice instances).

  • the DHCP handling etc will later also move to NML3Cfg.

  • NMIP4Config is both used to track IP configuration, and to expose current settings on D-Bus (as /org/freedesktop/NetworkManager/IP4Config/1). It is even responsible of configuring the platform (via nm_ip6_config_commit()). NML3ConfigDatawill take responsibility of tracking configuration. It has no logic, and is not exposed on D-Bus.NML3Cfgwill take responsibility of handling layer 3 configuration.NMIP4Config` will only be used to expose data on D-Bus.

This will be a large work. This only adds parts which is still unused. But the branch is large enough to merge it early, instead of keep growing it further.

Merge request reports