Consistently use 'void *' for SSL read, peek and write functions.
diff --git a/doc/ssl/SSL_read.pod b/doc/ssl/SSL_read.pod
index 91f068a..7db5ee0 100644
--- a/doc/ssl/SSL_read.pod
+++ b/doc/ssl/SSL_read.pod
@@ -8,7 +8,7 @@
 
  #include <openssl/ssl.h>
 
- int SSL_read(SSL *ssl, char *buf, int num);
+ int SSL_read(SSL *ssl, void *buf, int num);
 
 =head1 DESCRIPTION
 
diff --git a/doc/ssl/SSL_write.pod b/doc/ssl/SSL_write.pod
index 6e3ecff..be1ad76 100644
--- a/doc/ssl/SSL_write.pod
+++ b/doc/ssl/SSL_write.pod
@@ -8,7 +8,7 @@
 
  #include <openssl/ssl.h>
 
- int SSL_write(SSL *ssl, char *buf, int num);
+ int SSL_write(SSL *ssl, const void *buf, int num);
 
 =head1 DESCRIPTION
 
diff --git a/doc/ssl/ssl.pod b/doc/ssl/ssl.pod
index b0255e3..aace43f 100644
--- a/doc/ssl/ssl.pod
+++ b/doc/ssl/ssl.pod
@@ -544,11 +544,11 @@
 
 =item long B<SSL_num_renegotiations>(SSL *ssl);
 
-=item int B<SSL_peek>(SSL *ssl, char *buf, int num);
+=item int B<SSL_peek>(SSL *ssl, void *buf, int num);
 
 =item int B<SSL_pending>(SSL *ssl);
 
-=item int B<SSL_read>(SSL *ssl, char *buf, int num);
+=item int B<SSL_read>(SSL *ssl, void *buf, int num);
 
 =item int B<SSL_renegotiate>(SSL *ssl);
 
@@ -640,7 +640,7 @@
 
 =item int B<SSL_want_x509_lookup>(s);
 
-=item int B<SSL_write>(SSL *ssl, char *buf, int num);
+=item int B<SSL_write>(SSL *ssl, const void *buf, int num);
 
 =back
 
diff --git a/ssl/s2_pkt.c b/ssl/s2_pkt.c
index d2dbf34..4340404 100644
--- a/ssl/s2_pkt.c
+++ b/ssl/s2_pkt.c
@@ -300,7 +300,7 @@
 	return ssl2_read_internal(s, buf, len, 0);
 	}
 
-int ssl2_peek(SSL *s, char *buf, int len)
+int ssl2_peek(SSL *s, void *buf, int len)
 	{
 	return ssl2_read_internal(s, buf, len, 1);
 	}
diff --git a/ssl/s3_lib.c b/ssl/s3_lib.c
index e9aae56..31f4f80 100644
--- a/ssl/s3_lib.c
+++ b/ssl/s3_lib.c
@@ -1615,7 +1615,7 @@
 	return ssl3_read_internal(s, buf, len, 0);
 	}
 
-int ssl3_peek(SSL *s, char *buf, int len)
+int ssl3_peek(SSL *s, void *buf, int len)
 	{
 	return ssl3_read_internal(s, buf, len, 1);
 	}
diff --git a/ssl/ssl.h b/ssl/ssl.h
index fa0e658..457e7ef 100644
--- a/ssl/ssl.h
+++ b/ssl/ssl.h
@@ -226,7 +226,7 @@
 	int (*ssl_accept)(SSL *s);
 	int (*ssl_connect)(SSL *s);
 	int (*ssl_read)(SSL *s,void *buf,int len);
-	int (*ssl_peek)(SSL *s,char *buf,int len);
+	int (*ssl_peek)(SSL *s,void *buf,int len);
 	int (*ssl_write)(SSL *s,const void *buf,int len);
 	int (*ssl_shutdown)(SSL *s);
 	int (*ssl_renegotiate)(SSL *s);
@@ -1102,9 +1102,9 @@
 void	SSL_free(SSL *ssl);
 int 	SSL_accept(SSL *ssl);
 int 	SSL_connect(SSL *ssl);
-int 	SSL_read(SSL *ssl,char *buf,int num);
-int 	SSL_peek(SSL *ssl,char *buf,int num);
-int 	SSL_write(SSL *ssl,const char *buf,int num);
+int 	SSL_read(SSL *ssl,void *buf,int num);
+int 	SSL_peek(SSL *ssl,void *buf,int num);
+int 	SSL_write(SSL *ssl,const void *buf,int num);
 long	SSL_ctrl(SSL *ssl,int cmd, long larg, char *parg);
 long	SSL_callback_ctrl(SSL *, int, void (*)());
 long	SSL_CTX_ctrl(SSL_CTX *ctx,int cmd, long larg, char *parg);
diff --git a/ssl/ssl_lib.c b/ssl/ssl_lib.c
index 9a593ed..f8207fa 100644
--- a/ssl/ssl_lib.c
+++ b/ssl/ssl_lib.c
@@ -766,7 +766,7 @@
 	return(s->method->get_timeout());
 	}
 
-int SSL_read(SSL *s,char *buf,int num)
+int SSL_read(SSL *s,void *buf,int num)
 	{
 	if (s->handshake_func == 0)
 		{
@@ -782,7 +782,7 @@
 	return(s->method->ssl_read(s,buf,num));
 	}
 
-int SSL_peek(SSL *s,char *buf,int num)
+int SSL_peek(SSL *s,void *buf,int num)
 	{
 	if (s->handshake_func == 0)
 		{
@@ -797,7 +797,7 @@
 	return(s->method->ssl_peek(s,buf,num));
 	}
 
-int SSL_write(SSL *s,const char *buf,int num)
+int SSL_write(SSL *s,const void *buf,int num)
 	{
 	if (s->handshake_func == 0)
 		{
diff --git a/ssl/ssl_locl.h b/ssl/ssl_locl.h
index a5b1e38..6f3b710 100644
--- a/ssl/ssl_locl.h
+++ b/ssl/ssl_locl.h
@@ -526,7 +526,7 @@
 int	ssl2_accept(SSL *s);
 int	ssl2_connect(SSL *s);
 int	ssl2_read(SSL *s, void *buf, int len);
-int	ssl2_peek(SSL *s, char *buf, int len);
+int	ssl2_peek(SSL *s, void *buf, int len);
 int	ssl2_write(SSL *s, const void *buf, int len);
 int	ssl2_shutdown(SSL *s);
 void	ssl2_clear(SSL *s);
@@ -574,7 +574,7 @@
 int	ssl3_accept(SSL *s);
 int	ssl3_connect(SSL *s);
 int	ssl3_read(SSL *s, void *buf, int len);
-int	ssl3_peek(SSL *s,char *buf, int len);
+int	ssl3_peek(SSL *s, void *buf, int len);
 int	ssl3_write(SSL *s, const void *buf, int len);
 int	ssl3_shutdown(SSL *s);
 void	ssl3_clear(SSL *s);