summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
19a463f)
Get boolean value (0/f/n or 1/t/y) of environment variable.
#include "common.h"
#include <string.h>
#include <stdlib.h>
#include "common.h"
#include <string.h>
#include <stdlib.h>
#include <avr/eeprom.h>
#include "config.h"
#include <avr/eeprom.h>
#include "config.h"
+/*
+ * Read an environment variable as a boolean
+ */
+bool getenv_yesno(const MEMX char *name)
+{
+ char *s = getenv_char(name);
+
+ if (s == NULL)
+ return false;
+
+ return strchr_P(PSTR("1yYtT"), *s) != NULL;
+
+/*
+ return *s == '1' || *s == 'y' || *s == 'Y' || *s == 't' || *s == 'T' ?
+ 1 : 0;
+*/
+}
+
command_ret_t do_env_print(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
{
command_ret_t rc = CMD_RET_SUCCESS;
command_ret_t do_env_print(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
{
command_ret_t rc = CMD_RET_SUCCESS;
/*
* (C) Copyright 2014 Leo C. <erbl259-lmu@yahoo.de>
*
/*
* (C) Copyright 2014 Leo C. <erbl259-lmu@yahoo.de>
*
- * SPDX-License-Identifier: GPL-2.0+
+ * SPDX-License-Identifier: GPL-2.0
*/
#ifndef ENV_H
#define ENV_H
*/
#ifndef ENV_H
#define ENV_H
int env_init(void);
char *getenv_char(const MEMX char *name);
unsigned long getenv_ulong(const MEMX char *name, int base, unsigned long default_val);
int env_init(void);
char *getenv_char(const MEMX char *name);
unsigned long getenv_ulong(const MEMX char *name, int base, unsigned long default_val);
+bool getenv_yesno(const MEMX char *name);
int setenv_ulong(const MEMX char *varname, unsigned long value);
int setenv_hex(const MEMX char *varname, unsigned long value);
int setenv_ulong(const MEMX char *varname, unsigned long value);
int setenv_hex(const MEMX char *varname, unsigned long value);