| 152 | } |
| 153 | |
| 154 | void master_service::proc_on_init() |
| 155 | { |
| 156 | if (var_cfg_crt_file == NULL || *var_cfg_crt_file == 0 |
| 157 | || var_cfg_key_file == NULL || *var_cfg_key_file == 0) { |
| 158 | return; |
| 159 | } |
| 160 | |
| 161 | bool use_polarssl = false; |
| 162 | |
| 163 | if (strstr(var_cfg_libssl_path, "mbedtls")) { |
| 164 | acl::mbedtls_conf::set_libpath(var_cfg_libcrypto_path, |
| 165 | var_cfg_libx509_path, var_cfg_libssl_path); |
| 166 | if (!acl::mbedtls_conf::load()) { |
| 167 | logger_error("load %s error", var_cfg_libssl_path); |
| 168 | return; |
| 169 | } |
| 170 | |
| 171 | conf_ = new acl::mbedtls_conf(true); |
| 172 | } else if (strstr(var_cfg_libssl_path, "polarssl")) { |
| 173 | acl::polarssl_conf::set_libpath(var_cfg_libssl_path); |
| 174 | if (!acl::polarssl_conf::load()) { |
| 175 | logger_error("load %s error", var_cfg_libssl_path); |
| 176 | return; |
| 177 | } |
| 178 | |
| 179 | conf_ = new acl::polarssl_conf(); |
| 180 | use_polarssl = true; |
| 181 | } else if (strstr(var_cfg_libssl_path, "libssl")) { |
| 182 | acl::openssl_conf::set_libpath(var_cfg_libcrypto_path, |
| 183 | var_cfg_libssl_path); |
| 184 | if (!acl::openssl_conf::load()) { |
| 185 | logger_error("load ssl error, crypto=%s, ssl=%s", |
| 186 | var_cfg_libcrypto_path, var_cfg_libssl_path); |
| 187 | } |
| 188 | conf_ = new acl::openssl_conf(true); |
| 189 | } else { |
| 190 | logger_error("not support this ssl lib=%s!", var_cfg_libssl_path); |
| 191 | exit (1); |
| 192 | } |
| 193 | |
| 194 | //var_cfg_tls_1_3_force = 1; |
| 195 | |
| 196 | if (var_cfg_tls_1_2_force) { |
| 197 | conf_->set_version(acl::tls_ver_1_2, acl::tls_ver_1_2); |
| 198 | } else if (var_cfg_tls_1_3_force) { |
| 199 | conf_->set_version(acl::tls_ver_1_3, acl::tls_ver_1_3); |
| 200 | } else { |
| 201 | conf_->set_version(acl::tls_ver_1_2, acl::tls_ver_1_3); |
| 202 | } |
| 203 | |
| 204 | // ��������˵� SSL �Ự���湦�� |
| 205 | conf_->enable_cache(var_cfg_session_cache); |
| 206 | |
| 207 | if (use_polarssl) { |
| 208 | // ���ӱ��ط����֤�� |
| 209 | if (!conf_->add_cert(var_cfg_crt_file)) { |
| 210 | logger_error("add cert failed, crt: %s, key: %s", |
| 211 | var_cfg_crt_file, var_cfg_key_file); |
nothing calls this directly
no test coverage detected