NetworkManager/src
Thomas Haller b8bc80bcdb all: add base object type in "nm-obj.h"
Platform has it's own, simple implementation of object types:
NMPObject. Extract a base type and move it to "shared/nm-utils/nm-obj.h"
so it can be reused.

The base type is trival, but it allows us to implement other objects
which are compatible with NMPObjects. Currently there is no API for generic
NMObjBaseInst type, so compatible in this case only means, that they
can be used in the same context (see example below).
The only thing that you can do with a NMObjBaseInst is check it's
NMObjBaseClass.

Incidentally, NMObjBaseInst is also made compatible to GTypeInstance.
It means, an NMObjBaseInst is not necessarily a valid GTypeInstance (like NMPObject
is not), but it could be implemented as such.

For example, you could do:

    if (NMP_CLASS_IS_VALID ((NMPClass *) obj->klass)) {
        /* is an NMPObject */
    } else if (G_TYPE_CHECK_INSTANCE_TYPE (obj, NM_TYPE_SOMETHING)) {
        /* it a NMSometing GType */
    } else {
        /* something else? */
    }

The reason why NMPObject is not implemented as proper GTypeInstance is
because it would require us to register a GType (like
g_type_register_fundamental). However, then the NMPClass struct can
no longer be const and immutable memory. But we could.

NMObjBaseInst may or may not be a GTypeInstance. In a sense, it's
a base type of GTypeInstance and all our objects should be based
on it (optionally, they we may make them valid GTypes too).
2017-07-05 14:22:10 +02:00
..
devices core: use NM_HASH_COMBINE() function 2017-07-05 14:22:10 +02:00
dhcp dhcp/systemd: add support for DHCPv4 domain search list (option 119) 2017-06-14 15:49:39 +02:00
dns dns: don't clone DNS configs list for nm_dns_plugin_update() 2017-06-19 15:12:49 +02:00
dnsmasq dnsmasq: fix generating shared IPv4 address range 2017-05-29 11:10:36 +02:00
ndisc ndisc: log the device context 2017-03-24 12:42:09 +01:00
platform all: add base object type in "nm-obj.h" 2017-07-05 14:22:10 +02:00
ppp ppp: fix cancelling timeout when pppd process exits 2017-06-09 16:15:07 +02:00
settings Move CONF_DHCP definition to nm-hostname-manager.c 2017-06-27 09:05:42 +02:00
supplicant core,cli: replace wrong pattern for clearing GError 2017-06-27 09:42:28 +02:00
systemd systemd: merge branch systemd into master 2017-06-14 13:10:05 +02:00
tests all: replace uses of inet_aton() and friends 2017-06-02 14:07:10 +02:00
vpn proxy: introduce call-id for clearing pacmanager configuration 2017-04-23 18:12:09 +02:00
main-utils.c config: add first_start paramter to NMConfig to detect restart 2017-04-20 14:19:56 +02:00
main-utils.h all: cleanup includes in header files 2016-08-17 19:51:17 +02:00
main.c core: don't enable setrlimit(RLIMIT_CORE) when running with address sanitizer 2017-05-24 13:56:12 +02:00
NetworkManagerUtils.c all: fix typo 'entires' -> 'entries' 2017-05-05 19:14:19 +02:00
NetworkManagerUtils.h manager: simplify searching assumed connection 2017-03-16 18:27:33 +01:00
nm-act-request.c active-connection: emit a StateChanged signal on state changes 2017-03-17 10:21:19 +01:00
nm-act-request.h core: add activation-type property to active-connection 2017-03-16 18:27:33 +01:00
nm-active-connection.c device: fix taking over device after modifying external connection 2017-06-19 14:57:48 +02:00
nm-active-connection.h active-connection: emit a StateChanged signal on state changes 2017-03-17 10:21:19 +01:00
nm-audit-manager.c logging: log device and connection along with the message 2017-03-24 12:42:09 +01:00
nm-audit-manager.h audit: add @args to device logging functions 2017-03-06 10:29:37 +01:00
nm-auth-manager.c logging: log device and connection along with the message 2017-03-24 12:42:09 +01:00
nm-auth-manager.h core: refactor private data in "src" 2016-10-04 09:50:56 +02:00
nm-auth-subject.c all: use "unsigned long" instead of "long unsigned" 2017-03-14 11:23:46 +01:00
nm-auth-subject.h auth: embed private data NMAuthSubjectPrivate in NMAuthSubject struct 2016-05-12 10:24:36 +02:00
nm-auth-utils.c auth-utils: fix possibly uninitialized variables 2017-04-07 11:52:16 -05:00
nm-auth-utils.h all: move NM_AUTH_PERMISSION_* defines to "nm-common-macros.h" header 2016-06-01 19:06:35 +02:00
nm-bus-manager.c core: introduce default logging macros 2016-10-14 15:57:43 +02:00
nm-bus-manager.h core: refactor private data in "src" 2016-10-04 09:50:56 +02:00
nm-checkpoint-manager.c build: don't add subdirectories to include search path but require qualified include 2016-11-21 14:26:37 +01:00
nm-checkpoint-manager.h core: refactor private data in "src" 2016-10-04 09:50:56 +02:00
nm-checkpoint.c checkpoint: disconnect device before reactivation during rollback 2017-07-05 11:01:56 +02:00
nm-checkpoint.h checkpoint: introduce new flags to better restore previous state 2016-10-24 09:57:18 +02:00
nm-config-data.c device: handle default for unset ignore-carrier option depending on device 2017-06-22 13:26:53 +02:00
nm-config-data.h core: allow setting SR-IOV num_vfs 2017-04-18 23:10:36 +02:00
nm-config.c config: allow persisting the device nm-owned state 2017-06-07 10:27:02 +02:00
nm-config.h config: allow persisting the device nm-owned state 2017-06-07 10:27:02 +02:00
nm-connectivity.c connectivity: fix scheduling periodic connectivity checks 2017-06-02 19:15:30 +02:00
nm-connectivity.h device: add default route penalty only if concheck is enabled 2017-05-04 11:07:40 +02:00
nm-core-utils.c libnm: add enum for setting priorities 2017-06-07 09:07:17 +02:00
nm-core-utils.h all: fix typos in documentation, translated strings and comments 2017-05-28 17:33:37 +02:00
nm-dcb.c build: don't add subdirectories to include search path but require qualified include 2016-11-21 14:26:37 +01:00
nm-dcb.h all: cleanup includes in header files 2016-08-17 19:51:17 +02:00
nm-default-route-manager.c all: fix typos in documentation, translated strings and comments 2017-05-28 17:33:37 +02:00
nm-default-route-manager.h device: keep NMNetns instance per device 2017-04-18 15:49:14 +02:00
nm-dhcp4-config.c exported-object: use NM_EXPORT_PATH_NUMBERED() macro 2017-01-03 15:40:17 +01:00
nm-dhcp4-config.h core: refactor private data in "src" 2016-10-04 09:50:56 +02:00
nm-dhcp6-config.c exported-object: use NM_EXPORT_PATH_NUMBERED() macro 2017-01-03 15:40:17 +01:00
nm-dhcp6-config.h core: refactor private data in "src" 2016-10-04 09:50:56 +02:00
nm-dispatcher.c core: make connectivity checking per-device 2017-03-28 15:26:47 +02:00
nm-dispatcher.h core/dispatcher: pass act-request to device dispatcher calls 2017-03-16 18:27:33 +01:00
nm-exported-object.c all: use "unsigned long" instead of "long unsigned" 2017-03-14 11:23:46 +01:00
nm-exported-object.h exported-object: add "path" GObject property to have notify signal 2017-01-25 13:12:08 +01:00
nm-firewall-manager.c firewall: use CList to track pending_calls 2017-05-11 18:26:10 +02:00
nm-firewall-manager.h firewall: merge "started" signal and "available" property 2017-04-21 09:09:01 +02:00
nm-hostname-manager.c core,cli: replace wrong pattern for clearing GError 2017-06-27 09:42:28 +02:00
nm-hostname-manager.h hostname: cache hostname-manager's hostname property 2017-05-12 17:29:33 +02:00
nm-iface-helper.c device: keep NMNetns instance per device 2017-04-18 15:49:14 +02:00
nm-ip4-config.c core: sort addresses in captured IPv4 configuration 2017-06-13 23:27:33 +02:00
nm-ip4-config.h device: keep NMNetns instance per device 2017-04-18 15:49:14 +02:00
nm-ip6-config.c device: keep NMNetns instance per device 2017-04-18 15:49:14 +02:00
nm-ip6-config.h device: keep NMNetns instance per device 2017-04-18 15:49:14 +02:00
nm-logging.c logging: log device and connection along with the message 2017-03-24 12:42:09 +01:00
nm-logging.h logging: add LOG3 macros 2017-06-08 21:50:23 +02:00
nm-manager.c manager: when a connection is upped on a device, do an early update of its internal state 2017-06-21 16:12:09 +02:00
nm-manager.h hostname: cache hostname-manager's hostname property 2017-05-12 17:29:33 +02:00
nm-multi-index.c all: modify line separator comments to be 80 chars wide 2016-10-03 12:01:15 +02:00
nm-multi-index.h all: cleanup includes in header files 2016-08-17 19:51:17 +02:00
nm-netns.c device: keep NMNetns instance per device 2017-04-18 15:49:14 +02:00
nm-netns.h core: add NMNetns to bundle platform and route managers 2017-04-18 15:49:14 +02:00
nm-pacrunner-manager.c proxy: use CList to track configs in NMPacrunnnerManager 2017-05-11 18:42:49 +02:00
nm-pacrunner-manager.h proxy: introduce call-id for clearing pacmanager configuration 2017-04-23 18:12:09 +02:00
nm-policy.c policy: log policy's orig_hostname 2017-05-12 17:29:33 +02:00
nm-policy.h policy: add support to configurable hostname mode 2017-03-24 15:18:09 +01:00
nm-proxy-config.c proxy: reorder parts in nm-proxy-config.c and nm-pacrunner-manager.c 2016-10-04 11:58:32 +02:00
nm-proxy-config.h proxy: remove unnecessary APIs 2016-10-04 11:44:44 +02:00
nm-rfkill-manager.c udev: drop libgudev in favor of libudev 2017-03-22 12:41:06 +01:00
nm-rfkill-manager.h core: refactor private data in "src" 2016-10-04 09:50:56 +02:00
nm-route-manager.c core: enable "log-with-ptr" by default for platform and route-manager 2017-04-18 15:49:14 +02:00
nm-route-manager.h device: keep NMNetns instance per device 2017-04-18 15:49:14 +02:00
nm-session-monitor.c session: make systemd-logind and elogind conflicting build options 2017-02-24 13:06:13 +01:00
nm-session-monitor.h core: refactor private data in "src" 2016-10-04 09:50:56 +02:00
nm-sleep-monitor.c session: make systemd-logind and elogind conflicting build options 2017-02-24 13:06:13 +01:00
nm-sleep-monitor.h core: refactor private data in "src" 2016-10-04 09:50:56 +02:00
nm-test-utils-core.h all: use "unsigned long" instead of "long unsigned" 2017-03-14 11:23:46 +01:00
nm-types.h core: add NMNetns to bundle platform and route managers 2017-04-18 15:49:14 +02:00
org.freedesktop.NetworkManager.conf dbus: allow firewalld to communicate with NetworkManager 2017-04-21 13:38:21 +02:00