diff options
author | Sascha Hauer <s.hauer@pengutronix.de> | 2011-11-26 13:53:42 +0100 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2011-11-29 20:55:50 +0100 |
commit | a94db01cdce44acc50c7ad8ebcb9040b0020fabd (patch) | |
tree | 7437bd7b7980597970f151772fda2436afe79350 | |
parent | 248e5f1cbed581c1bf6288831b6888e2166fb952 (diff) | |
download | barebox-a94db01cdce44acc50c7ad8ebcb9040b0020fabd.tar.gz barebox-a94db01cdce44acc50c7ad8ebcb9040b0020fabd.tar.xz |
introduce some env helpers
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
-rw-r--r-- | common/env.c | 22 | ||||
-rw-r--r-- | include/environment.h | 3 |
2 files changed, 25 insertions, 0 deletions
diff --git a/common/env.c b/common/env.c index 05ed71418e..e57a520a35 100644 --- a/common/env.c +++ b/common/env.c @@ -251,3 +251,25 @@ int export(const char *varname) return 0; } EXPORT_SYMBOL(export); + +void export_env_ull(const char *name, unsigned long long val) +{ + char *valstr = asprintf("%lld", val); + + setenv(name, valstr); + export(name); + + kfree(valstr); +} +EXPORT_SYMBOL(export_env_ull); + +unsigned long long getenv_ull(const char *name) +{ + const char *valstr = getenv(name); + + if (!valstr) + return 0; + + return simple_strtoull(valstr, NULL, 0); +} +EXPORT_SYMBOL(getenv_ull); diff --git a/include/environment.h b/include/environment.h index da032e21d6..6d38755ae7 100644 --- a/include/environment.h +++ b/include/environment.h @@ -59,6 +59,9 @@ static inline int setenv(const char *var, const char *val) } #endif +void export_env_ull(const char *name, unsigned long long val); +unsigned long long getenv_ull(const char *name); + int env_pop_context(void); int env_push_context(void); |