NetworkManager/src/libnm-core-impl
Thomas Haller 4c3aac899e
all: unify and rename strv helper API
Naming is important, because the name of a thing should give you a good
idea what it does. Also, to find a thing, it needs a good name in the
first place. But naming is also hard.

Historically, some strv helper API was named as nm_utils_strv_*(),
and some API had a leading underscore (as it is internal API).

This was all inconsistent. Do some renaming and try to unify things.

We get rid of the leading underscore if this is just a regular
(internal) helper. But not for example from _nm_strv_find_first(),
because that is the implementation of nm_strv_find_first().

  - _nm_utils_strv_cleanup()                 -> nm_strv_cleanup()
  - _nm_utils_strv_cleanup_const()           -> nm_strv_cleanup_const()
  - _nm_utils_strv_cmp_n()                   -> _nm_strv_cmp_n()
  - _nm_utils_strv_dup()                     -> _nm_strv_dup()
  - _nm_utils_strv_dup_packed()              -> _nm_strv_dup_packed()
  - _nm_utils_strv_find_first()              -> _nm_strv_find_first()
  - _nm_utils_strv_sort()                    -> _nm_strv_sort()
  - _nm_utils_strv_to_ptrarray()             -> nm_strv_to_ptrarray()
  - _nm_utils_strv_to_slist()                -> nm_strv_to_gslist()
  - nm_utils_strv_cmp_n()                    -> nm_strv_cmp_n()
  - nm_utils_strv_dup()                      -> nm_strv_dup()
  - nm_utils_strv_dup_packed()               -> nm_strv_dup_packed()
  - nm_utils_strv_dup_shallow_maybe_a()      -> nm_strv_dup_shallow_maybe_a()
  - nm_utils_strv_equal()                    -> nm_strv_equal()
  - nm_utils_strv_find_binary_search()       -> nm_strv_find_binary_search()
  - nm_utils_strv_find_first()               -> nm_strv_find_first()
  - nm_utils_strv_make_deep_copied()         -> nm_strv_make_deep_copied()
  - nm_utils_strv_make_deep_copied_n()       -> nm_strv_make_deep_copied_n()
  - nm_utils_strv_make_deep_copied_nonnull() -> nm_strv_make_deep_copied_nonnull()
  - nm_utils_strv_sort()                     -> nm_strv_sort()

