Added Restriction on base value
This commit is contained in:
parent
423fc83dfd
commit
a9a4554723
|
@ -91,6 +91,9 @@ _strtoimax_l(struct _reent *rptr, const char * __restrict nptr,
|
|||
if (base == 0)
|
||||
base = c == '0' ? 8 : 10;
|
||||
|
||||
if (base < 2 || base > 36)
|
||||
goto noconv;
|
||||
|
||||
/*
|
||||
* Compute the cutoff value between legal numbers and illegal
|
||||
* numbers. That is the largest legal value, divided by the
|
||||
|
@ -135,6 +138,7 @@ _strtoimax_l(struct _reent *rptr, const char * __restrict nptr,
|
|||
acc = neg ? INTMAX_MIN : INTMAX_MAX;
|
||||
rptr->_errno = ERANGE;
|
||||
} else if (!any) {
|
||||
noconv:
|
||||
rptr->_errno = EINVAL;
|
||||
} else if (neg)
|
||||
acc = -acc;
|
||||
|
|
Loading…
Reference in New Issue