X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;f=starttls.c;fp=starttls.c;h=f0d61ce45bfc2c9bd2885c98c1f75d298d86280d;hb=12c7a928b7c41beec90589d7473090e29244bfcb;hp=4c95786627c3fa06780dd94343f67c768fc8244c;hpb=16c8b007b96c620ccff106a2b41057fe55e6b9b8;p=elisp%2Fstarttls.git diff --git a/starttls.c b/starttls.c index 4c95786..f0d61ce 100644 --- a/starttls.c +++ b/starttls.c @@ -344,6 +344,7 @@ main (argc, argv) if (FD_ISSET (tls_fd, &readfds)) #endif { +readtop: if (tls_conn) nbuffer = SSL_read (tls_conn, buffer, sizeof buffer -1); else @@ -367,6 +368,8 @@ main (argc, argv) wrote = write (out, retry, nbuffer); if (wrote < 0) goto finish; } + if (tls_conn && SSL_pending(tls_conn)) + goto readtop; } }