From f3e5df3162b9e9dec0e91e59ad2567bcc78ef03d Mon Sep 17 00:00:00 2001 From: Michael Brown Date: Thu, 5 Dec 2013 15:11:15 +0000 Subject: [PATCH] [settings] Merge SETTING_IPv4 and SETTING_IPv6 Allow for equivalent IPv4 and IPv6 settings (which requires equivalent settings to be adjacent within the settings list). Signed-off-by: Michael Brown --- src/core/settings.c | 2 +- src/include/ipxe/settings.h | 36 +++++++++++++++++------------------- src/net/ipv4.c | 6 +++--- src/net/udp/dns.c | 4 ++-- 4 files changed, 23 insertions(+), 25 deletions(-) diff --git a/src/core/settings.c b/src/core/settings.c index 1f99bca8..1f742548 100644 --- a/src/core/settings.c +++ b/src/core/settings.c @@ -2346,7 +2346,7 @@ const struct setting hostname_setting __setting ( SETTING_HOST, hostname ) = { }; /** Domain name setting */ -const struct setting domain_setting __setting ( SETTING_IPv4_EXTRA, domain ) = { +const struct setting domain_setting __setting ( SETTING_IP_EXTRA, domain ) = { .name = "domain", .description = "DNS domain", .tag = DHCP_DOMAIN_NAME, diff --git a/src/include/ipxe/settings.h b/src/include/ipxe/settings.h index 96364765..642b1d4c 100644 --- a/src/include/ipxe/settings.h +++ b/src/include/ipxe/settings.h @@ -62,20 +62,18 @@ struct setting { #define SETTING_NETDEV 01 /**< Network device settings */ #define SETTING_NETDEV_EXTRA 02 /**< Network device additional settings */ -#define SETTING_IPv4 03 /**< IPv4 settings */ -#define SETTING_IPv4_EXTRA 04 /**< IPv4 additional settings */ -#define SETTING_IPv6 05 /**< IPv6 settings */ -#define SETTING_IPv6_EXTRA 06 /**< IPv6 additional settings */ -#define SETTING_BOOT 07 /**< Generic boot settings */ -#define SETTING_BOOT_EXTRA 08 /**< Generic boot additional settings */ -#define SETTING_SANBOOT 09 /**< SAN boot settings */ -#define SETTING_SANBOOT_EXTRA 10 /**< SAN boot additional settings */ -#define SETTING_HOST 11 /**< Host identity settings */ -#define SETTING_HOST_EXTRA 12 /**< Host identity additional settings */ -#define SETTING_AUTH 13 /**< Authentication settings */ -#define SETTING_AUTH_EXTRA 14 /**< Authentication additional settings */ -#define SETTING_CRYPTO 15 /**< Cryptography settings */ -#define SETTING_MISC 16 /**< Miscellaneous settings */ +#define SETTING_IP 03 /**< IPv4 settings */ +#define SETTING_IP_EXTRA 04 /**< IPv4 additional settings */ +#define SETTING_BOOT 05 /**< Generic boot settings */ +#define SETTING_BOOT_EXTRA 06 /**< Generic boot additional settings */ +#define SETTING_SANBOOT 07 /**< SAN boot settings */ +#define SETTING_SANBOOT_EXTRA 08 /**< SAN boot additional settings */ +#define SETTING_HOST 09 /**< Host identity settings */ +#define SETTING_HOST_EXTRA 10 /**< Host identity additional settings */ +#define SETTING_AUTH 11 /**< Authentication settings */ +#define SETTING_AUTH_EXTRA 12 /**< Authentication additional settings */ +#define SETTING_CRYPTO 13 /**< Cryptography settings */ +#define SETTING_MISC 14 /**< Miscellaneous settings */ /** @} */ @@ -421,17 +419,17 @@ extern const struct setting_type setting_type_uuid __setting_type; extern const struct setting_type setting_type_busdevfn __setting_type; extern const struct setting -ip_setting __setting ( SETTING_IPv4, ip ); +ip_setting __setting ( SETTING_IP, ip ); extern const struct setting -netmask_setting __setting ( SETTING_IPv4, netmask ); +netmask_setting __setting ( SETTING_IP, netmask ); extern const struct setting -gateway_setting __setting ( SETTING_IPv4, gateway ); +gateway_setting __setting ( SETTING_IP, gateway ); extern const struct setting -dns_setting __setting ( SETTING_IPv4_EXTRA, dns ); +dns_setting __setting ( SETTING_IP_EXTRA, dns ); extern const struct setting hostname_setting __setting ( SETTING_HOST, hostname ); extern const struct setting -domain_setting __setting ( SETTING_IPv4_EXTRA, domain ); +domain_setting __setting ( SETTING_IP_EXTRA, domain ); extern const struct setting filename_setting __setting ( SETTING_BOOT, filename ); extern const struct setting diff --git a/src/net/ipv4.c b/src/net/ipv4.c index a9226d54..b57b2f83 100644 --- a/src/net/ipv4.c +++ b/src/net/ipv4.c @@ -636,7 +636,7 @@ int format_ipv4_setting ( const struct setting_type *type __unused, } /** IPv4 address setting */ -const struct setting ip_setting __setting ( SETTING_IPv4, ip ) = { +const struct setting ip_setting __setting ( SETTING_IP, ip ) = { .name = "ip", .description = "IP address", .tag = DHCP_EB_YIADDR, @@ -644,7 +644,7 @@ const struct setting ip_setting __setting ( SETTING_IPv4, ip ) = { }; /** IPv4 subnet mask setting */ -const struct setting netmask_setting __setting ( SETTING_IPv4, netmask ) = { +const struct setting netmask_setting __setting ( SETTING_IP, netmask ) = { .name = "netmask", .description = "Subnet mask", .tag = DHCP_SUBNET_MASK, @@ -652,7 +652,7 @@ const struct setting netmask_setting __setting ( SETTING_IPv4, netmask ) = { }; /** Default gateway setting */ -const struct setting gateway_setting __setting ( SETTING_IPv4, gateway ) = { +const struct setting gateway_setting __setting ( SETTING_IP, gateway ) = { .name = "gateway", .description = "Default gateway", .tag = DHCP_ROUTERS, diff --git a/src/net/udp/dns.c b/src/net/udp/dns.c index 838c33b6..a93eb916 100644 --- a/src/net/udp/dns.c +++ b/src/net/udp/dns.c @@ -652,7 +652,7 @@ struct resolver dns_resolver __resolver ( RESOLV_NORMAL ) = { */ /** IPv4 DNS server setting */ -const struct setting dns_setting __setting ( SETTING_IPv4_EXTRA, dns ) = { +const struct setting dns_setting __setting ( SETTING_IP_EXTRA, dns ) = { .name = "dns", .description = "DNS server", .tag = DHCP_DNS_SERVERS, @@ -660,7 +660,7 @@ const struct setting dns_setting __setting ( SETTING_IPv4_EXTRA, dns ) = { }; /** IPv6 DNS server setting */ -const struct setting dns6_setting __setting ( SETTING_IPv6_EXTRA, dns6 ) = { +const struct setting dns6_setting __setting ( SETTING_IP_EXTRA, dns6 ) = { .name = "dns6", .description = "DNS server", .tag = DHCPV6_DNS_SERVERS,