]> cloudbase.mooo.com Git - z180-stamp.git/blobdiff - avr/env.c
New function: getenv_yesno()
[z180-stamp.git] / avr / env.c
index c4837d52cf29190fba06e9476904a4a4f598ae56..6fbeb01188206d4f16a4a141182370b112fa112b 100644 (file)
--- a/avr/env.c
+++ b/avr/env.c
@@ -7,6 +7,7 @@
 #include "common.h"
 #include <string.h>
 #include <stdlib.h>
+#include <stdbool.h>
 #include <avr/eeprom.h>
 
 #include "config.h"
@@ -624,6 +625,24 @@ unsigned long getenv_ulong(const MEMX char *name, int base, unsigned long defaul
 }
 
 
+/*
+ * 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;