projects
/
proxmark3-svn
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'master' of https://github.com/Proxmark/proxmark3
[proxmark3-svn]
/
client
/
util.c
diff --git
a/client/util.c
b/client/util.c
index 1fc684b69620a40f42f8921903d79abdc08485eb..797a93927e16ae57a6598ee905840bcfc3962ca8 100644
(file)
--- a/
client/util.c
+++ b/
client/util.c
@@
-113,11
+113,11
@@
char *sprint_hex(const uint8_t *data, const size_t len) {
int maxLen = ( len > 1024/3) ? 1024/3 : len;
static char buf[1024];
memset(buf, 0x00, 1024);
int maxLen = ( len > 1024/3) ? 1024/3 : len;
static char buf[1024];
memset(buf, 0x00, 1024);
- char *tmp = buf;
+ char *
tmp = buf;
size_t i;
for (i=0; i < maxLen; ++i, tmp += 3)
size_t i;
for (i=0; i < maxLen; ++i, tmp += 3)
- sprintf(tmp, "%02
x
", data[i]);
+ sprintf(tmp, "%02
X
", data[i]);
return buf;
}
return buf;
}
@@
-248,7
+248,7
@@
char param_getchar(const char *line, int paramnum)
uint8_t param_get8(const char *line, int paramnum)
{
uint8_t param_get8(const char *line, int paramnum)
{
- return param_get8ex(line, paramnum,
10,
0);
+ return param_get8ex(line, paramnum,
0, 1
0);
}
/**
}
/**
@@
-445,7
+445,7
@@
void wiegand_add_parity(char *target, char *source, char length)
*(target)= GetParity(source + length / 2, ODD, length / 2);
}
*(target)= GetParity(source + length / 2, ODD, length / 2);
}
-void xor(unsigned char *
dst, unsigned char *
src, size_t len) {
+void xor(unsigned char *
dst, unsigned char *
src, size_t len) {
for( ; len > 0; len--,dst++,src++)
*dst ^= *src;
}
for( ; len > 0; len--,dst++,src++)
*dst ^= *src;
}
@@
-453,3
+453,18
@@
void xor(unsigned char *dst, unsigned char *src, size_t len) {
int32_t le24toh (uint8_t data[3]) {
return (data[2] << 16) | (data[1] << 8) | data[0];
}
int32_t le24toh (uint8_t data[3]) {
return (data[2] << 16) | (data[1] << 8) | data[0];
}
+
+
+uint32_t PackBits(uint8_t start, uint8_t len, uint8_t* bits) {
+
+ int i = start;
+ int j = len-1;
+
+ if (len > 32) return 0;
+
+ uint32_t tmp = 0;
+ for (; j >= 0; --j, ++i)
+ tmp |= bits[i] << j;
+
+ return tmp;
+}
Impressum
,
Datenschutz