summaryrefslogtreecommitdiffstats
path: root/crypto/conf
diff options
context:
space:
mode:
authorRich Salz <rsalz@akamai.com>2020-03-28 12:51:05 -0400
committerTomas Mraz <tmraz@fedoraproject.org>2020-04-24 13:29:16 +0200
commit2b9bafe607421e394265dcbaad6234b4efee19e8 (patch)
treebec4273c8d4681912878293ff594ab6236003f40 /crypto/conf
parentc16aec524626a20e3187a3ad61a4898a1801177a (diff)
Rewrite man5/config.pod and related conf code cleanup
The manpage is basically rewritten. Use consistent name/value terminology. Use consistent phraseology to refer to section pointers and lists of section pointers. Add more cross-references. Also found a bunch of trivial style things in conf_api.c while investigating how config works. Reviewed-by: Nicola Tuveri <nic.tuv@gmail.com> Reviewed-by: Tomas Mraz <tmraz@fedoraproject.org> (Merged from https://github.com/openssl/openssl/pull/11431)
Diffstat (limited to 'crypto/conf')
-rw-r--r--crypto/conf/conf_api.c67
1 files changed, 28 insertions, 39 deletions
diff --git a/crypto/conf/conf_api.c b/crypto/conf/conf_api.c
index 4248de60e1..4c7349a305 100644
--- a/crypto/conf/conf_api.c
+++ b/crypto/conf/conf_api.c
@@ -19,30 +19,26 @@
static void value_free_hash(const CONF_VALUE *a, LHASH_OF(CONF_VALUE) *conf);
static void value_free_stack_doall(CONF_VALUE *a);
-/* Up until OpenSSL 0.9.5a, this was get_section */
CONF_VALUE *_CONF_get_section(const CONF *conf, const char *section)
{
- CONF_VALUE *v, vv;
+ CONF_VALUE vv;
- if ((conf == NULL) || (section == NULL))
+ if (conf == NULL || section == NULL)
return NULL;
vv.name = NULL;
vv.section = (char *)section;
- v = lh_CONF_VALUE_retrieve(conf->data, &vv);
- return v;
+ return lh_CONF_VALUE_retrieve(conf->data, &vv);
}
-/* Up until OpenSSL 0.9.5a, this was CONF_get_section */
STACK_OF(CONF_VALUE) *_CONF_get_section_values(const CONF *conf,
const char *section)
{
CONF_VALUE *v;
v = _CONF_get_section(conf, section);
- if (v != NULL)
- return ((STACK_OF(CONF_VALUE) *)v->value);
- else
+ if (v == NULL)
return NULL;
+ return ((STACK_OF(CONF_VALUE) *)v->value);
}
int _CONF_add_string(CONF *conf, CONF_VALUE *section, CONF_VALUE *value)
@@ -53,9 +49,8 @@ int _CONF_add_string(CONF *conf, CONF_VALUE *section, CONF_VALUE *value)
ts = (STACK_OF(CONF_VALUE) *)section->value;
value->section = section->section;
- if (!sk_CONF_VALUE_push(ts, value)) {
+ if (!sk_CONF_VALUE_push(ts, value))
return 0;
- }
v = lh_CONF_VALUE_insert(conf->data, value);
if (v != NULL) {
@@ -75,28 +70,26 @@ char *_CONF_get_string(const CONF *conf, const char *section,
if (name == NULL)
return NULL;
- if (conf != NULL) {
- if (section != NULL) {
- vv.name = (char *)name;
- vv.section = (char *)section;
- v = lh_CONF_VALUE_retrieve(conf->data, &vv);
- if (v != NULL)
- return v->value;
- if (strcmp(section, "ENV") == 0) {
- p = ossl_safe_getenv(name);
- if (p != NULL)
- return p;
- }
- }
- vv.section = "default";
+ if (conf == NULL)
+ return ossl_safe_getenv(name);
+ if (section != NULL) {
vv.name = (char *)name;
+ vv.section = (char *)section;
v = lh_CONF_VALUE_retrieve(conf->data, &vv);
if (v != NULL)
return v->value;
- else
- return NULL;
- } else
- return ossl_safe_getenv(name);
+ if (strcmp(section, "ENV") == 0) {
+ p = ossl_safe_getenv(name);
+ if (p != NULL)
+ return p;
+ }
+ }
+ vv.section = "default";
+ vv.name = (char *)name;
+ v = lh_CONF_VALUE_retrieve(conf->data, &vv);
+ if (v == NULL)
+ return NULL;
+ return v->value;
}
static unsigned long conf_value_hash(const CONF_VALUE *v)
@@ -110,24 +103,21 @@ static int conf_value_cmp(const CONF_VALUE *a, const CONF_VALUE *b)
if (a->section != b->section) {
i = strcmp(a->section, b->section);
- if (i)
+ if (i != 0)
return i;
}
- if ((a->name != NULL) && (b->name != NULL)) {
- i = strcmp(a->name, b->name);
- return i;
- } else if (a->name == b->name)
+ if (a->name != NULL && b->name != NULL)
+ return strcmp(a->name, b->name);
+ if (a->name == b->name)
return 0;
- else
- return ((a->name == NULL) ? -1 : 1);
+ return (a->name == NULL) ? -1 : 1;
}
int _CONF_new_data(CONF *conf)
{
- if (conf == NULL) {
+ if (conf == NULL)
return 0;
- }
if (conf->data == NULL) {
conf->data = lh_CONF_VALUE_new(conf_value_hash, conf_value_cmp);
if (conf->data == NULL)
@@ -185,7 +175,6 @@ static void value_free_stack_doall(CONF_VALUE *a)
OPENSSL_free(a);
}
-/* Up until OpenSSL 0.9.5a, this was new_section */
CONF_VALUE *_CONF_new_section(CONF *conf, const char *section)
{
STACK_OF(CONF_VALUE) *sk = NULL;