summaryrefslogtreecommitdiffstats
path: root/tools.c
diff options
context:
space:
mode:
authorSuren A. Chilingaryan <csa@dside.dyndns.org>2011-07-12 09:53:45 +0200
committerSuren A. Chilingaryan <csa@dside.dyndns.org>2011-07-12 09:53:45 +0200
commitde984f8b9706cfac79f7658e5b3863e78b052458 (patch)
treef989701212bb2de4d224387344929853e4055d27 /tools.c
parent5b4fbcc62d4544aee7adf0a92a2db31197bae305 (diff)
downloadpcitool-de984f8b9706cfac79f7658e5b3863e78b052458.tar.gz
pcitool-de984f8b9706cfac79f7658e5b3863e78b052458.tar.bz2
pcitool-de984f8b9706cfac79f7658e5b3863e78b052458.tar.xz
pcitool-de984f8b9706cfac79f7658e5b3863e78b052458.zip
Suppport DMA modes in console application (not functional yet)
Diffstat (limited to 'tools.c')
-rw-r--r--tools.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/tools.c b/tools.c
index 1ff3177..8b39669 100644
--- a/tools.c
+++ b/tools.c
@@ -26,6 +26,24 @@ int pcilib_isxnumber(const char *str) {
return 1;
}
+int pcilib_isnumber_n(const char *str, size_t len) {
+ int i = 0;
+ for (i = 0; (str[i])&&(i < len); i++)
+ if (!isdigit(str[i])) return 0;
+ return 1;
+}
+
+int pcilib_isxnumber_n(const char *str, size_t len) {
+ int i = 0;
+
+ if ((len > 1)&&(str[0] == '0')&&((str[1] == 'x')||(str[1] == 'X'))) i += 2;
+
+ for (; (str[i])&&(i < len); i++)
+ if (!isxdigit(str[i])) return 0;
+
+ return 1;
+}
+
uint16_t pcilib_swap16(uint16_t x) {
return (((x<<8)&0xFFFF) | ((x>>8)&0xFFFF));