| 168 | } |
| 169 | |
| 170 | void master_service::proc_on_init() |
| 171 | { |
| 172 | if (var_cfg_crt_file == NULL || *var_cfg_crt_file == 0 |
| 173 | || var_cfg_key_file == NULL || *var_cfg_key_file == 0) { |
| 174 | return; |
| 175 | } |
| 176 | |
| 177 | if (var_cfg_use_mbedtls) { |
| 178 | acl::string buf(var_cfg_ssl_path); |
| 179 | const std::vector<acl::string>& libs = buf.split2("; \t\r\n"); |
| 180 | if (libs.size() != 3) { |
| 181 | logger_error("invalid ssl_path=%s", var_cfg_ssl_path); |
| 182 | return; |
| 183 | } |
| 184 | acl::mbedtls_conf::set_libpath(libs[0], libs[1], libs[2]); |
| 185 | if (!acl::mbedtls_conf::load()) { |
| 186 | logger_error("load %s error", var_cfg_ssl_path); |
| 187 | return; |
| 188 | } |
| 189 | } else { |
| 190 | acl::polarssl_conf::set_libpath(var_cfg_ssl_path); |
| 191 | if (!acl::polarssl_conf::load()) { |
| 192 | logger_error("load %s error", var_cfg_ssl_path); |
| 193 | return; |
| 194 | } |
| 195 | } |
| 196 | |
| 197 | if (var_cfg_use_mbedtls) { |
| 198 | conf_ = new acl::mbedtls_conf(true); |
| 199 | } else { |
| 200 | conf_ = new acl::polarssl_conf(); |
| 201 | } |
| 202 | |
| 203 | //conf_->set_version(acl::tls_ver_1_3, acl::tls_ver_1_3); |
| 204 | |
| 205 | // ��������˵� SSL �Ự���湦�� |
| 206 | conf_->enable_cache(var_cfg_session_cache); |
| 207 | |
| 208 | if (var_cfg_use_mbedtls) { |
| 209 | if (!conf_->add_cert(var_cfg_crt_file, var_cfg_key_file)) { |
| 210 | logger_error("add cert failed, crt: %s, key: %s", |
| 211 | var_cfg_crt_file, var_cfg_key_file); |
| 212 | delete conf_; |
| 213 | conf_ = NULL; |
| 214 | return; |
| 215 | } |
| 216 | } else { |
| 217 | // ���ӱ��ط����֤�� |
| 218 | if (!conf_->add_cert(var_cfg_crt_file)) { |
| 219 | logger_error("add cert failed, crt: %s, key: %s", |
| 220 | var_cfg_crt_file, var_cfg_key_file); |
| 221 | delete conf_; |
| 222 | conf_ = NULL; |
| 223 | return; |
| 224 | } |
| 225 | |
| 226 | // ���ӱ��ط�����Կ |
| 227 | if (!conf_->set_key(var_cfg_key_file)) { |
nothing calls this directly
no test coverage detected