X-Git-Url: https://git.zerfleddert.de/cgi-bin/gitweb.cgi/proxmark3-svn/blobdiff_plain/ae6ead3dc84acd074be24c0da5efd94ea7a0b225..acaeccf841f65291f5687824cb5322cc661e8183:/client/util.c

diff --git a/client/util.c b/client/util.c
index b8d5c316..edd9aebc 100644
--- a/client/util.c
+++ b/client/util.c
@@ -213,6 +213,7 @@ int param_getptr(const char *line, int *bg, int *en, int paramnum)
 	return 0;
 }
 
+
 char param_getchar(const char *line, int paramnum)
 {
 	int bg, en;
@@ -227,6 +228,35 @@ uint8_t param_get8(const char *line, int paramnum)
 	return param_get8ex(line, paramnum, 10, 0);
 }
 
+/**
+ * @brief Reads a decimal integer (actually, 0-254, not 255)
+ * @param line
+ * @param paramnum
+ * @return -1 if error
+ */
+uint8_t param_getdec(const char *line, int paramnum, uint8_t *destination)
+{
+	uint8_t val =  param_get8ex(line, paramnum, 255, 10);
+	if( (int8_t) val == -1) return 1;
+	(*destination) = val;
+	return 0;
+}
+/**
+ * @brief Checks if param is decimal
+ * @param line
+ * @param paramnum
+ * @return
+ */
+uint8_t param_isdec(const char *line, int paramnum)
+{
+	int bg, en;
+	//TODO, check more thorougly
+	if (!param_getptr(line, &bg, &en, paramnum)) return 1;
+		//		return strtoul(&line[bg], NULL, 10) & 0xff;
+
+	return 0;
+}
+
 uint8_t param_get8ex(const char *line, int paramnum, int deflt, int base)
 {
 	int bg, en;