Lines Matching refs:s
136 network_server_init(server *srv, buffer *host_token, specific_config *s) { argument
199 s->use_ipv6 = 1;
294 if (s->set_v6only) {
437 if (s->is_ssl) {
439 if (NULL == (srv_socket->ssl_ctx = s->ssl_ctx)) {
451 } else if (s->defer_accept) {
452 int v = s->defer_accept;
472 srv_socket->is_ssl = s->is_ssl;
681 specific_config *s = srv->config_storage[i]; local
688 if (buffer_is_empty(s->ssl_pemfile)) continue;
714 if (NULL == (s->ssl_ctx = SSL_CTX_new(SSLv23_server_method()))) {
720 SSL_CTX_set_options(s->ssl_ctx, ssloptions);
721 SSL_CTX_set_info_callback(s->ssl_ctx, ssl_info_callback);
723 if (!s->ssl_use_sslv2) {
725 if (!(SSL_OP_NO_SSLv2 & SSL_CTX_set_options(s->ssl_ctx, SSL_OP_NO_SSLv2))) {
732 if (!s->ssl_use_sslv3) {
734 if (!(SSL_OP_NO_SSLv3 & SSL_CTX_set_options(s->ssl_ctx, SSL_OP_NO_SSLv3))) {
741 if (!buffer_is_empty(s->ssl_cipher_list)) {
743 if (SSL_CTX_set_cipher_list(s->ssl_ctx, s->ssl_cipher_list->ptr) != 1) {
749 if (s->ssl_honor_cipher_order) {
750 SSL_CTX_set_options(s->ssl_ctx, SSL_OP_CIPHER_SERVER_PREFERENCE);
755 if (!buffer_is_empty(s->ssl_dh_file)) {
757 bio = BIO_new_file((char *) s->ssl_dh_file->ptr, "r");
759 log_error_write(srv, __FILE__, __LINE__, "ss", "SSL: Unable to open file", s->ssl_dh_file->ptr);
765 …log_error_write(srv, __FILE__, __LINE__, "ss", "SSL: PEM_read_bio_DHparams failed", s->ssl_dh_file…
784 SSL_CTX_set_tmp_dh(s->ssl_ctx,dh);
785 SSL_CTX_set_options(s->ssl_ctx,SSL_OP_SINGLE_DH_USE);
791 if (!buffer_is_empty(s->ssl_ec_curve)) {
793 nid = OBJ_sn2nid((char *) s->ssl_ec_curve->ptr);
795 log_error_write(srv, __FILE__, __LINE__, "ss", "SSL: Unknown curve name", s->ssl_ec_curve->ptr);
804 …log_error_write(srv, __FILE__, __LINE__, "ss", "SSL: Unable to create curve", s->ssl_ec_curve->ptr…
807 SSL_CTX_set_tmp_ecdh(s->ssl_ctx,ecdh);
808 SSL_CTX_set_options(s->ssl_ctx,SSL_OP_SINGLE_ECDH_USE);
813 if (!buffer_is_empty(s->ssl_ca_file)) {
814 if (1 != SSL_CTX_load_verify_locations(s->ssl_ctx, s->ssl_ca_file->ptr, NULL)) {
816 ERR_error_string(ERR_get_error(), NULL), s->ssl_ca_file);
819 if (s->ssl_verifyclient) {
820 STACK_OF(X509_NAME) *certs = SSL_load_client_CA_file(s->ssl_ca_file->ptr);
823 ERR_error_string(ERR_get_error(), NULL), s->ssl_ca_file);
825 if (SSL_CTX_set_session_id_context(s->ssl_ctx, (void*) &srv, sizeof(srv)) != 1) {
830 SSL_CTX_set_client_CA_list(s->ssl_ctx, certs);
832 s->ssl_ctx,
833 SSL_VERIFY_PEER | (s->ssl_verifyclient_enforce ? SSL_VERIFY_FAIL_IF_NO_PEER_CERT : 0),
836 SSL_CTX_set_verify_depth(s->ssl_ctx, s->ssl_verifyclient_depth);
838 } else if (s->ssl_verifyclient) {
845 if (SSL_CTX_use_certificate_file(s->ssl_ctx, s->ssl_pemfile->ptr, SSL_FILETYPE_PEM) < 0) {
847 ERR_error_string(ERR_get_error(), NULL), s->ssl_pemfile);
851 if (SSL_CTX_use_PrivateKey_file (s->ssl_ctx, s->ssl_pemfile->ptr, SSL_FILETYPE_PEM) < 0) {
853 ERR_error_string(ERR_get_error(), NULL), s->ssl_pemfile);
857 if (SSL_CTX_check_private_key(s->ssl_ctx) != 1) {
861 s->ssl_pemfile);
864 SSL_CTX_set_default_read_ahead(s->ssl_ctx, 1);
865 SSL_CTX_set_mode(s->ssl_ctx, SSL_CTX_get_mode(s->ssl_ctx) | SSL_MODE_ACCEPT_MOVING_WRITE_BUFFER);
868 if (!SSL_CTX_set_tlsext_servername_callback(s->ssl_ctx, network_ssl_servername_callback) ||
869 !SSL_CTX_set_tlsext_servername_arg(s->ssl_ctx, srv)) {
953 specific_config *s = srv->config_storage[i]; local
970 if (0 != network_server_init(srv, dc->string, s)) return -1;