summaryrefslogtreecommitdiff
path: root/server/ldap.c
diff options
context:
space:
mode:
Diffstat (limited to 'server/ldap.c')
-rw-r--r--server/ldap.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/server/ldap.c b/server/ldap.c
index 46b13d00..8e80d5b5 100644
--- a/server/ldap.c
+++ b/server/ldap.c
@@ -1137,7 +1137,7 @@ _do_lookup_dhcp_int_option (struct option_state *options, int option_name)
{
struct option_cache *oc;
struct data_string db;
- int ret;
+ int ret = 0;
memset (&db, 0, sizeof (db));
oc = lookup_option (&server_universe, options, option_name);
@@ -1147,13 +1147,14 @@ _do_lookup_dhcp_int_option (struct option_state *options, int option_name)
(struct client_state *) NULL, options,
(struct option_state *) NULL,
&global_scope, oc, MDL) &&
- db.data != NULL && *db.data != '\0')
+ db.data != NULL)
{
- ret = strtol ((const char *) db.data, NULL, 10);
+ if (db.len == 4) {
+ ret = getULong(db.data);
+ }
+
data_string_forget (&db, MDL);
}
- else
- ret = 0;
return (ret);
}