Fix compile on OS X. This might break *nix compile unless CRYPTOPP_UNIX_AVAILABLE is defined.

This commit is contained in:
Steve Checkoway
2005-01-22 04:44:10 +00:00
parent 5bc0f4c99b
commit 00e6c619b3
2 changed files with 6 additions and 6 deletions
+5 -5
View File
@@ -15,7 +15,7 @@
#include <wincrypt.h>
#endif
#if defined(UNIX)
#if defined(CRYPTOPP_UNIX_AVAILABLE)
#include <errno.h>
#include <fcntl.h>
#include <unistd.h>
@@ -28,7 +28,7 @@ OS_RNG_Err::OS_RNG_Err(const std::string &operation)
: Exception(OTHER_ERROR, "OS_Rng: " + operation + " operation failed with error " +
#ifdef CRYPTOPP_WIN32_AVAILABLE
"0x" + IntToString(GetLastError(), 16)
#elif defined(UNIX)
#elif defined(CRYPTOPP_UNIX_AVAILABLE)
IntToString(errno)
#else
"(unknown)"
@@ -61,7 +61,7 @@ MicrosoftCryptoProvider::~MicrosoftCryptoProvider()
NonblockingRng::NonblockingRng()
{
#if defined(UNIX)
#if defined(CRYPTOPP_UNIX_AVAILABLE)
m_fd = open("/dev/urandom",O_RDONLY);
if (m_fd == -1)
throw OS_RNG_Err("open /dev/urandom");
@@ -70,7 +70,7 @@ NonblockingRng::NonblockingRng()
NonblockingRng::~NonblockingRng()
{
#if defined(UNIX)
#if defined(CRYPTOPP_UNIX_AVAILABLE)
close(m_fd);
#endif
}
@@ -90,7 +90,7 @@ void NonblockingRng::GenerateBlock(byte *output, unsigned int size)
# endif
if (!CryptGenRandom(m_Provider.GetProviderHandle(), size, output))
throw OS_RNG_Err("CryptGenRandom");
#elif defined(UNIX)
#elif defined(CRYPTOPP_UNIX_AVAILABLE)
if (read(m_fd, output, size) != int(size))
throw OS_RNG_Err("read /dev/urandom");
#else
+1 -1
View File
@@ -50,7 +50,7 @@ protected:
# ifndef WORKAROUND_MS_BUG_Q258000
MicrosoftCryptoProvider m_Provider;
# endif
#elif defined(UNIX)
#elif defined(CRYPTOPP_UNIX_AVAILABLE)
int m_fd;
#endif
};