From 0033da8f61db7b202948c47e2eb7b44d16b7672b Mon Sep 17 00:00:00 2001 From: Thomas Haller Date: Tue, 9 Mar 2021 09:14:21 +0100 Subject: [PATCH] config: add "nm-base/nm-config-base.h" Note that we take defines from "src/core/nm-config.h" which are GPL-2.0-or-later licensed. libnm-base we want to include in other LGPL licensed sources, we it must also be LGPL. "relicense" the code that I take. I don't think it's a problem, because: - these are only plain defines. To which extend is that even copyrightable? - as far as I see, all the code was contributed by people who agreed to such relicensing. See RELICENSE.md file. --- Makefile.am | 1 + src/core/nm-config.h | 80 +------------------------------ src/libnm-base/nm-config-base.h | 84 +++++++++++++++++++++++++++++++++ 3 files changed, 87 insertions(+), 78 deletions(-) create mode 100644 src/libnm-base/nm-config-base.h diff --git a/Makefile.am b/Makefile.am index 3c3f2caf28..aa93aec65e 100644 --- a/Makefile.am +++ b/Makefile.am @@ -491,6 +491,7 @@ src_libnm_base_libnm_base_la_CPPFLAGS = \ src_libnm_base_libnm_base_la_SOURCES = \ src/libnm-base/nm-base.h \ + src/libnm-base/nm-config-base.h \ src/libnm-base/nm-ethtool-base.c \ src/libnm-base/nm-ethtool-base.h \ src/libnm-base/nm-ethtool-utils-base.h \ diff --git a/src/core/nm-config.h b/src/core/nm-config.h index 6f3f514c2b..7f1c0c4c57 100644 --- a/src/core/nm-config.h +++ b/src/core/nm-config.h @@ -9,6 +9,8 @@ #include "nm-config-data.h" +#include "libnm-base/nm-config-base.h" + #define NM_TYPE_CONFIG (nm_config_get_type()) #define NM_CONFIG(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), NM_TYPE_CONFIG, NMConfig)) #define NM_CONFIG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), NM_TYPE_CONFIG, NMConfigClass)) @@ -26,84 +28,6 @@ #define NM_CONFIG_DEFAULT_CONNECTIVITY_INTERVAL 300 #define NM_CONFIG_DEFAULT_CONNECTIVITY_RESPONSE "NetworkManager is online" /* NOT LOCALIZED */ -#define NM_CONFIG_KEYFILE_LIST_SEPARATOR ',' - -#define NM_CONFIG_KEYFILE_GROUPPREFIX_INTERN ".intern." -#define NM_CONFIG_KEYFILE_GROUPPREFIX_CONNECTION "connection" -#define NM_CONFIG_KEYFILE_GROUPPREFIX_DEVICE "device" -#define NM_CONFIG_KEYFILE_GROUPPREFIX_GLOBAL_DNS_DOMAIN "global-dns-domain-" -#define NM_CONFIG_KEYFILE_GROUPPREFIX_TEST_APPEND_STRINGLIST ".test-append-stringlist" - -#define NM_CONFIG_KEYFILE_GROUP_MAIN "main" -#define NM_CONFIG_KEYFILE_GROUP_LOGGING "logging" -#define NM_CONFIG_KEYFILE_GROUP_CONNECTIVITY "connectivity" -#define NM_CONFIG_KEYFILE_GROUP_KEYFILE "keyfile" -#define NM_CONFIG_KEYFILE_GROUP_IFUPDOWN "ifupdown" -#define NM_CONFIG_KEYFILE_GROUP_GLOBAL_DNS "global-dns" -#define NM_CONFIG_KEYFILE_GROUP_CONFIG ".config" - -#define NM_CONFIG_KEYFILE_KEY_MAIN_ASSUME_IPV6LL_ONLY "assume-ipv6ll-only" -#define NM_CONFIG_KEYFILE_KEY_MAIN_AUTH_POLKIT "auth-polkit" -#define NM_CONFIG_KEYFILE_KEY_MAIN_AUTOCONNECT_RETRIES_DEFAULT "autoconnect-retries-default" -#define NM_CONFIG_KEYFILE_KEY_MAIN_CONFIGURE_AND_QUIT "configure-and-quit" -#define NM_CONFIG_KEYFILE_KEY_MAIN_DEBUG "debug" -#define NM_CONFIG_KEYFILE_KEY_MAIN_DHCP "dhcp" -#define NM_CONFIG_KEYFILE_KEY_MAIN_DNS "dns" -#define NM_CONFIG_KEYFILE_KEY_MAIN_HOSTNAME_MODE "hostname-mode" -#define NM_CONFIG_KEYFILE_KEY_MAIN_IGNORE_CARRIER "ignore-carrier" -#define NM_CONFIG_KEYFILE_KEY_MAIN_MONITOR_CONNECTION_FILES "monitor-connection-files" -#define NM_CONFIG_KEYFILE_KEY_MAIN_NO_AUTO_DEFAULT "no-auto-default" -#define NM_CONFIG_KEYFILE_KEY_MAIN_PLUGINS "plugins" -#define NM_CONFIG_KEYFILE_KEY_MAIN_RC_MANAGER "rc-manager" -#define NM_CONFIG_KEYFILE_KEY_MAIN_SLAVES_ORDER "slaves-order" -#define NM_CONFIG_KEYFILE_KEY_MAIN_SYSTEMD_RESOLVED "systemd-resolved" - -#define NM_CONFIG_KEYFILE_KEY_LOGGING_AUDIT "audit" -#define NM_CONFIG_KEYFILE_KEY_LOGGING_BACKEND "backend" -#define NM_CONFIG_KEYFILE_KEY_LOGGING_DOMAINS "domains" -#define NM_CONFIG_KEYFILE_KEY_LOGGING_LEVEL "level" - -#define NM_CONFIG_KEYFILE_KEY_CONNECTIVITY_ENABLED "enabled" -#define NM_CONFIG_KEYFILE_KEY_CONNECTIVITY_INTERVAL "interval" -#define NM_CONFIG_KEYFILE_KEY_CONNECTIVITY_RESPONSE "response" -#define NM_CONFIG_KEYFILE_KEY_CONNECTIVITY_URI "uri" - -#define NM_CONFIG_KEYFILE_KEY_KEYFILE_PATH "path" -#define NM_CONFIG_KEYFILE_KEY_KEYFILE_UNMANAGED_DEVICES "unmanaged-devices" -#define NM_CONFIG_KEYFILE_KEY_KEYFILE_HOSTNAME "hostname" - -#define NM_CONFIG_KEYFILE_KEY_IFUPDOWN_MANAGED "managed" - -#define NM_CONFIG_KEYFILE_KEY_GLOBAL_DNS_SEARCHES "searches" -#define NM_CONFIG_KEYFILE_KEY_GLOBAL_DNS_OPTIONS "options" - -#define NM_CONFIG_KEYFILE_KEY_GLOBAL_DNS_DOMAIN_SERVERS "servers" -#define NM_CONFIG_KEYFILE_KEY_GLOBAL_DNS_DOMAIN_OPTIONS "options" - -#define NM_CONFIG_KEYFILE_KEY_DEVICE_MANAGED "managed" -#define NM_CONFIG_KEYFILE_KEY_DEVICE_IGNORE_CARRIER "ignore-carrier" -#define NM_CONFIG_KEYFILE_KEY_DEVICE_SRIOV_NUM_VFS "sriov-num-vfs" -#define NM_CONFIG_KEYFILE_KEY_DEVICE_WIFI_BACKEND "wifi.backend" -#define NM_CONFIG_KEYFILE_KEY_DEVICE_WIFI_SCAN_RAND_MAC_ADDRESS "wifi.scan-rand-mac-address" -#define NM_CONFIG_KEYFILE_KEY_DEVICE_WIFI_SCAN_GENERATE_MAC_ADDRESS_MASK \ - "wifi.scan-generate-mac-address-mask" -#define NM_CONFIG_KEYFILE_KEY_DEVICE_CARRIER_WAIT_TIMEOUT "carrier-wait-timeout" -#define NM_CONFIG_KEYFILE_KEY_DEVICE_WIFI_IWD_AUTOCONNECT "wifi.iwd.autoconnect" - -#define NM_CONFIG_KEYFILE_KEY_MATCH_DEVICE "match-device" -#define NM_CONFIG_KEYFILE_KEY_STOP_MATCH "stop-match" - -#define NM_CONFIG_KEYFILE_KEY_ATOMIC_SECTION_WAS ".was" /* check-config-options skip */ -#define NM_CONFIG_KEYFILE_KEY_CONFIG_ENABLE "enable" /* check-config-options skip */ - -#define NM_CONFIG_KEYFILE_KEYPREFIX_WAS ".was." -#define NM_CONFIG_KEYFILE_KEYPREFIX_SET ".set." - -#define NM_CONFIG_KEYFILE_GROUP_INTERN_GLOBAL_DNS \ - NM_CONFIG_KEYFILE_GROUPPREFIX_INTERN NM_CONFIG_KEYFILE_GROUP_GLOBAL_DNS -#define NM_CONFIG_KEYFILE_GROUPPREFIX_INTERN_GLOBAL_DNS_DOMAIN \ - NM_CONFIG_KEYFILE_GROUPPREFIX_INTERN NM_CONFIG_KEYFILE_GROUPPREFIX_GLOBAL_DNS_DOMAIN - typedef struct NMConfigCmdLineOptions NMConfigCmdLineOptions; typedef enum { diff --git a/src/libnm-base/nm-config-base.h b/src/libnm-base/nm-config-base.h new file mode 100644 index 0000000000..50b041be40 --- /dev/null +++ b/src/libnm-base/nm-config-base.h @@ -0,0 +1,84 @@ +/* SPDX-License-Identifier: LGPL-2.1-or-later */ + +#ifndef __NM_CONFIG_BASE_H__ +#define __NM_CONFIG_BASE_H__ + +#define NM_CONFIG_KEYFILE_LIST_SEPARATOR ',' + +#define NM_CONFIG_KEYFILE_GROUPPREFIX_INTERN ".intern." +#define NM_CONFIG_KEYFILE_GROUPPREFIX_CONNECTION "connection" +#define NM_CONFIG_KEYFILE_GROUPPREFIX_DEVICE "device" +#define NM_CONFIG_KEYFILE_GROUPPREFIX_GLOBAL_DNS_DOMAIN "global-dns-domain-" +#define NM_CONFIG_KEYFILE_GROUPPREFIX_TEST_APPEND_STRINGLIST ".test-append-stringlist" + +#define NM_CONFIG_KEYFILE_GROUP_MAIN "main" +#define NM_CONFIG_KEYFILE_GROUP_LOGGING "logging" +#define NM_CONFIG_KEYFILE_GROUP_CONNECTIVITY "connectivity" +#define NM_CONFIG_KEYFILE_GROUP_KEYFILE "keyfile" +#define NM_CONFIG_KEYFILE_GROUP_IFUPDOWN "ifupdown" +#define NM_CONFIG_KEYFILE_GROUP_GLOBAL_DNS "global-dns" +#define NM_CONFIG_KEYFILE_GROUP_CONFIG ".config" + +#define NM_CONFIG_KEYFILE_KEY_MAIN_ASSUME_IPV6LL_ONLY "assume-ipv6ll-only" +#define NM_CONFIG_KEYFILE_KEY_MAIN_AUTH_POLKIT "auth-polkit" +#define NM_CONFIG_KEYFILE_KEY_MAIN_AUTOCONNECT_RETRIES_DEFAULT "autoconnect-retries-default" +#define NM_CONFIG_KEYFILE_KEY_MAIN_CONFIGURE_AND_QUIT "configure-and-quit" +#define NM_CONFIG_KEYFILE_KEY_MAIN_DEBUG "debug" +#define NM_CONFIG_KEYFILE_KEY_MAIN_DHCP "dhcp" +#define NM_CONFIG_KEYFILE_KEY_MAIN_DNS "dns" +#define NM_CONFIG_KEYFILE_KEY_MAIN_HOSTNAME_MODE "hostname-mode" +#define NM_CONFIG_KEYFILE_KEY_MAIN_IGNORE_CARRIER "ignore-carrier" +#define NM_CONFIG_KEYFILE_KEY_MAIN_MONITOR_CONNECTION_FILES "monitor-connection-files" +#define NM_CONFIG_KEYFILE_KEY_MAIN_NO_AUTO_DEFAULT "no-auto-default" +#define NM_CONFIG_KEYFILE_KEY_MAIN_PLUGINS "plugins" +#define NM_CONFIG_KEYFILE_KEY_MAIN_RC_MANAGER "rc-manager" +#define NM_CONFIG_KEYFILE_KEY_MAIN_SLAVES_ORDER "slaves-order" +#define NM_CONFIG_KEYFILE_KEY_MAIN_SYSTEMD_RESOLVED "systemd-resolved" + +#define NM_CONFIG_KEYFILE_KEY_LOGGING_AUDIT "audit" +#define NM_CONFIG_KEYFILE_KEY_LOGGING_BACKEND "backend" +#define NM_CONFIG_KEYFILE_KEY_LOGGING_DOMAINS "domains" +#define NM_CONFIG_KEYFILE_KEY_LOGGING_LEVEL "level" + +#define NM_CONFIG_KEYFILE_KEY_CONNECTIVITY_ENABLED "enabled" +#define NM_CONFIG_KEYFILE_KEY_CONNECTIVITY_INTERVAL "interval" +#define NM_CONFIG_KEYFILE_KEY_CONNECTIVITY_RESPONSE "response" +#define NM_CONFIG_KEYFILE_KEY_CONNECTIVITY_URI "uri" + +#define NM_CONFIG_KEYFILE_KEY_KEYFILE_PATH "path" +#define NM_CONFIG_KEYFILE_KEY_KEYFILE_UNMANAGED_DEVICES "unmanaged-devices" +#define NM_CONFIG_KEYFILE_KEY_KEYFILE_HOSTNAME "hostname" + +#define NM_CONFIG_KEYFILE_KEY_IFUPDOWN_MANAGED "managed" + +#define NM_CONFIG_KEYFILE_KEY_GLOBAL_DNS_SEARCHES "searches" +#define NM_CONFIG_KEYFILE_KEY_GLOBAL_DNS_OPTIONS "options" + +#define NM_CONFIG_KEYFILE_KEY_GLOBAL_DNS_DOMAIN_SERVERS "servers" +#define NM_CONFIG_KEYFILE_KEY_GLOBAL_DNS_DOMAIN_OPTIONS "options" + +#define NM_CONFIG_KEYFILE_KEY_DEVICE_MANAGED "managed" +#define NM_CONFIG_KEYFILE_KEY_DEVICE_IGNORE_CARRIER "ignore-carrier" +#define NM_CONFIG_KEYFILE_KEY_DEVICE_SRIOV_NUM_VFS "sriov-num-vfs" +#define NM_CONFIG_KEYFILE_KEY_DEVICE_WIFI_BACKEND "wifi.backend" +#define NM_CONFIG_KEYFILE_KEY_DEVICE_WIFI_SCAN_RAND_MAC_ADDRESS "wifi.scan-rand-mac-address" +#define NM_CONFIG_KEYFILE_KEY_DEVICE_WIFI_SCAN_GENERATE_MAC_ADDRESS_MASK \ + "wifi.scan-generate-mac-address-mask" +#define NM_CONFIG_KEYFILE_KEY_DEVICE_CARRIER_WAIT_TIMEOUT "carrier-wait-timeout" +#define NM_CONFIG_KEYFILE_KEY_DEVICE_WIFI_IWD_AUTOCONNECT "wifi.iwd.autoconnect" + +#define NM_CONFIG_KEYFILE_KEY_MATCH_DEVICE "match-device" +#define NM_CONFIG_KEYFILE_KEY_STOP_MATCH "stop-match" + +#define NM_CONFIG_KEYFILE_KEY_ATOMIC_SECTION_WAS ".was" /* check-config-options skip */ +#define NM_CONFIG_KEYFILE_KEY_CONFIG_ENABLE "enable" /* check-config-options skip */ + +#define NM_CONFIG_KEYFILE_KEYPREFIX_WAS ".was." +#define NM_CONFIG_KEYFILE_KEYPREFIX_SET ".set." + +#define NM_CONFIG_KEYFILE_GROUP_INTERN_GLOBAL_DNS \ + NM_CONFIG_KEYFILE_GROUPPREFIX_INTERN NM_CONFIG_KEYFILE_GROUP_GLOBAL_DNS +#define NM_CONFIG_KEYFILE_GROUPPREFIX_INTERN_GLOBAL_DNS_DOMAIN \ + NM_CONFIG_KEYFILE_GROUPPREFIX_INTERN NM_CONFIG_KEYFILE_GROUPPREFIX_GLOBAL_DNS_DOMAIN + +#endif /* __NM_CONFIG_BASE_H__ */