summaryrefslogtreecommitdiff
path: root/Cryptlib/OpenSSL/crypto/des/enc_read.c
diff options
context:
space:
mode:
Diffstat (limited to 'Cryptlib/OpenSSL/crypto/des/enc_read.c')
-rw-r--r--Cryptlib/OpenSSL/crypto/des/enc_read.c25
1 files changed, 16 insertions, 9 deletions
diff --git a/Cryptlib/OpenSSL/crypto/des/enc_read.c b/Cryptlib/OpenSSL/crypto/des/enc_read.c
index 8746e8b2..fcb66541 100644
--- a/Cryptlib/OpenSSL/crypto/des/enc_read.c
+++ b/Cryptlib/OpenSSL/crypto/des/enc_read.c
@@ -65,7 +65,7 @@
/*
* extern int errno;
*/
-OPENSSL_IMPLEMENT_GLOBAL(int, DES_rw_mode) = DES_PCBC_MODE;
+OPENSSL_IMPLEMENT_GLOBAL(int, DES_rw_mode, DES_PCBC_MODE)
/*-
* WARNINGS:
@@ -83,10 +83,12 @@ OPENSSL_IMPLEMENT_GLOBAL(int, DES_rw_mode) = DES_PCBC_MODE;
* - This function uses an internal state and thus cannot be
* used on multiple files.
*/
-
int DES_enc_read(int fd, void *buf, int len, DES_key_schedule *sched,
DES_cblock *iv)
{
+#if defined(OPENSSL_NO_POSIX_IO)
+ return (0);
+#else
/* data to be unencrypted */
int net_num = 0;
static unsigned char *net = NULL;
@@ -145,15 +147,15 @@ int DES_enc_read(int fd, void *buf, int len, DES_key_schedule *sched,
/* first - get the length */
while (net_num < HDRSIZE) {
-#ifndef _WIN32
+# ifndef OPENSSL_SYS_WIN32
i = read(fd, (void *)&(net[net_num]), HDRSIZE - net_num);
-#else
+# else
i = _read(fd, (void *)&(net[net_num]), HDRSIZE - net_num);
-#endif
-#ifdef EINTR
+# endif
+# ifdef EINTR
if ((i == -1) && (errno == EINTR))
continue;
-#endif
+# endif
if (i <= 0)
return (0);
net_num += i;
@@ -173,11 +175,15 @@ int DES_enc_read(int fd, void *buf, int len, DES_key_schedule *sched,
net_num = 0;
while (net_num < rnum) {
+# ifndef OPENSSL_SYS_WIN32
i = read(fd, (void *)&(net[net_num]), rnum - net_num);
-#ifdef EINTR
+# else
+ i = _read(fd, (void *)&(net[net_num]), rnum - net_num);
+# endif
+# ifdef EINTR
if ((i == -1) && (errno == EINTR))
continue;
-#endif
+# endif
if (i <= 0)
return (0);
net_num += i;
@@ -225,4 +231,5 @@ int DES_enc_read(int fd, void *buf, int len, DES_key_schedule *sched,
}
}
return num;
+#endif /* OPENSSL_NO_POSIX_IO */
}