Note that no names are swapped and none of the new names existed
previously. That means, all the new names are really new, which
simplifies to find errors due to this larger refactoring. E.g. if
you backport a patch from after this change to an old branch, you'll
get a compiler error and notice that something is missing.
2021-07-29 10:26:50 +02:00
..
tests all: unify and rename strv helper API 2021-07-29 10:26:50 +02:00
meson.build build/meson: fix when crypto libraries are built 2021-07-18 16:42:39 +02:00
nm-connection-private.h clang-format: use "IndentPPDirectives:None" instead of "BeforeHash" 2021-07-09 08:49:06 +02:00
nm-connection.c all: unify and rename strv helper API 2021-07-29 10:26:50 +02:00
nm-crypto-gnutls.c clang-format: reformat code with clang 12 2021-05-04 13:56:26 +02:00
nm-crypto-impl.h build: move "libnm-core/" to "src/" and split it 2021-02-18 19:46:51 +01:00
nm-crypto-nss.c clang-format: reformat code with clang 12 2021-05-04 13:56:26 +02:00
nm-crypto.c libnm,glib-aux: move nm_crypto_md5_hash() to "libnm-glib-aux" 2021-05-04 15:51:46 +02:00
nm-crypto.h libnm,glib-aux: move nm_crypto_md5_hash() to "libnm-glib-aux" 2021-05-04 15:51:46 +02:00
nm-dbus-utils.c clang-format: reformat code with clang 12 2021-05-04 13:56:26 +02:00
nm-default-libnm-core.h build: move "shared/nm-{glib-aux,log-null,log-core}" to "src/libnm-{glib-aux,log-null,log-core}" 2021-02-24 12:48:20 +01:00
nm-errors.c build: move "libnm-core/" to "src/" and split it 2021-02-18 19:46:51 +01:00
nm-keyfile-utils.c libnm: use nm_ascii_is_regular() in _keyfile_key_encode() 2021-07-19 09:04:49 +02:00
nm-keyfile.c all: unify and rename strv helper API 2021-07-29 10:26:50 +02:00
nm-meta-setting-base-impl.c clang-format: use "IndentPPDirectives:None" instead of "BeforeHash" 2021-07-09 08:49:06 +02:00
nm-property-compare.c build: move "libnm-core/" to "src/" and split it 2021-02-18 19:46:51 +01:00
nm-property-compare.h clang-format: use "IndentPPDirectives:None" instead of "BeforeHash" 2021-07-09 08:49:06 +02:00
nm-setting-6lowpan.c libnm: add generic cleanup function to finalize NMSetting 2021-07-12 13:56:37 +02:00
nm-setting-8021x.c all: unify and rename strv helper API 2021-07-29 10:26:50 +02:00
nm-setting-adsl.c libnm: implement special setter for direct string property via g_ascii_strdown() 2021-07-23 17:02:03 +02:00
nm-setting-bluetooth.c libnm: implement special setter for direct string property for mac address 2021-07-23 17:02:03 +02:00
nm-setting-bond.c libnm: always set from_dbus_fcn() property hook 2021-07-16 13:31:59 +02:00
nm-setting-bridge-port.c libnm: refactor NMSettingClass.compare_property() to NMSettInfoPropertType.compare_fcn() 2021-07-16 13:31:58 +02:00
nm-setting-bridge.c libnm: implement special setter for direct string property for mac address 2021-07-23 17:02:03 +02:00
nm-setting-cdma.c libnm: extend NMSettInfoSetting with an offset to the private data 2021-07-12 13:34:40 +02:00
nm-setting-connection.c libnm: add from_dbus_fcn for direct properties 2021-07-23 17:02:04 +02:00
nm-setting-dcb.c libnm: always set from_dbus_fcn() property hook 2021-07-16 13:31:59 +02:00
nm-setting-dummy.c libnm: extend NMSettInfoSetting with an offset to the private data 2021-07-12 13:34:40 +02:00
nm-setting-ethtool.c libnm: extend NMSettInfoSetting with an offset to the private data 2021-07-12 13:34:40 +02:00
nm-setting-generic.c libnm: extend NMSettInfoSetting with an offset to the private data 2021-07-12 13:34:40 +02:00
nm-setting-gsm.c libnm: use _nm_setting_property_define_direct_boolean() 2021-07-12 13:56:31 +02:00
nm-setting-hostname.c libnm: extend NMSettInfoSetting with an offset to the private data 2021-07-12 13:34:40 +02:00
nm-setting-infiniband.c libnm: implement special setter for direct string property for mac address 2021-07-23 17:02:03 +02:00
nm-setting-ip-config.c all: unify and rename strv helper API 2021-07-29 10:26:50 +02:00
nm-setting-ip-tunnel.c libnm: always initialize default values for "direct" properties 2021-07-12 13:56:39 +02:00
nm-setting-ip4-config.c libnm: implement special setter for direct string property for ip address 2021-07-23 17:02:03 +02:00
nm-setting-ip6-config.c libnm: implement special setter for direct string property for ip address 2021-07-23 17:02:03 +02:00
nm-setting-macsec.c libnm: always initialize default values for "direct" properties 2021-07-12 13:56:39 +02:00
nm-setting-macvlan.c libnm: always initialize default values for "direct" properties 2021-07-12 13:56:39 +02:00
nm-setting-match.c libnm: extend NMSettInfoSetting with an offset to the private data 2021-07-12 13:34:40 +02:00
nm-setting-olpc-mesh.c libnm: implement special setter for direct string property for mac address 2021-07-23 17:02:03 +02:00
nm-setting-ovs-bridge.c libnm: use _nm_setting_property_define_direct_boolean() 2021-07-12 13:56:31 +02:00
nm-setting-ovs-dpdk.c libnm: extend NMSettInfoSetting with an offset to the private data 2021-07-12 13:34:40 +02:00
nm-setting-ovs-external-ids.c libnm: always set from_dbus_fcn() property hook 2021-07-16 13:31:59 +02:00
nm-setting-ovs-interface.c libnm: extend NMSettInfoSetting with an offset to the private data 2021-07-12 13:34:40 +02:00
nm-setting-ovs-patch.c libnm: extend NMSettInfoSetting with an offset to the private data 2021-07-12 13:34:40 +02:00
nm-setting-ovs-port.c libnm: use direct properties for NMSettingOvsPort 2021-07-23 17:02:02 +02:00
nm-setting-ppp.c libnm: implement NMSettingPpp with all direct properties 2021-07-12 13:56:41 +02:00
nm-setting-pppoe.c libnm: extend NMSettInfoSetting with an offset to the private data 2021-07-12 13:34:40 +02:00
nm-setting-private.h libnm: add from_dbus_fcn for direct NMSettingIPConfig.gateway property 2021-07-23 17:02:04 +02:00
nm-setting-proxy.c libnm: use _nm_setting_property_define_direct_boolean() 2021-07-12 13:56:31 +02:00
nm-setting-serial.c libnm: always set from_dbus_fcn() property hook 2021-07-16 13:31:59 +02:00
nm-setting-sriov.c libnm: pass full property meta data to from_dbus_fcn() hook 2021-07-16 13:31:59 +02:00
nm-setting-tc-config.c all: unify and rename strv helper API 2021-07-29 10:26:50 +02:00
nm-setting-team-port.c libnm: always set from_dbus_fcn() property hook 2021-07-16 13:31:59 +02:00
nm-setting-team.c libnm: always set from_dbus_fcn() property hook 2021-07-16 13:31:59 +02:00
nm-setting-tun.c libnm: use direct properties for NMSettingTun 2021-07-23 17:02:03 +02:00
nm-setting-user.c libnm: minor simplification of nm_setting_user_get_data() 2021-07-26 19:14:14 +02:00
nm-setting-veth.c libnm: extend NMSettInfoSetting with an offset to the private data 2021-07-12 13:34:40 +02:00
nm-setting-vlan.c libnm: always set from_dbus_fcn() property hook 2021-07-16 13:31:59 +02:00
nm-setting-vpn.c all: unify and rename strv helper API 2021-07-29 10:26:50 +02:00
nm-setting-vrf.c libnm: add direct_offset for uint32 properties 2021-07-12 13:56:38 +02:00
nm-setting-vxlan.c libnm: always initialize default values for "direct" properties 2021-07-12 13:56:39 +02:00
nm-setting-wifi-p2p.c libnm: extend NMSettInfoSetting with an offset to the private data 2021-07-12 13:34:40 +02:00
nm-setting-wimax.c libnm: implement special setter for direct string property for mac address 2021-07-23 17:02:03 +02:00
nm-setting-wired.c all: unify and rename strv helper API 2021-07-29 10:26:50 +02:00
nm-setting-wireguard.c libnm: pass full property meta data to from_dbus_fcn() hook 2021-07-16 13:31:59 +02:00
nm-setting-wireless-security.c all: unify and rename strv helper API 2021-07-29 10:26:50 +02:00
nm-setting-wireless.c all: unify and rename strv helper API 2021-07-29 10:26:50 +02:00
nm-setting-wpan.c libnm: implement special setter for direct string property for mac address 2021-07-23 17:02:03 +02:00
nm-setting.c libnm: add from_dbus_fcn for direct properties 2021-07-23 17:02:04 +02:00
nm-simple-connection.c libnm: optimize NM_CONNECTION_GET_PRIVATE() for NMSimpleConnection 2021-06-17 17:48:11 +02:00
nm-team-utils.c all: unify and rename strv helper API 2021-07-29 10:26:50 +02:00
nm-team-utils.h libnm: refactor NMSettingClass.compare_property() to NMSettInfoPropertType.compare_fcn() 2021-07-16 13:31:58 +02:00
nm-utils-private.h libnm: add _nm_property_variant_to_gvalue() helper 2021-07-23 17:02:03 +02:00
nm-utils.c all: unify and rename strv helper API 2021-07-29 10:26:50 +02:00
nm-vpn-editor-plugin.c build: move "libnm-core/" to "src/" and split it 2021-02-18 19:46:51 +01:00
nm-vpn-plugin-info.c all: unify and rename strv helper API 2021-07-29 10:26:50 +02:00
README.md build: move "libnm-core/" to "src/" and split it 2021-02-18 19:46:51 +01:00

libnm-core-impl

NetworkManager provides a client library libnm. NetworkManager core does not (dynamically) link against all of libnm. Instead, it statically links against a part of it. That part is the static helper library libnm-core-impl.

libnm-core-impl implements (and provides) the API from libnm-core-public, which is part of the public API of libnm. In this form, libnm-core-impl is part of the implementation of libnm. It also implements (and provides) an internal API libnm-core-intern which can only be used by those who link statically against libnm-core-impl.

Only NetworkManager core and libnm are allowed to statically link with libnm-core-impl. Consequently, only those are allowed to include libnm-core-intern.

This directory should not be added to the include search path of other components as they are only allowed to include libnm-core-public and libnm-core-intern.