From 9900ff6060530a15f4782d6f7f49c0266c7b6462 Mon Sep 17 00:00:00 2001 From: Nikos Mavrogiannopoulos Date: Fri, 1 Mar 2013 23:39:47 +0100 Subject: [PATCH] simplified certificate request and require setting. --- src/config.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/config.c b/src/config.c index 16efb291..1a95fc76 100644 --- a/src/config.c +++ b/src/config.c @@ -125,7 +125,6 @@ unsigned j; #endif } else if (strcasecmp(auth[j], "certificate") == 0) { config->auth_types |= AUTH_TYPE_CERTIFICATE; - config->cert_req = GNUTLS_CERT_REQUEST; } else { fprintf(stderr, "Unknown auth method: %s\n", auth[j]); exit(1); @@ -240,8 +239,12 @@ static void check_cfg( struct cfg_st *config) config->cert_hash = calc_sha1_hash(config->cert, 1); } - if (config->force_cert_auth && config->cert_req == GNUTLS_CERT_REQUEST) - config->cert_req = GNUTLS_CERT_REQUIRE; + if (config->auth_types & AUTH_TYPE_CERTIFICATE) { + if (config->force_cert_auth) + config->cert_req = GNUTLS_CERT_REQUIRE; + else + config->cert_req = GNUTLS_CERT_REQUEST; + } if (config->xml_config_file) { config->xml_config_hash = calc_sha1_hash(config->xml_config_file, 0);