diff options
Diffstat (limited to 'libproto/pop/pop3_stls.c')
-rw-r--r-- | libproto/pop/pop3_stls.c | 62 |
1 files changed, 1 insertions, 61 deletions
diff --git a/libproto/pop/pop3_stls.c b/libproto/pop/pop3_stls.c index a5a292776..d4653ca25 100644 --- a/libproto/pop/pop3_stls.c +++ b/libproto/pop/pop3_stls.c @@ -28,55 +28,6 @@ #include <mailutils/tls.h> #include <mailutils/list.h> -static int -pop3_get_streams (mu_pop3_t pop3, mu_stream_t *streams) -{ - int rc; - - if (MU_POP3_FISSET (pop3, MU_POP3_TRACE)) - rc = mu_stream_ioctl (pop3->carrier, MU_IOCTL_SUBSTREAM, - MU_IOCTL_OP_GET, streams); - else - { - streams[0] = pop3->carrier; - mu_stream_ref (streams[0]); - streams[1] = pop3->carrier; - mu_stream_ref (streams[1]); - rc = 0; - } - return rc; -} - -static int -pop3_set_streams (mu_pop3_t pop3, mu_stream_t *streams) -{ - int rc; - - if (MU_POP3_FISSET (pop3, MU_POP3_TRACE)) - rc = mu_stream_ioctl (pop3->carrier, MU_IOCTL_SUBSTREAM, - MU_IOCTL_OP_SET, streams); - else - { - mu_stream_t tmp; - - if (streams[0] == streams[1]) - { - tmp = streams[0]; - mu_stream_ref (tmp); - mu_stream_ref (tmp); - rc = 0; - } - else - rc = mu_iostream_create (&tmp, streams[0], streams[1]); - if (rc == 0) - { - mu_stream_unref (pop3->carrier); - pop3->carrier = tmp; - } - } - return rc; -} - /* * STLS * We have to assume that the caller check the CAPA and TLS was supported. @@ -86,7 +37,6 @@ mu_pop3_stls (mu_pop3_t pop3) { #ifdef WITH_TLS int status; - mu_stream_t tlsstream, streams[2]; /* Sanity checks. */ if (pop3 == NULL) @@ -107,17 +57,7 @@ mu_pop3_stls (mu_pop3_t pop3) pop3->state = MU_POP3_STLS_CONNECT; case MU_POP3_STLS_CONNECT: - status = pop3_get_streams (pop3, streams); - MU_POP3_CHECK_EAGAIN (pop3, status); - status = mu_tls_client_stream_create (&tlsstream, - streams[0], streams[1], 0); - mu_stream_unref (streams[0]); - mu_stream_unref (streams[1]); - MU_POP3_CHECK_EAGAIN (pop3, status); - streams[0] = streams[1] = tlsstream; - status = pop3_set_streams (pop3, streams); - mu_stream_unref (streams[0]); - mu_stream_unref (streams[1]); + status = mu_starttls (&pop3->carrier, NULL, MU_TLS_CLIENT); MU_POP3_CHECK_EAGAIN (pop3, status); /* Invalidate the capability list */ mu_list_destroy (&pop3->capa); |