1
0
Fork 0

Finally retire cmd_confdefs.h and CONFIG_BOOTP_MASK!

All of the choices for CONFIG_BOOTP_ are now documented in
the README file.  You must now individually select exactly
the set that you want using a series of
    #define CONFIG_BOOTP_<x>
statements in the board port config files now.

Signed-off-by: Jon Loeliger <jdl@freescale.com>
utp
Jon Loeliger 2007-07-09 22:08:34 -05:00
parent d3b8c1a743
commit 1fe80d79c5
7 changed files with 50 additions and 114 deletions

26
README
View File

@ -1125,10 +1125,21 @@ The following options need to be configured:
BOOTP requests: delay 0 ... 8 sec BOOTP requests: delay 0 ... 8 sec
- DHCP Advanced Options: - DHCP Advanced Options:
CONFIG_BOOTP_MASK You can fine tune the DHCP functionality by defining
CONFIG_BOOTP_* symbols:
You can fine tune the DHCP functionality by adding CONFIG_BOOTP_SUBNETMASK
these flags to the CONFIG_BOOTP_MASK define: CONFIG_BOOTP_GATEWAY
CONFIG_BOOTP_HOSTNAME
CONFIG_BOOTP_NISDOMAIN
CONFIG_BOOTP_BOOTPATH
CONFIG_BOOTP_BOOTFILESIZE
CONFIG_BOOTP_DNS
CONFIG_BOOTP_DNS2
CONFIG_BOOTP_SEND_HOSTNAME
CONFIG_BOOTP_NTPSERVER
CONFIG_BOOTP_TIMEOFFSET
CONFIG_BOOTP_VENDOREX
CONFIG_BOOTP_DNS2 - If a DHCP client requests the DNS CONFIG_BOOTP_DNS2 - If a DHCP client requests the DNS
serverip from a DHCP server, it is possible that more serverip from a DHCP server, it is possible that more
@ -1137,15 +1148,14 @@ The following options need to be configured:
serverip will be stored in the additional environment serverip will be stored in the additional environment
variable "dnsip2". The first DNS serverip is always variable "dnsip2". The first DNS serverip is always
stored in the variable "dnsip", when CONFIG_BOOTP_DNS stored in the variable "dnsip", when CONFIG_BOOTP_DNS
is added to the CONFIG_BOOTP_MASK. is defined.
CONFIG_BOOTP_SEND_HOSTNAME - Some DHCP servers are capable CONFIG_BOOTP_SEND_HOSTNAME - Some DHCP servers are capable
to do a dynamic update of a DNS server. To do this, they to do a dynamic update of a DNS server. To do this, they
need the hostname of the DHCP requester. need the hostname of the DHCP requester.
If CONFIG_BOOP_SEND_HOSTNAME is added to the If CONFIG_BOOP_SEND_HOSTNAME is defined, the content
CONFIG_BOOTP_MASK, the content of the "hostname" of the "hostname" environment variable is passed as
environment variable is passed as option 12 to option 12 to the DHCP server.
the DHCP server.
- CDP Options: - CDP Options:
CONFIG_CDP_DEVICE_ID CONFIG_CDP_DEVICE_ID

View File

