Crypto++  5.6.3
Free C++ class library of cryptographic schemes
Public Types | Public Member Functions | List of all members
OS_RNG_Err Class Reference

Exception thrown when an operating system error is encountered. More...

+ Inheritance diagram for OS_RNG_Err:

Public Types

enum  ErrorType {
  NOT_IMPLEMENTED, INVALID_ARGUMENT, CANNOT_FLUSH, DATA_INTEGRITY_CHECK_FAILED,
  INVALID_DATA_FORMAT, IO_ERROR, OTHER_ERROR
}
 error types More...
 

Public Member Functions

 OS_RNG_Err (const std::string &operation)
 Constructs an OS_RNG_Err. More...
 
const char * what () const throw ()
 Retrieves a C-string describing the exception.
 
const std::string & GetWhat () const
 Retrieves a string describing the exception.
 
void SetWhat (const std::string &s)
 Sets the error string for the exception.
 
ErrorType GetErrorType () const
 Retrieves the error type for the exception.
 
void SetErrorType (ErrorType errorType)
 Sets the error type for the exceptions.
 

Detailed Description

Exception thrown when an operating system error is encountered.

Definition at line 26 of file osrng.h.

Member Enumeration Documentation

enum Exception::ErrorType
inherited

error types

Enumerator
NOT_IMPLEMENTED 

A method was called which was not implemented.

INVALID_ARGUMENT 

An invalid argument was detected.

CANNOT_FLUSH 

BufferedTransformation received a Flush(true) signal but can't flush buffers.

DATA_INTEGRITY_CHECK_FAILED 

Data integerity check, such as CRC or MAC, failed.

INVALID_DATA_FORMAT 

Input data was received that did not conform to expected format.

IO_ERROR 

Error reading from input device or writing to output device.

OTHER_ERROR 

Some other error occurred not belong to any of the above categories.

Definition at line 128 of file cryptlib.h.

Constructor & Destructor Documentation

OS_RNG_Err::OS_RNG_Err ( const std::string &  operation)

Constructs an OS_RNG_Err.

Parameters
operationthe operation or API call when the error occurs

Definition at line 32 of file osrng.cpp.

Referenced by BlockingRng::BlockingRng(), NonblockingRng::GenerateBlock(), BlockingRng::GenerateBlock(), MicrosoftCryptoProvider::MicrosoftCryptoProvider(), and NonblockingRng::NonblockingRng().


The documentation for this class was generated from the following files: