diff options
Diffstat (limited to 'common/env.c')
-rw-r--r-- | common/env.c | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/common/env.c b/common/env.c index d673b061ab..7a213cadb2 100644 --- a/common/env.c +++ b/common/env.c @@ -343,19 +343,30 @@ const char *getenv_nonempty(const char *var) } EXPORT_SYMBOL(getenv_nonempty); -int getenv_ull(const char *var , unsigned long long *val) +static int getenv_ull_base(const char *var, int base, unsigned long long *val) { const char *valstr = getenv(var); if (!valstr || !*valstr) return -EINVAL; - *val = simple_strtoull(valstr, NULL, 0); + *val = simple_strtoull(valstr, NULL, base); return 0; } + +int getenv_ull(const char *var , unsigned long long *val) +{ + return getenv_ull_base(var, 0, val); +} EXPORT_SYMBOL(getenv_ull); +int getenv_ullx(const char *var , unsigned long long *val) +{ + return getenv_ull_base(var, 16, val); +} +EXPORT_SYMBOL(getenv_ullx); + int getenv_ul(const char *var , unsigned long *val) { const char *valstr = getenv(var); |