75strtonum(
const char *numstr,
long long minval,
long long maxval,
86 {
"invalid", EINVAL },
87 {
"too small", ERANGE },
88 {
"too large", ERANGE },
93 if (minval > maxval) {
96 ll = strtoll(numstr, &ep, 10);
97 if (errno == EINVAL || numstr == ep || *ep !=
'\0')
99 else if ((ll ==
LLONG_MIN && errno == ERANGE) || ll < minval)
101 else if ((ll ==
LLONG_MAX && errno == ERANGE) || ll > maxval)
105 *errstrp = ev[error].errstr;
106 errno = ev[error].err;