Commit 73c2bbeea3d09bb8c81adc8769fc53493b6c0351
Committed by
Tom Rini
1 parent
94b467b14e
Exists in
v2017.01-smarct4x
and in
34 other branches
net: Apply default format rules to all ethaddr
Use a regular expression to apply the default formatting flags for all ethaddr env vars. Signed-off-by: Joe Hershberger <joe.hershberger@ni.com> Reviewed-by: Simon Glass <sjg@chromium.org>
Showing 2 changed files with 11 additions and 3 deletions Side-by-side Diff
include/env_flags.h
... | ... | @@ -38,13 +38,18 @@ |
38 | 38 | #endif |
39 | 39 | |
40 | 40 | #ifdef CONFIG_CMD_NET |
41 | +#ifdef CONFIG_REGEX | |
42 | +#define ETHADDR_WILDCARD "\\d?" | |
43 | +#else | |
44 | +#define ETHADDR_WILDCARD | |
45 | +#endif | |
41 | 46 | #ifdef CONFIG_ENV_OVERWRITE |
42 | -#define ETHADDR_FLAGS "ethaddr:ma," | |
47 | +#define ETHADDR_FLAGS "eth" ETHADDR_WILDCARD "addr:ma," | |
43 | 48 | #else |
44 | 49 | #ifdef CONFIG_OVERWRITE_ETHADDR_ONCE |
45 | -#define ETHADDR_FLAGS "ethaddr:mc," | |
50 | +#define ETHADDR_FLAGS "eth" ETHADDR_WILDCARD "addr:mc," | |
46 | 51 | #else |
47 | -#define ETHADDR_FLAGS "ethaddr:mo," | |
52 | +#define ETHADDR_FLAGS "eth" ETHADDR_WILDCARD "addr:mo," | |
48 | 53 | #endif |
49 | 54 | #endif |
50 | 55 | #else |
test/dm/eth.c
... | ... | @@ -89,6 +89,8 @@ |
89 | 89 | /* Invalidate eth1's MAC address */ |
90 | 90 | net_ping_ip = string_to_ip("1.1.2.2"); |
91 | 91 | strcpy(ethaddr, getenv("eth1addr")); |
92 | + /* Must disable access protection for eth1addr before clearing */ | |
93 | + setenv(".flags", "eth1addr"); | |
92 | 94 | setenv("eth1addr", NULL); |
93 | 95 | |
94 | 96 | /* Make sure that the default is to rotate to the next interface */ |
... | ... | @@ -108,6 +110,7 @@ |
108 | 110 | |
109 | 111 | /* Invalidate eth0's MAC address */ |
110 | 112 | strcpy(ethaddr, getenv("ethaddr")); |
113 | + /* Must disable access protection for ethaddr before clearing */ | |
111 | 114 | setenv(".flags", "ethaddr"); |
112 | 115 | setenv("ethaddr", NULL); |
113 | 116 |