diff options
| author | Joe Hershberger <joe.hershberger@ni.com> | 2012-12-11 22:16:37 -0600 | 
|---|---|---|
| committer | Tom Rini <trini@ti.com> | 2012-12-13 11:46:57 -0700 | 
| commit | 1d6cd0a3f69b549a3fc7e735a045279e7a14947e (patch) | |
| tree | 4abb7a50269c09b33e599f291bf6295b863e28e0 /common/env_flags.c | |
| parent | 9d8d661d7fda6ccda1d5fc31565f207b7648bc6d (diff) | |
| download | olio-uboot-2014.01-1d6cd0a3f69b549a3fc7e735a045279e7a14947e.tar.xz olio-uboot-2014.01-1d6cd0a3f69b549a3fc7e735a045279e7a14947e.zip | |
env: Handle write-once ethaddr and serial# generically
Use the variable access flags to implement the protection for ethaddr
and serial# instead of hard-coding them.
Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
Diffstat (limited to 'common/env_flags.c')
| -rw-r--r-- | common/env_flags.c | 19 | 
1 files changed, 0 insertions, 19 deletions
| diff --git a/common/env_flags.c b/common/env_flags.c index 4caf12e69..336cae4e9 100644 --- a/common/env_flags.c +++ b/common/env_flags.c @@ -503,25 +503,6 @@ int env_flags_validate(const ENTRY *item, const char *newval, enum env_op op,  	/* Default value for NULL to protect string-manipulating functions */  	newval = newval ? : ""; -#ifndef CONFIG_ENV_OVERWRITE -	/* -	 * Some variables like "ethaddr" and "serial#" can be set only once and -	 * cannot be deleted, unless CONFIG_ENV_OVERWRITE is defined. -	 */ -	if (op != env_op_create &&		/* variable exists */ -		(flag & H_FORCE) == 0) {	/* and we are not forced */ -		if (strcmp(name, "serial#") == 0 || -		    (strcmp(name, "ethaddr") == 0 -#if defined(CONFIG_OVERWRITE_ETHADDR_ONCE) && defined(CONFIG_ETHADDR) -		     && strcmp(oldval, __stringify(CONFIG_ETHADDR)) != 0 -#endif	/* CONFIG_OVERWRITE_ETHADDR_ONCE && CONFIG_ETHADDR */ -			)) { -			printf("Can't overwrite \"%s\"\n", name); -			return 1; -		} -	} -#endif -  	/* validate the value to match the variable type */  	if (op != env_op_delete) {  		enum env_flags_vartype type = (enum env_flags_vartype) |