From: Yu Watanabe Date: Tue, 14 Dec 2021 02:26:44 +0000 (+0900) Subject: udev: move NamePolicy to netif-naming-scheme.[ch] X-Git-Tag: v250-rc3~39^2~2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=ff516b4341eb869b450ab0c0e0d7fd0bd555e99f;p=thirdparty%2Fsystemd.git udev: move NamePolicy to netif-naming-scheme.[ch] --- diff --git a/src/shared/netif-naming-scheme.c b/src/shared/netif-naming-scheme.c index 8d03e0e5e75..245466c4cba 100644 --- a/src/shared/netif-naming-scheme.c +++ b/src/shared/netif-naming-scheme.c @@ -4,6 +4,7 @@ #include "netif-naming-scheme.h" #include "proc-cmdline.h" #include "string-util.h" +#include "string-table.h" #ifdef _DEFAULT_NET_NAMING_SCHEME_TEST /* The primary purpose of this check is to verify that _DEFAULT_NET_NAMING_SCHEME_TEST @@ -80,3 +81,25 @@ const NamingScheme* naming_scheme(void) { return cache; } + +static const char* const name_policy_table[_NAMEPOLICY_MAX] = { + [NAMEPOLICY_KERNEL] = "kernel", + [NAMEPOLICY_KEEP] = "keep", + [NAMEPOLICY_DATABASE] = "database", + [NAMEPOLICY_ONBOARD] = "onboard", + [NAMEPOLICY_SLOT] = "slot", + [NAMEPOLICY_PATH] = "path", + [NAMEPOLICY_MAC] = "mac", +}; + +DEFINE_STRING_TABLE_LOOKUP(name_policy, NamePolicy); + +static const char* const alternative_names_policy_table[_NAMEPOLICY_MAX] = { + [NAMEPOLICY_DATABASE] = "database", + [NAMEPOLICY_ONBOARD] = "onboard", + [NAMEPOLICY_SLOT] = "slot", + [NAMEPOLICY_PATH] = "path", + [NAMEPOLICY_MAC] = "mac", +}; + +DEFINE_STRING_TABLE_LOOKUP(alternative_names_policy, NamePolicy); diff --git a/src/shared/netif-naming-scheme.h b/src/shared/netif-naming-scheme.h index 11ce6e62ee3..16b304ce10b 100644 --- a/src/shared/netif-naming-scheme.h +++ b/src/shared/netif-naming-scheme.h @@ -64,3 +64,21 @@ const NamingScheme* naming_scheme(void); static inline bool naming_scheme_has(NamingSchemeFlags flags) { return FLAGS_SET(naming_scheme()->flags, flags); } + +typedef enum NamePolicy { + NAMEPOLICY_KERNEL, + NAMEPOLICY_KEEP, + NAMEPOLICY_DATABASE, + NAMEPOLICY_ONBOARD, + NAMEPOLICY_SLOT, + NAMEPOLICY_PATH, + NAMEPOLICY_MAC, + _NAMEPOLICY_MAX, + _NAMEPOLICY_INVALID = -EINVAL, +} NamePolicy; + +const char *name_policy_to_string(NamePolicy p) _const_; +NamePolicy name_policy_from_string(const char *p) _pure_; + +const char *alternative_names_policy_to_string(NamePolicy p) _const_; +NamePolicy alternative_names_policy_from_string(const char *p) _pure_; diff --git a/src/udev/net/link-config.c b/src/udev/net/link-config.c index 880de0baf59..05f0f2e0a61 100644 --- a/src/udev/net/link-config.c +++ b/src/udev/net/link-config.c @@ -22,7 +22,6 @@ #include "log-link.h" #include "memory-util.h" #include "net-condition.h" -#include "netif-naming-scheme.h" #include "netif-util.h" #include "netlink-util.h" #include "parse-util.h" @@ -1032,30 +1031,10 @@ DEFINE_CONFIG_PARSE_ENUM_WITH_DEFAULT( MAC_ADDRESS_POLICY_NONE, "Failed to parse MAC address policy"); -static const char* const name_policy_table[_NAMEPOLICY_MAX] = { - [NAMEPOLICY_KERNEL] = "kernel", - [NAMEPOLICY_KEEP] = "keep", - [NAMEPOLICY_DATABASE] = "database", - [NAMEPOLICY_ONBOARD] = "onboard", - [NAMEPOLICY_SLOT] = "slot", - [NAMEPOLICY_PATH] = "path", - [NAMEPOLICY_MAC] = "mac", -}; - -DEFINE_STRING_TABLE_LOOKUP(name_policy, NamePolicy); DEFINE_CONFIG_PARSE_ENUMV(config_parse_name_policy, name_policy, NamePolicy, _NAMEPOLICY_INVALID, "Failed to parse interface name policy"); -static const char* const alternative_names_policy_table[_NAMEPOLICY_MAX] = { - [NAMEPOLICY_DATABASE] = "database", - [NAMEPOLICY_ONBOARD] = "onboard", - [NAMEPOLICY_SLOT] = "slot", - [NAMEPOLICY_PATH] = "path", - [NAMEPOLICY_MAC] = "mac", -}; - -DEFINE_STRING_TABLE_LOOKUP(alternative_names_policy, NamePolicy); DEFINE_CONFIG_PARSE_ENUMV(config_parse_alternative_names_policy, alternative_names_policy, NamePolicy, _NAMEPOLICY_INVALID, "Failed to parse alternative names policy"); diff --git a/src/udev/net/link-config.h b/src/udev/net/link-config.h index 092a6fa8083..3b2cd696201 100644 --- a/src/udev/net/link-config.h +++ b/src/udev/net/link-config.h @@ -9,6 +9,7 @@ #include "ethtool-util.h" #include "list.h" #include "net-condition.h" +#include "netif-naming-scheme.h" typedef struct LinkConfigContext LinkConfigContext; typedef struct LinkConfig LinkConfig; @@ -21,18 +22,6 @@ typedef enum MACAddressPolicy { _MAC_ADDRESS_POLICY_INVALID = -EINVAL, } MACAddressPolicy; -typedef enum NamePolicy { - NAMEPOLICY_KERNEL, - NAMEPOLICY_KEEP, - NAMEPOLICY_DATABASE, - NAMEPOLICY_ONBOARD, - NAMEPOLICY_SLOT, - NAMEPOLICY_PATH, - NAMEPOLICY_MAC, - _NAMEPOLICY_MAX, - _NAMEPOLICY_INVALID = -EINVAL, -} NamePolicy; - typedef struct Link { int ifindex; const char *ifname; @@ -105,12 +94,6 @@ DEFINE_TRIVIAL_CLEANUP_FUNC(Link*, link_free); int link_get_config(LinkConfigContext *ctx, Link *link); int link_apply_config(LinkConfigContext *ctx, sd_netlink **rtnl, Link *link); -const char *name_policy_to_string(NamePolicy p) _const_; -NamePolicy name_policy_from_string(const char *p) _pure_; - -const char *alternative_names_policy_to_string(NamePolicy p) _const_; -NamePolicy alternative_names_policy_from_string(const char *p) _pure_; - const char *mac_address_policy_to_string(MACAddressPolicy p) _const_; MACAddressPolicy mac_address_policy_from_string(const char *p) _pure_;