CMSDK 2.0.1
Cross-platform C++ base library and SDK for the Psyclone AIOS platform
Loading...
Searching...
No Matches
cmlabs::ConcOracle Struct Reference
Collaboration diagram for cmlabs::ConcOracle:
[legend]

Public Member Functions

 ConcOracle ()
void noteWritten (uint32 serial, uint32 sum)
void noteRead (DataMessage *m, bool dupInject)
 Record one read.
const char * reconcile (char *det, size_t detSize, bool lostInject)

Public Attributes

utils::Mutex mutex
std::map< uint32, uint32 > readCount
std::map< uint32, uint32 > expectSum
uint32 written
uint32 corrupt
uint32 torn

Detailed Description

Definition at line 127 of file ProcessMemoryConcFuzz.cpp.

Constructor & Destructor Documentation

◆ ConcOracle()

cmlabs::ConcOracle::ConcOracle ( )
inline

Definition at line 134 of file ProcessMemoryConcFuzz.cpp.

References corrupt, torn, and written.

Member Function Documentation

◆ noteRead()

void cmlabs::ConcOracle::noteRead ( DataMessage * m,
bool dupInject )
inline

Record one read.

Returns false only for an internal error.

Definition at line 143 of file ProcessMemoryConcFuzz.cpp.

References cmlabs::ConcChecksum(), corrupt, cmlabs::DataMessage::getAsString(), cmlabs::DataMessage::getInt(), cmlabs::DataMessage::isValid(), mutex, readCount, and torn.

Referenced by cmlabs::ConcReader().

◆ noteWritten()

void cmlabs::ConcOracle::noteWritten ( uint32 serial,
uint32 sum )
inline

Definition at line 136 of file ProcessMemoryConcFuzz.cpp.

References expectSum, mutex, and written.

Referenced by cmlabs::ConcResizer(), and cmlabs::ConcWriter().

◆ reconcile()

const char * cmlabs::ConcOracle::reconcile ( char * det,
size_t detSize,
bool lostInject )
inline
Returns
NULL if consistent, else a static classification string. Fills detail.

Definition at line 162 of file ProcessMemoryConcFuzz.cpp.

References corrupt, expectSum, mutex, readCount, torn, and written.

Referenced by cmlabs::ConcRunThreaded().

Member Data Documentation

◆ corrupt

uint32 cmlabs::ConcOracle::corrupt

Definition at line 132 of file ProcessMemoryConcFuzz.cpp.

Referenced by ConcOracle(), noteRead(), and reconcile().

◆ expectSum

std::map<uint32, uint32> cmlabs::ConcOracle::expectSum

◆ mutex

utils::Mutex cmlabs::ConcOracle::mutex

◆ readCount

std::map<uint32, uint32> cmlabs::ConcOracle::readCount

Definition at line 129 of file ProcessMemoryConcFuzz.cpp.

Referenced by noteRead(), and reconcile().

◆ torn

uint32 cmlabs::ConcOracle::torn

Definition at line 133 of file ProcessMemoryConcFuzz.cpp.

Referenced by ConcOracle(), noteRead(), and reconcile().

◆ written

uint32 cmlabs::ConcOracle::written

The documentation for this struct was generated from the following file: