summaryrefslogtreecommitdiffstats
path: root/ssl
diff options
context:
space:
mode:
authorRichard Levitte <levitte@openssl.org>2001-07-15 20:11:57 +0000
committerRichard Levitte <levitte@openssl.org>2001-07-15 20:11:57 +0000
commit24cbf3efc68cc3b6f41c39960e72f69b0ed9fe60 (patch)
tree72031dbff61bad440f9656a036ae1a6bcb5482af /ssl
parent534a1ed0cba281f7a51291777964f5dd683abede (diff)
SSL_get_[rw]fd were documented but not implemented.
Diffstat (limited to 'ssl')
-rw-r--r--ssl/ssl.h2
-rw-r--r--ssl/ssl_lib.c17
2 files changed, 19 insertions, 0 deletions
diff --git a/ssl/ssl.h b/ssl/ssl.h
index 216afd917f..61424ebab5 100644
--- a/ssl/ssl.h
+++ b/ssl/ssl.h
@@ -973,6 +973,8 @@ char * SSL_CIPHER_get_version(SSL_CIPHER *c);
const char * SSL_CIPHER_get_name(SSL_CIPHER *c);
int SSL_get_fd(SSL *s);
+int SSL_get_rfd(SSL *s);
+int SSL_get_wfd(SSL *s);
const char * SSL_get_cipher_list(SSL *s,int n);
char * SSL_get_shared_ciphers(SSL *s, char *buf, int len);
int SSL_get_read_ahead(SSL * s);
diff --git a/ssl/ssl_lib.c b/ssl/ssl_lib.c
index ad1af7cda3..463ed16020 100644
--- a/ssl/ssl_lib.c
+++ b/ssl/ssl_lib.c
@@ -445,6 +445,11 @@ BIO *SSL_get_wbio(SSL *s)
int SSL_get_fd(SSL *s)
{
+ return(SSL_get_rfc(s));
+ }
+
+int SSL_get_rfd(SSL *s)
+ {
int ret= -1;
BIO *b,*r;
@@ -455,6 +460,18 @@ int SSL_get_fd(SSL *s)
return(ret);
}
+int SSL_get_wfd(SSL *s)
+ {
+ int ret= -1;
+ BIO *b,*r;
+
+ b=SSL_get_wbio(s);
+ r=BIO_find_type(b,BIO_TYPE_DESCRIPTOR);
+ if (r != NULL)
+ BIO_get_fd(r,&ret);
+ return(ret);
+ }
+
#ifndef OPENSSL_NO_SOCK
int SSL_set_fd(SSL *s,int fd)
{