Skip to content

Commit

Permalink
[settings] Merge SETTING_IPv4 and SETTING_IPv6
Browse files Browse the repository at this point in the history
Allow for equivalent IPv4 and IPv6 settings (which requires equivalent
settings to be adjacent within the settings list).

Signed-off-by: Michael Brown <mcb30@ipxe.org>
  • Loading branch information
mcb30 committed Dec 5, 2013
1 parent eaa8615 commit f3e5df3
Show file tree
Hide file tree
Showing 4 changed files with 23 additions and 25 deletions.
2 changes: 1 addition & 1 deletion src/core/settings.c
Expand Up @@ -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,
Expand Down
36 changes: 17 additions & 19 deletions src/include/ipxe/settings.h
Expand Up @@ -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 */

/** @} */

Expand Down Expand Up @@ -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
Expand Down
6 changes: 3 additions & 3 deletions src/net/ipv4.c
Expand Up @@ -636,23 +636,23 @@ 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,
.type = &setting_type_ipv4,
};

/** 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,
.type = &setting_type_ipv4,
};

/** 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,
Expand Down
4 changes: 2 additions & 2 deletions src/net/udp/dns.c
Expand Up @@ -652,15 +652,15 @@ 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,
.type = &setting_type_ipv4,
};

/** 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,
Expand Down

0 comments on commit f3e5df3

Please sign in to comment.