summaryrefslogtreecommitdiffstats
path: root/crypto/conf
diff options
context:
space:
mode:
Diffstat (limited to 'crypto/conf')
-rw-r--r--crypto/conf/conf_lib.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/crypto/conf/conf_lib.c b/crypto/conf/conf_lib.c
index c72511ba67..5f976f35c4 100644
--- a/crypto/conf/conf_lib.c
+++ b/crypto/conf/conf_lib.c
@@ -292,10 +292,13 @@ int NCONF_get_number_e(const CONF *conf, const char *group, const char *name,
if (str == NULL)
return 0;
- for (*result = 0; conf->meth->is_number(conf, *str);) {
- *result = (*result) * 10 + conf->meth->to_int(conf, *str);
- str++;
- }
+ if (conf == NULL)
+ *result = strtol(str, &str, 10);
+ else
+ for (*result = 0; conf->meth->is_number(conf, *str);) {
+ *result = (*result) * 10 + conf->meth->to_int(conf, *str);
+ str++;
+ }
return 1;
}