static int newsnntp_cfssl_connect_ssl_level(newsnntp * f, const char * server, uint16_t port, int ssl_level) { mailstream * stream; int r; stream = mailstream_cfstream_open(server, port); if (stream == NULL) { return NEWSNNTP_ERROR_CONNECTION_REFUSED; } mailstream_cfstream_set_ssl_level(stream, ssl_level); mailstream_cfstream_set_ssl_verification_mask(stream, MAILSTREAM_CFSTREAM_SSL_NO_VERIFICATION); r = mailstream_cfstream_set_ssl_enabled(stream, 1); if (r < 0) { mailstream_close(stream); return NEWSNNTP_ERROR_SSL; } return newsnntp_connect(f, stream); }
static int mailpop3_cfssl_connect_ssl_level(mailpop3 * f, const char * server, uint16_t port, int ssl_level) { mailstream * stream; int r; stream = mailstream_cfstream_open_timeout(server, port, f->pop3_timeout); if (stream == NULL) { return MAILPOP3_ERROR_CONNECTION_REFUSED; } mailstream_cfstream_set_ssl_level(stream, ssl_level); mailstream_cfstream_set_ssl_verification_mask(stream, MAILSTREAM_CFSTREAM_SSL_NO_VERIFICATION); r = mailstream_cfstream_set_ssl_enabled(stream, 1); if (r < 0) { mailstream_close(stream); return MAILPOP3_ERROR_SSL; } return mailpop3_connect(f, stream); }
static int mailimap_cfssl_connect_voip_ssl_level(mailimap * f, const char * server, uint16_t port, int voip_enabled, int ssl_level) { mailstream * stream; int r; stream = mailstream_cfstream_open_voip_timeout(server, port, voip_enabled, f->imap_timeout); if (stream == NULL) { return MAILIMAP_ERROR_CONNECTION_REFUSED; } mailstream_cfstream_set_ssl_level(stream, ssl_level); mailstream_cfstream_set_ssl_verification_mask(stream, MAILSTREAM_CFSTREAM_SSL_DISABLE_VALIDATES_CERTIFICATE_CHAIN); r = mailstream_cfstream_set_ssl_enabled(stream, 1); if (r < 0) { mailstream_close(stream); return MAILIMAP_ERROR_SSL; } return mailimap_connect(f, stream); }