projects
/
tinc
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Improve starting/stopping tincd using tincctl.
[tinc]
/
src
/
utils.c
diff --git
a/src/utils.c
b/src/utils.c
index
cf46221
..
129622b
100644
(file)
--- a/
src/utils.c
+++ b/
src/utils.c
@@
-48,7
+48,7
@@
static int charb64decode(char c) {
int hex2bin(const char *src, char *dst, int length) {
int i;
int hex2bin(const char *src, char *dst, int length) {
int i;
- for(i = 0; i < length &&
src[i * 2] && src[i * 2 + 1]
; i++)
+ for(i = 0; i < length &&
isxdigit(src[i * 2]) && isxdigit(src[i * 2 + 1])
; i++)
dst[i] = charhex2bin(src[i * 2]) * 16 + charhex2bin(src[i * 2 + 1]);
return i;
}
dst[i] = charhex2bin(src[i * 2]) * 16 + charhex2bin(src[i * 2 + 1]);
return i;
}
@@
-137,15
+137,17
@@
int b64encode(const char *src, char *dst, int length) {
#endif
const char *winerror(int err) {
#endif
const char *winerror(int err) {
- static char buf[1024], *newline;
+ static char buf[1024], *ptr;
+
+ ptr = buf + sprintf(buf, "(%d) ", err);
if (!FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_IGNORE_INSERTS,
if (!FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_IGNORE_INSERTS,
- NULL, err, MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),
buf, sizeof(
buf), NULL)) {
+ NULL, err, MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),
ptr, sizeof(buf) - (ptr -
buf), NULL)) {
strncpy(buf, "(unable to format errormessage)", sizeof(buf));
};
strncpy(buf, "(unable to format errormessage)", sizeof(buf));
};
- if((
newline
= strchr(buf, '\r')))
- *
newline
= '\0';
+ if((
ptr
= strchr(buf, '\r')))
+ *
ptr
= '\0';
return buf;
}
return buf;
}