If we are not passed a buffer we should blindly return the
result of trying to parse it has as a hex string - it will be zero.
Fixes 133.
}
} else {
l = (size_t)hwaddr_aton(NULL, str);
- if (sbuf == NULL)
- return (ssize_t)l;
- if ((ssize_t) l != -1 && l > 1) {
+ if (l > 0) {
+ if ((ssize_t)l == -1) {
+ errno = ENOBUFS;
+ return -1;
+ }
+ if (sbuf == NULL)
+ return (ssize_t)l;
if (l > slen) {
errno = ENOBUFS;
return -1;
arg = fp;
fp = strend(arg);
if (fp == NULL) {
- logerrx("authtoken requies an a key");
+ logerrx("authtoken requires a realm");
goto invalid_token;
}
*fp++ = '\0';
if (s == -1)
logerr("token_len");
else
- logerrx("authtoken needs a key");
+ logerrx("authtoken requires a key");
goto invalid_token;
}
token->key_len = (size_t)s;