aboutsummaryrefslogtreecommitdiffstats
path: root/crypto/bio/bss_bio.c
diff options
context:
space:
mode:
Diffstat (limited to 'crypto/bio/bss_bio.c')
-rw-r--r--crypto/bio/bss_bio.c47
1 files changed, 13 insertions, 34 deletions
diff --git a/crypto/bio/bss_bio.c b/crypto/bio/bss_bio.c
index 94cc63c9fe6..0d0f9356f7d 100644
--- a/crypto/bio/bss_bio.c
+++ b/crypto/bio/bss_bio.c
@@ -19,20 +19,14 @@
#include <openssl/bio.h>
#include <openssl/err.h>
-#include <openssl/err.h>
#include <openssl/crypto.h>
-#include "openssl/e_os.h"
-#ifndef SSIZE_MAX
-# define SSIZE_MAX INT_MAX
-#endif
-
static int bio_new(BIO *bio);
static int bio_free(BIO *bio);
static int bio_read(BIO *bio, char *buf, int size);
-static int bio_write(BIO *bio, const char *buf, int num);
+static int bio_write(BIO *bio, char *buf, int num);
static long bio_ctrl(BIO *bio, int cmd, long num, void *ptr);
-static int bio_puts(BIO *bio, const char *str);
+static int bio_puts(BIO *bio, char *str);
static int bio_make_pair(BIO *bio1, BIO *bio2);
static void bio_destroy_pair(BIO *bio);
@@ -211,10 +205,10 @@ static int bio_read(BIO *bio, char *buf, int size_)
*/
/* WARNING: The non-copying interface is largely untested as of yet
* and may contain bugs. */
-static ssize_t bio_nread0(BIO *bio, char **buf)
+static size_t bio_nread0(BIO *bio, char **buf)
{
struct bio_bio_st *b, *peer_b;
- ssize_t num;
+ size_t num;
BIO_clear_retry_flags(bio);
@@ -249,20 +243,15 @@ static ssize_t bio_nread0(BIO *bio, char **buf)
return num;
}
-static ssize_t bio_nread(BIO *bio, char **buf, size_t num_)
+static size_t bio_nread(BIO *bio, char **buf, size_t num)
{
struct bio_bio_st *b, *peer_b;
- ssize_t num, available;
-
- if (num_ > SSIZE_MAX)
- num = SSIZE_MAX;
- else
- num = (ssize_t)num_;
+ size_t available;
available = bio_nread0(bio, buf);
if (num > available)
num = available;
- if (num <= 0)
+ if (num == 0)
return num;
b = bio->ptr;
@@ -283,7 +272,7 @@ static ssize_t bio_nread(BIO *bio, char **buf, size_t num_)
}
-static int bio_write(BIO *bio, const char *buf, int num_)
+static int bio_write(BIO *bio, char *buf, int num_)
{
size_t num = num_;
size_t rest;
@@ -362,7 +351,7 @@ static int bio_write(BIO *bio, const char *buf, int num_)
* (example usage: bio_nwrite0(), write to buffer, bio_nwrite()
* or just bio_nwrite(), write to buffer)
*/
-static ssize_t bio_nwrite0(BIO *bio, char **buf)
+static size_t bio_nwrite0(BIO *bio, char **buf)
{
struct bio_bio_st *b;
size_t num;
@@ -410,20 +399,15 @@ static ssize_t bio_nwrite0(BIO *bio, char **buf)
return num;
}
-static ssize_t bio_nwrite(BIO *bio, char **buf, size_t num_)
+static size_t bio_nwrite(BIO *bio, char **buf, size_t num)
{
struct bio_bio_st *b;
- ssize_t num, space;
-
- if (num_ > SSIZE_MAX)
- num = SSIZE_MAX;
- else
- num = (ssize_t)num_;
+ size_t space;
space = bio_nwrite0(bio, buf);
if (num > space)
num = space;
- if (num <= 0)
+ if (num == 0)
return num;
b = bio->ptr;
assert(b != NULL);
@@ -525,11 +509,6 @@ static long bio_ctrl(BIO *bio, int cmd, long num, void *ptr)
ret = 1;
break;
- case BIO_C_NREAD0:
- /* prepare for non-copying read */
- ret = (long) bio_nread0(bio, ptr);
- break;
-
case BIO_C_NREAD:
/* non-copying read */
ret = (long) bio_nread(bio, ptr, (size_t) num);
@@ -628,7 +607,7 @@ static long bio_ctrl(BIO *bio, int cmd, long num, void *ptr)
return ret;
}
-static int bio_puts(BIO *bio, const char *str)
+static int bio_puts(BIO *bio, char *str)
{
return bio_write(bio, str, strlen(str));
}