ssl-proxy-gnutls.c revision 4307c886579381dbb1897ea1388ae6978c96f560
c865b0e9c65fd77f7b2ab6f8616d3def5501ecb3Timo Sirainen/* Copyright (c) 2002-2012 Dovecot authors, see the included COPYING file */
c865b0e9c65fd77f7b2ab6f8616d3def5501ecb3Timo Sirainen { GNUTLS_KX_DHE_DSS, GNUTLS_KX_RSA, GNUTLS_KX_DHE_RSA, 0 };
c865b0e9c65fd77f7b2ab6f8616d3def5501ecb3Timo Sirainen { GNUTLS_CIPHER_RIJNDAEL_CBC, GNUTLS_CIPHER_3DES_CBC,
c865b0e9c65fd77f7b2ab6f8616d3def5501ecb3Timo Sirainen GNUTLS_CIPHER_ARCFOUR_128, GNUTLS_CIPHER_ARCFOUR_40, 0 };
c865b0e9c65fd77f7b2ab6f8616d3def5501ecb3Timo Sirainen { GNUTLS_COMP_LZO, GNUTLS_COMP_ZLIB, GNUTLS_COMP_NULL, 0 };
c865b0e9c65fd77f7b2ab6f8616d3def5501ecb3Timo Sirainenstatic gnutls_certificate_credentials x509_cred;
c865b0e9c65fd77f7b2ab6f8616d3def5501ecb3Timo Sirainenstatic void ssl_input(struct ssl_proxy *proxy);
c865b0e9c65fd77f7b2ab6f8616d3def5501ecb3Timo Sirainenstatic void plain_input(struct ssl_proxy *proxy);
c865b0e9c65fd77f7b2ab6f8616d3def5501ecb3Timo Sirainenstatic bool ssl_proxy_destroy(struct ssl_proxy *proxy);
c865b0e9c65fd77f7b2ab6f8616d3def5501ecb3Timo Sirainenstatic const char *get_alert_text(struct ssl_proxy *proxy)
if (!verbose_ssl)
if (verbose_ssl) {
int rcvd;
if (rcvd > 0)
return rcvd;
int sent;
if (sent >= 0)
return sent;
return TRUE;
main_unref();
return FALSE;
int sent;
if (sent < 0) {
if (rcvd <= 0)
if (sent < 0) {
int sent;
if (sent <= 0)
if (rcvd < 0) {
if (ret >= 0) {
return session;
if (!ssl_initialized) {
main_ref();
if (ret < 0)
fname);
if (ret < 0)
if (bits == 0)
if (ret < 0) {
gnutls_datum m, e, d, p, q, u;
int ret;
if (ret < 0) {
int fd;
T_BEGIN {
} T_END;
void ssl_proxy_init(void)
int ret;
if (ret < 0) {
void ssl_proxy_deinit(void)
if (!ssl_initialized)