mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager.git
synced 2026-02-07 12:10:26 +01:00
Tag addresses and routes with their source. We'll use this later to do (or not do) operations based on where the item came from. One thing to note is that when synchronizing items with the kernel, all items are read as source=KERNEL even when they originally came from NetworkManager, since the kernel has no way of providing this source information. This requires the source 'priority', which nm_ip*_config_add_address() and nm_ip*_config_add_route() must respect to ensure that NM-owned routes don't have their source overwritten when merging various IP configs in ip*_config_merge_and_apply(). Also of note is that memcmp() can no longer be used to compare addresses/routes in nm-platform.c, but this had problems before anyway with ifindex, so that workaround from nm_platform_ip4_route_sync() can be removed. https://bugzilla.gnome.org/show_bug.cgi?id=722843 https://bugzilla.redhat.com/show_bug.cgi?id=1005416 |
||
|---|---|---|
| .. | ||
| nm-modem-broadband.c | ||
| nm-modem-broadband.h | ||
| nm-modem-manager.c | ||
| nm-modem-manager.h | ||
| nm-modem-old-types.h | ||
| nm-modem-old.c | ||
| nm-modem-old.h | ||
| nm-modem.c | ||
| nm-modem.h | ||
| README | ||
ModemManager integration is organized as follows:
Common source
********************************************************************************
* nm-modem.[h|c]:
Defines the basic `NMModem' object. The core NetworkManager implementation
will use this interface exclusively, regardless of the real final type of
the modem object.
* nm-modem-manager.[h|c]:
Defines the `NMModemManager' object, which takes care of listening to
signals from the DBus interface notifying about added or removed modems.
It also takes care of creating proper `NMModem' objects from the
information retrieved from the DBus interface.
ModemManager 0.7 integration
********************************************************************************
* nm-modem-broadband.[h|c]:
Defines the `NMModemBroadband' object, which is a subclass of `NMModem'.
This object handles both 3GPP and 3GPP2 modems exposed in the new
`ModemManager1' interface.
ModemManager 0.4/0.5/0.6 integration
********************************************************************************
* nm-modem-old-types.h:
Defines helper types to use with the (old) ModemManager DBus API.
* nm-modem-old.[h|c]:
Defines the `NMModemGeneric' object. All modem objects based on the old
ModemManager interface are subclasses of this one.
* nm-modem-gsm.[h|c]:
Defines the `NMModemGsm' object, which is a subclass of `NMModemGeneric'.
This object handles 3GPP-specific (GSM, UMTS, HSPA, LTE) modems.
* nm-modem-cdma.[h|c]:
Defines the `NMModemCdma' object, which is a subclass of `NMModemGeneric'.
This object handles 3GPP2-specific modems (CDMA, EV-DO).