SharedMemoryCommon.h [plain text]
#ifndef __SHARED_MEMORY_COMMON__
#define __SHARED_MEMORY_COMMON__
#include <sys/types.h>
const unsigned kSegmentSize = 4096;
const unsigned kNumberOfSegments = 8;
const unsigned kSharedMemoryPoolSize = kSegmentSize * kNumberOfSegments;
const unsigned kBytesWrittenOffset = 0;
const unsigned kBytesWrittenLength = 4;
const unsigned kPoolAvailableForData = kSharedMemoryPoolSize - kBytesWrittenLength;
typedef u_int32_t SegmentOffsetType;
class SharedMemoryCommon
{
public:
SharedMemoryCommon() {}
virtual ~SharedMemoryCommon ();
static uid_t fixUID(uid_t uid) { return (uid < 500) ? 0 : uid; }
static std::string SharedMemoryFilePath(const char *segmentName, uid_t uid);
static std::string notificationDescription(int domain, int event);
constexpr static const char* const kMDSDirectory = "/private/var/db/mds/";
constexpr static const char* const kMDSMessagesDirectory = "/private/var/db/mds/messages/";
constexpr static const char* const kUserPrefix = "se_";
constexpr static const char* const kDefaultSecurityMessagesName = "SecurityMessages";
};
#endif