@ -128,7 +128,7 @@ static void netboot_update_env (void)
ip_to_string (NetOurDNSIP, tmp); ip_to_string (NetOurDNSIP, tmp);
setenv ("dnsip", tmp); setenv ("dnsip", tmp);
} }
#if (CONFIG_BOOTP_MASK & CONFIG_BOOTP_DNS2) #if defined(CONFIG_BOOTP_DNS2)
if (NetOurDNS2IP) { if (NetOurDNS2IP) {
ip_to_string (NetOurDNS2IP, tmp); ip_to_string (NetOurDNS2IP, tmp);
setenv ("dnsip2", tmp); setenv ("dnsip2", tmp);
@ -138,14 +138,14 @@ static void netboot_update_env (void)
setenv ("domain", NetOurNISDomain); setenv ("domain", NetOurNISDomain);
#if defined(CONFIG_CMD_SNTP) \ #if defined(CONFIG_CMD_SNTP) \
&& (CONFIG_BOOTP_MASK & CONFIG_BOOTP_TIMEOFFSET) && defined(CONFIG_BOOTP_TIMEOFFSET)
if (NetTimeOffset) { if (NetTimeOffset) {
sprintf (tmp, "%d", NetTimeOffset); sprintf (tmp, "%d", NetTimeOffset);
setenv ("timeoffset", tmp); setenv ("timeoffset", tmp);
} }
#endif #endif
#if defined(CONFIG_CMD_SNTP) \ #if defined(CONFIG_CMD_SNTP) \
&& (CONFIG_BOOTP_MASK & CONFIG_BOOTP_NTPSERVER) && defined(CONFIG_BOOTP_NTPSERVER)
if (NetNtpServerIP) { if (NetNtpServerIP) {
ip_to_string (NetNtpServerIP, tmp); ip_to_string (NetNtpServerIP, tmp);
setenv ("ntpserverip", tmp); setenv ("ntpserverip", tmp);

View File

@ -1,33 +0,0 @@
/*
* (C) Copyright 2000-2002
* Wolfgang Denk, DENX Software Engineering, wd@denx.de.
*
* See file CREDITS for list of people who contributed to this
* project.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of
* the License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston,
* MA 02111-1307 USA
*/
#ifndef _CMD_CONFIG_H
#define _CMD_CONFIG_H
/*
* Temporary placeholder until all users directly
* include the proper include file, "config_bootp.h".
*/
#include "config_bootp.h"
#endif /* _CMD_CONFIG_H */

View File

@ -1,41 +0,0 @@
/*
* Copyright 2007 Freescale Semiconductor, Inc.
*
* This file is licensed under the terms of the GNU General Public
* License Version 2. This file is licensed "as is" without any
* warranty of any kind, whether express or implied.
*/
#ifndef _CONFIG_BOOTP_H
#define _CONFIG_BOOTP_H
/*
* Optional BOOTP fields
*/
#define CONFIG_BOOTP_SUBNETMASK 0x00000001
#define CONFIG_BOOTP_GATEWAY 0x00000002
#define CONFIG_BOOTP_HOSTNAME 0x00000004
#define CONFIG_BOOTP_NISDOMAIN 0x00000008
#define CONFIG_BOOTP_BOOTPATH 0x00000010
#define CONFIG_BOOTP_BOOTFILESIZE 0x00000020
#define CONFIG_BOOTP_DNS 0x00000040
#define CONFIG_BOOTP_DNS2 0x00000080
#define CONFIG_BOOTP_SEND_HOSTNAME 0x00000100
#define CONFIG_BOOTP_NTPSERVER 0x00000200
#define CONFIG_BOOTP_TIMEOFFSET 0x00000400
#define CONFIG_BOOTP_VENDOREX 0x80000000
#define CONFIG_BOOTP_ALL (~CONFIG_BOOTP_VENDOREX)
#define CONFIG_BOOTP_DEFAULT (CONFIG_BOOTP_SUBNETMASK | \
CONFIG_BOOTP_GATEWAY | \
CONFIG_BOOTP_HOSTNAME | \
CONFIG_BOOTP_BOOTPATH)
#ifndef CONFIG_BOOTP_MASK
#define CONFIG_BOOTP_MASK CONFIG_BOOTP_DEFAULT
#endif
#endif /* _CONFIG_BOOTP_H */

View File

@ -296,7 +296,7 @@ typedef struct icmphdr {
extern IPaddr_t NetOurGatewayIP; /* Our gateway IP addresse */ extern IPaddr_t NetOurGatewayIP; /* Our gateway IP addresse */
extern IPaddr_t NetOurSubnetMask; /* Our subnet mask (0 = unknown)*/ extern IPaddr_t NetOurSubnetMask; /* Our subnet mask (0 = unknown)*/
extern IPaddr_t NetOurDNSIP; /* Our Domain Name Server (0 = unknown)*/ extern IPaddr_t NetOurDNSIP; /* Our Domain Name Server (0 = unknown)*/
#if (CONFIG_BOOTP_MASK & CONFIG_BOOTP_DNS2) #if defined(CONFIG_BOOTP_DNS2)
extern IPaddr_t NetOurDNS2IP; /* Our 2nd Domain Name Server (0 = unknown)*/ extern IPaddr_t NetOurDNS2IP; /* Our 2nd Domain Name Server (0 = unknown)*/
#endif #endif
extern char NetOurNISDomain[32]; /* Our NIS domain */ extern char NetOurNISDomain[32]; /* Our NIS domain */

View File

@ -76,7 +76,7 @@ static char *dhcpmsg2str(int type)
} }
#endif #endif
#if (CONFIG_BOOTP_MASK & CONFIG_BOOTP_VENDOREX) #if defined(CONFIG_BOOTP_VENDOREX)
extern u8 *dhcp_vendorex_prep (u8 *e); /*rtn new e after add own opts. */ extern u8 *dhcp_vendorex_prep (u8 *e); /*rtn new e after add own opts. */
extern u8 *dhcp_vendorex_proc (u8 *e); /*rtn next e if mine,else NULL */ extern u8 *dhcp_vendorex_proc (u8 *e); /*rtn next e if mine,else NULL */
#endif #endif
@ -181,7 +181,7 @@ static void BootpVendorFieldProcess (u8 * ext)
if (NetOurDNSIP == 0) { if (NetOurDNSIP == 0) {
NetCopyIP (&NetOurDNSIP, (IPaddr_t *) (ext + 2)); NetCopyIP (&NetOurDNSIP, (IPaddr_t *) (ext + 2));
} }
#if (CONFIG_BOOTP_MASK & CONFIG_BOOTP_DNS2) #if defined(CONFIG_BOOTP_DNS2)
if ((NetOurDNS2IP == 0) && (size > 4)) { if ((NetOurDNS2IP == 0) && (size > 4)) {
NetCopyIP (&NetOurDNS2IP, (IPaddr_t *) (ext + 2 + 4)); NetCopyIP (&NetOurDNS2IP, (IPaddr_t *) (ext + 2 + 4));
} }
@ -383,10 +383,10 @@ static int DhcpExtended (u8 * e, int message_type, IPaddr_t ServerID, IPaddr_t R
u8 *start = e; u8 *start = e;
u8 *cnt; u8 *cnt;
#if (CONFIG_BOOTP_MASK & CONFIG_BOOTP_VENDOREX) #if defined(CONFIG_BOOTP_VENDOREX)
u8 *x; u8 *x;
#endif #endif
#if (CONFIG_BOOTP_MASK & CONFIG_BOOTP_SEND_HOSTNAME) #if defined(CONFIG_BOOTP_SEND_HOSTNAME)
char *hostname; char *hostname;
#endif #endif
@ -425,7 +425,7 @@ static int DhcpExtended (u8 * e, int message_type, IPaddr_t ServerID, IPaddr_t R
*e++ = tmp >> 8; *e++ = tmp >> 8;
*e++ = tmp & 0xff; *e++ = tmp & 0xff;
} }
#if (CONFIG_BOOTP_MASK & CONFIG_BOOTP_SEND_HOSTNAME) #if defined(CONFIG_BOOTP_SEND_HOSTNAME)
if ((hostname = getenv ("hostname"))) { if ((hostname = getenv ("hostname"))) {
int hostnamelen = strlen (hostname); int hostnamelen = strlen (hostname);
@ -436,7 +436,7 @@ static int DhcpExtended (u8 * e, int message_type, IPaddr_t ServerID, IPaddr_t R
} }
#endif #endif
#if (CONFIG_BOOTP_MASK & CONFIG_BOOTP_VENDOREX) #if defined(CONFIG_BOOTP_VENDOREX)
if ((x = dhcp_vendorex_prep (e))) if ((x = dhcp_vendorex_prep (e)))
return x - start; return x - start;
#endif #endif
@ -444,39 +444,39 @@ static int DhcpExtended (u8 * e, int message_type, IPaddr_t ServerID, IPaddr_t R
*e++ = 55; /* Parameter Request List */ *e++ = 55; /* Parameter Request List */
cnt = e++; /* Pointer to count of requested items */ cnt = e++; /* Pointer to count of requested items */
*cnt = 0; *cnt = 0;
#if (CONFIG_BOOTP_MASK & CONFIG_BOOTP_SUBNETMASK) #if defined(CONFIG_BOOTP_SUBNETMASK)
*e++ = 1; /* Subnet Mask */ *e++ = 1; /* Subnet Mask */
*cnt += 1; *cnt += 1;
#endif #endif
#if (CONFIG_BOOTP_MASK & CONFIG_BOOTP_TIMEOFFSET) #if defined(CONFIG_BOOTP_TIMEOFFSET)
*e++ = 2; *e++ = 2;
*cnt += 1; *cnt += 1;
#endif #endif
#if (CONFIG_BOOTP_MASK & CONFIG_BOOTP_GATEWAY) #if defined(CONFIG_BOOTP_GATEWAY)
*e++ = 3; /* Router Option */ *e++ = 3; /* Router Option */
*cnt += 1; *cnt += 1;
#endif #endif
#if (CONFIG_BOOTP_MASK & CONFIG_BOOTP_DNS) #if defined(CONFIG_BOOTP_DNS)
*e++ = 6; /* DNS Server(s) */ *e++ = 6; /* DNS Server(s) */
*cnt += 1; *cnt += 1;
#endif #endif
#if (CONFIG_BOOTP_MASK & CONFIG_BOOTP_HOSTNAME) #if defined(CONFIG_BOOTP_HOSTNAME)
*e++ = 12; /* Hostname */ *e++ = 12; /* Hostname */
*cnt += 1; *cnt += 1;
#endif #endif
#if (CONFIG_BOOTP_MASK & CONFIG_BOOTP_BOOTFILESIZE) #if defined(CONFIG_BOOTP_BOOTFILESIZE)
*e++ = 13; /* Boot File Size */ *e++ = 13; /* Boot File Size */
*cnt += 1; *cnt += 1;
#endif #endif
#if (CONFIG_BOOTP_MASK & CONFIG_BOOTP_BOOTPATH) #if defined(CONFIG_BOOTP_BOOTPATH)
*e++ = 17; /* Boot path */ *e++ = 17; /* Boot path */
*cnt += 1; *cnt += 1;
#endif #endif
#if (CONFIG_BOOTP_MASK & CONFIG_BOOTP_NISDOMAIN) #if defined(CONFIG_BOOTP_NISDOMAIN)
*e++ = 40; /* NIS Domain name request */ *e++ = 40; /* NIS Domain name request */
*cnt += 1; *cnt += 1;
#endif #endif
#if (CONFIG_BOOTP_MASK & CONFIG_BOOTP_NTPSERVER) #if defined(CONFIG_BOOTP_NTPSERVER)
*e++ = 42; *e++ = 42;
*cnt += 1; *cnt += 1;
#endif #endif
@ -493,7 +493,7 @@ static int DhcpExtended (u8 * e, int message_type, IPaddr_t ServerID, IPaddr_t R
#else /* CFG_CMD_DHCP */ #else /* CFG_CMD_DHCP */
/* /*
* Warning: no field size check - change CONFIG_BOOTP_MASK at your own risk! * Warning: no field size check - change CONFIG_BOOTP_* at your own risk!
*/ */
static int BootpExtended (u8 * e) static int BootpExtended (u8 * e)
{ {
@ -515,43 +515,43 @@ static int BootpExtended (u8 * e)
*e++ = (576 - 312 + OPT_SIZE) & 0xff; *e++ = (576 - 312 + OPT_SIZE) & 0xff;
#endif /* CFG_CMD_DHCP */ #endif /* CFG_CMD_DHCP */
#if (CONFIG_BOOTP_MASK & CONFIG_BOOTP_SUBNETMASK) #if defined(CONFIG_BOOTP_SUBNETMASK)
*e++ = 1; /* Subnet mask request */ *e++ = 1; /* Subnet mask request */
*e++ = 4; *e++ = 4;
e += 4; e += 4;
#endif #endif
#if (CONFIG_BOOTP_MASK & CONFIG_BOOTP_GATEWAY) #if defined(CONFIG_BOOTP_GATEWAY)
*e++ = 3; /* Default gateway request */ *e++ = 3; /* Default gateway request */
*e++ = 4; *e++ = 4;
e += 4; e += 4;
#endif #endif
#if (CONFIG_BOOTP_MASK & CONFIG_BOOTP_DNS) #if defined(CONFIG_BOOTP_DNS)
*e++ = 6; /* Domain Name Server */ *e++ = 6; /* Domain Name Server */
*e++ = 4; *e++ = 4;
e += 4; e += 4;
#endif #endif
#if (CONFIG_BOOTP_MASK & CONFIG_BOOTP_HOSTNAME) #if defined(CONFIG_BOOTP_HOSTNAME)
*e++ = 12; /* Host name request */ *e++ = 12; /* Host name request */
*e++ = 32; *e++ = 32;
e += 32; e += 32;
#endif #endif
#if (CONFIG_BOOTP_MASK & CONFIG_BOOTP_BOOTFILESIZE) #if defined(CONFIG_BOOTP_BOOTFILESIZE)
*e++ = 13; /* Boot file size */ *e++ = 13; /* Boot file size */
*e++ = 2; *e++ = 2;
e += 2; e += 2;
#endif #endif
#if (CONFIG_BOOTP_MASK & CONFIG_BOOTP_BOOTPATH) #if defined(CONFIG_BOOTP_BOOTPATH)
*e++ = 17; /* Boot path */ *e++ = 17; /* Boot path */
*e++ = 32; *e++ = 32;
e += 32; e += 32;
#endif #endif
#if (CONFIG_BOOTP_MASK & CONFIG_BOOTP_NISDOMAIN) #if defined(CONFIG_BOOTP_NISDOMAIN)
*e++ = 40; /* NIS Domain name request */ *e++ = 40; /* NIS Domain name request */
*e++ = 32; *e++ = 32;
e += 32; e += 32;
@ -726,7 +726,7 @@ static void DhcpOptionsProcess (uchar * popt, Bootp_t *bp)
case 1: case 1:
NetCopyIP (&NetOurSubnetMask, (popt + 2)); NetCopyIP (&NetOurSubnetMask, (popt + 2));
break; break;
#if defined(CONFIG_CMD_SNTP) && (CONFIG_BOOTP_MASK & CONFIG_BOOTP_TIMEOFFSET) #if defined(CONFIG_CMD_SNTP) && defined(CONFIG_BOOTP_TIMEOFFSET)
case 2: /* Time offset */ case 2: /* Time offset */
NetCopyLong (&NetTimeOffset, (ulong *) (popt + 2)); NetCopyLong (&NetTimeOffset, (ulong *) (popt + 2));
NetTimeOffset = ntohl (NetTimeOffset); NetTimeOffset = ntohl (NetTimeOffset);
@ -737,7 +737,7 @@ static void DhcpOptionsProcess (uchar * popt, Bootp_t *bp)
break; break;
case 6: case 6:
NetCopyIP (&NetOurDNSIP, (popt + 2)); NetCopyIP (&NetOurDNSIP, (popt + 2));
#if (CONFIG_BOOTP_MASK & CONFIG_BOOTP_DNS2) #if defined(CONFIG_BOOTP_DNS2)
if (*(popt + 1) > 4) { if (*(popt + 1) > 4) {
NetCopyIP (&NetOurDNS2IP, (popt + 2 + 4)); NetCopyIP (&NetOurDNS2IP, (popt + 2 + 4));
} }
@ -755,7 +755,7 @@ static void DhcpOptionsProcess (uchar * popt, Bootp_t *bp)
memcpy (&NetOurRootPath, popt + 2, size); memcpy (&NetOurRootPath, popt + 2, size);
NetOurRootPath[size] = 0; NetOurRootPath[size] = 0;
break; break;
#if defined(CONFIG_CMD_SNTP) && (CONFIG_BOOTP_MASK & CONFIG_BOOTP_NTPSERVER) #if defined(CONFIG_CMD_SNTP) && defined(CONFIG_BOOTP_NTPSERVER)
case 42: /* NTP server IP */ case 42: /* NTP server IP */
NetCopyIP (&NetNtpServerIP, (popt + 2)); NetCopyIP (&NetNtpServerIP, (popt + 2));
break; break;
@ -801,7 +801,7 @@ static void DhcpOptionsProcess (uchar * popt, Bootp_t *bp)
} }
break; break;
default: default:
#if (CONFIG_BOOTP_MASK & CONFIG_BOOTP_VENDOREX) #if defined(CONFIG_BOOTP_VENDOREX)
if (dhcp_vendorex_proc (popt)) if (dhcp_vendorex_proc (popt))
break; break;
#endif #endif

View File

@ -110,7 +110,7 @@ DECLARE_GLOBAL_DATA_PTR;
IPaddr_t NetOurSubnetMask=0; /* Our subnet mask (0=unknown) */ IPaddr_t NetOurSubnetMask=0; /* Our subnet mask (0=unknown) */
IPaddr_t NetOurGatewayIP=0; /* Our gateways IP address */ IPaddr_t NetOurGatewayIP=0; /* Our gateways IP address */
IPaddr_t NetOurDNSIP=0; /* Our DNS IP address */ IPaddr_t NetOurDNSIP=0; /* Our DNS IP address */
#if (CONFIG_BOOTP_MASK & CONFIG_BOOTP_DNS2) #if defined(CONFIG_BOOTP_DNS2)
IPaddr_t NetOurDNS2IP=0; /* Our 2nd DNS IP address */ IPaddr_t NetOurDNS2IP=0; /* Our 2nd DNS IP address */
#endif #endif
char NetOurNISDomain[32]={0,}; /* Our NIS domain */ char NetOurNISDomain[32]={0,}; /* Our NIS domain */