Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
openldap
OpenLDAP
Commits
dd74acbf
Commit
dd74acbf
authored
Sep 13, 2006
by
Howard Chu
Browse files
Fix ITS
#4672
, clear errno before calling STRTOL
parent
eaf976d5
Changes
1
Hide whitespace changes
Inline
Side-by-side
servers/slapd/schema_init.c
View file @
dd74acbf
...
...
@@ -2353,16 +2353,11 @@ numericStringNormalize(
* Integer conversion macros that will use the largest available
* type.
*/
#if defined(HAVE_STRTOLL) && defined(LLONG_MAX) \
&& defined(LLONG_MIN) && defined(HAVE_LONG_LONG)
#if defined(HAVE_STRTOLL) && defined(HAVE_LONG_LONG)
# define SLAP_STRTOL(n,e,b) strtoll(n,e,b)
# define SLAP_LONG_MAX LLONG_MAX
# define SLAP_LONG_MIN LLONG_MIN
# define SLAP_LONG long long
#else
# define SLAP_STRTOL(n,e,b) strtol(n,e,b)
# define SLAP_LONG_MAX LONG_MAX
# define SLAP_LONG_MIN LONG_MIN
# define SLAP_LONG long
#endif
/* HAVE_STRTOLL ... */
...
...
@@ -2377,18 +2372,17 @@ integerBitAndMatch(
{
SLAP_LONG
lValue
,
lAssertedValue
;
errno
=
0
;
/* safe to assume integers are NUL terminated? */
lValue
=
SLAP_STRTOL
(
value
->
bv_val
,
NULL
,
10
);
if
((
lValue
==
SLAP_LONG_MIN
||
lValue
==
SLAP_LONG_MAX
)
&&
errno
==
ERANGE
)
if
(
errno
==
ERANGE
)
{
return
LDAP_CONSTRAINT_VIOLATION
;
}
lAssertedValue
=
SLAP_STRTOL
(((
struct
berval
*
)
assertedValue
)
->
bv_val
,
NULL
,
10
);
if
((
lAssertedValue
==
SLAP_LONG_MIN
||
lAssertedValue
==
SLAP_LONG_MAX
)
&&
errno
==
ERANGE
)
if
(
errno
==
ERANGE
)
{
return
LDAP_CONSTRAINT_VIOLATION
;
}
...
...
@@ -2408,18 +2402,17 @@ integerBitOrMatch(
{
SLAP_LONG
lValue
,
lAssertedValue
;
errno
=
0
;
/* safe to assume integers are NUL terminated? */
lValue
=
SLAP_STRTOL
(
value
->
bv_val
,
NULL
,
10
);
if
((
lValue
==
SLAP_LONG_MIN
||
lValue
==
SLAP_LONG_MAX
)
&&
errno
==
ERANGE
)
if
(
errno
==
ERANGE
)
{
return
LDAP_CONSTRAINT_VIOLATION
;
}
lAssertedValue
=
SLAP_STRTOL
(
((
struct
berval
*
)
assertedValue
)
->
bv_val
,
NULL
,
10
);
if
((
lAssertedValue
==
SLAP_LONG_MIN
||
lAssertedValue
==
SLAP_LONG_MAX
)
&&
errno
==
ERANGE
)
if
(
errno
==
ERANGE
)
{
return
LDAP_CONSTRAINT_VIOLATION
;
}
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment