/*
utils.c -- gathering of some stupid small functions
Copyright (C) 1999-2005 Ivo Timmermans
- 2000-2009 Guus Sliepen <guus@tinc-vpn.org>
+ 2000-2012 Guus Sliepen <guus@tinc-vpn.org>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
return c - 'a' + 26;
else if(c >= 'A')
return c - 'A';
- else if(c >= '0')
+ else if(c >= '0')
return c - '0' + 52;
else if(c == '+')
return 62;
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;
}
int bin2hex(const char *src, char *dst, int length) {
- int i;
- for(i = length - 1; i >= 0; i--) {
+ for(int i = length - 1; i >= 0; i--) {
dst[i * 2 + 1] = hexadecimals[(unsigned char) src[i] & 15];
dst[i * 2] = hexadecimals[(unsigned char) src[i] >> 4];
}
int di = length / 3 * 4;
switch(length % 3) {
- case 2:
+ case 2:
triplet = usrc[si] | usrc[si + 1] << 8;
dst[di] = base64imals[triplet & 63]; triplet >>= 6;
dst[di + 1] = base64imals[triplet & 63]; triplet >>= 6;
ptr = buf + sprintf(buf, "(%d) ", err);
if (!FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_IGNORE_INSERTS,
- NULL, err, MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), ptr, sizeof(buf) - (ptr - buf), NULL)) {
+ NULL, err, MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), ptr, sizeof(buf) - (ptr - buf), NULL)) {
strncpy(buf, "(unable to format errormessage)", sizeof(buf));
};