aboutsummaryrefslogtreecommitdiffstats
path: root/lib/ssl_nss.c
diff options
context:
space:
mode:
authorWilmer van der Gaast <wilmer@gaast.net>2010-12-19 11:16:20 +0000
committerWilmer van der Gaast <wilmer@gaast.net>2010-12-19 11:16:20 +0000
commit31c28a493b9504c87d2bc316ce832a80d26ba92e (patch)
treef02252a133094e4b9173ea457f20f9ff858f6961 /lib/ssl_nss.c
parentb9de97b5fe41cbbb5be3c748b60364443fc8ab91 (diff)
Implement ssl_pending() for NSS. This fixes bug #368 which so far only
affected OpenSSL. Submitted by Ricky Zhou.
Diffstat (limited to 'lib/ssl_nss.c')
-rw-r--r--lib/ssl_nss.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/lib/ssl_nss.c b/lib/ssl_nss.c
index dee20b05..512c7655 100644
--- a/lib/ssl_nss.c
+++ b/lib/ssl_nss.c
@@ -209,7 +209,13 @@ int ssl_write( void *conn, const char *buf, int len )
/* See ssl_openssl.c for an explanation. */
int ssl_pending( void *conn )
{
- return 0;
+ struct scd *c = (struct scd *) conn;
+
+ if( c == NULL ) {
+ return 0;
+ }
+
+ return ( c->established && SSL_DataPending( c->prfd ) > 0 );
}
void ssl_disconnect( void *conn_ )