* [U-Boot] [PATCH] tools/env: allow to pass NULL for environment options
@ 2016-05-31 7:21 Andreas Fenkart
2016-05-31 14:50 ` Tom Rini
0 siblings, 1 reply; 2+ messages in thread
From: Andreas Fenkart @ 2016-05-31 7:21 UTC (permalink / raw)
To: u-boot
If users of the library are happy with the default, e.g. config file
name. They can pass NULL as the opts pointer. This simplifies the
transition of existing library users.
FIXES a compile error. since common_args has been removed by
a previous patch
Signed-off-by: Andreas Fenkart <andreas.fenkart@digitalstrom.com>
---
tools/env/fw_env.c | 27 ++++++++++++++++++++++++---
1 file changed, 24 insertions(+), 3 deletions(-)
diff --git a/tools/env/fw_env.c b/tools/env/fw_env.c
index 52e0bec..692abda 100644
--- a/tools/env/fw_env.c
+++ b/tools/env/fw_env.c
@@ -35,6 +35,12 @@
#include "fw_env.h"
+struct env_opts default_opts = {
+#ifdef CONFIG_FILE
+ .config_file = CONFIG_FILE
+#endif
+};
+
#define DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d))
#define min(x, y) ({ \
@@ -229,6 +235,9 @@ int fw_printenv(int argc, char *argv[], int value_only, struct env_opts *opts)
char *env, *nxt;
int i, rc = 0;
+ if (!opts)
+ opts = &default_opts;
+
if (fw_env_open(opts))
return -1;
@@ -289,6 +298,9 @@ int fw_env_close(struct env_opts *opts)
{
int ret;
+ if (!opts)
+ opts = &default_opts;
+
if (opts->aes_flag) {
ret = env_aes_cbc_crypt(environment.data, 1,
opts->aes_key);
@@ -452,6 +464,9 @@ int fw_setenv(int argc, char *argv[], struct env_opts *opts)
char *value = NULL;
int valc;
+ if (!opts)
+ opts = &default_opts;
+
if (argc < 1) {
fprintf(stderr, "## Error: variable name missing\n");
errno = EINVAL;
@@ -524,6 +539,9 @@ int fw_parse_script(char *fname, struct env_opts *opts)
int len;
int ret = 0;
+ if (!opts)
+ opts = &default_opts;
+
if (fw_env_open(opts)) {
fprintf(stderr, "Error: environment not initialized\n");
return -1;
@@ -1139,6 +1157,9 @@ int fw_env_open(struct env_opts *opts)
struct env_image_single *single;
struct env_image_redundant *redundant;
+ if (!opts)
+ opts = &default_opts;
+
if (parse_config(opts)) /* should fill envdevices */
return -1;
@@ -1312,10 +1333,10 @@ static int parse_config(struct env_opts *opts)
{
struct stat st;
-#if defined(CONFIG_FILE)
- if (!common_args.config_file)
- common_args.config_file = CONFIG_FILE;
+ if (!opts)
+ opts = &default_opts;
+#if defined(CONFIG_FILE)
/* Fills in DEVNAME(), ENVSIZE(), DEVESIZE(). Or don't. */
if (get_config(opts->config_file)) {
fprintf(stderr, "Cannot parse config file '%s': %m\n",
--
2.8.1
^ permalink raw reply related [flat|nested] 2+ messages in thread
end of thread, other threads:[~2016-05-31 14:50 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-05-31 7:21 [U-Boot] [PATCH] tools/env: allow to pass NULL for environment options Andreas Fenkart
2016-05-31 14:50 ` Tom Rini
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox