From b24866225a6301d3a663f874725e83c012dc25d3 Mon Sep 17 00:00:00 2001 From: Florent Duchon Date: Wed, 26 Dec 2012 17:36:00 +0100 Subject: digital/beacon: add bitcloud stack into common directory digital/zigbit --- .../ServiceProvider/include/private/sspMem.h | 238 +++++++++++++++++++++ 1 file changed, 238 insertions(+) create mode 100644 digital/zigbit/bitcloud/stack/Components/Security/ServiceProvider/include/private/sspMem.h (limited to 'digital/zigbit/bitcloud/stack/Components/Security/ServiceProvider/include/private/sspMem.h') diff --git a/digital/zigbit/bitcloud/stack/Components/Security/ServiceProvider/include/private/sspMem.h b/digital/zigbit/bitcloud/stack/Components/Security/ServiceProvider/include/private/sspMem.h new file mode 100644 index 00000000..1512a170 --- /dev/null +++ b/digital/zigbit/bitcloud/stack/Components/Security/ServiceProvider/include/private/sspMem.h @@ -0,0 +1,238 @@ +/**************************************************************************//** + \file sspMem.h + + \brief Security Service Provider memory manager header file. + + \author + Atmel Corporation: http://www.atmel.com \n + Support email: avr@atmel.com + + Copyright (c) 2008-2011, Atmel Corporation. All rights reserved. + Licensed under Atmel's Limited License Agreement (BitCloudTM). + + \internal + History: + 06/12/2007 - ALuzhetsky created. +******************************************************************************/ +#ifndef _SSPMEM_H +#define _SSPMEM_H + +/****************************************************************************** + Includes section. +******************************************************************************/ +#include +#include +#include +#include +#include +#include + +/****************************************************************************** + Types section. +******************************************************************************/ +typedef struct +{ + void *sspReq; // Used by all modules which need to save requests' parameters. + // For Manager needs. + SspManagerMem_t managerMem; + SspAesMem_t aes; + union + { +#ifdef _LINK_SECURITY_ + SspAuthenticHandlerMem_t authenticHandlerMem; + SspSkkeHandlerMem_t skkeHandlerMem; +#endif // _LINK_SECURITY_ + SspSfpHandlerMem_t sfpHandlerMem; + }; + union + { +#ifdef _LINK_SECURITY_ + SspHashHandlerMem_t hashHandlerMem; +#endif // _LINK_SECURITY_ + SspCcmHandlerMem_t ccmHandlerMem; + }; +} SspMem_t; + +/****************************************************************************** + External variables. +******************************************************************************/ +extern SspMem_t sspMem; + +/****************************************************************************** + Inline static functions prototypes section. +******************************************************************************/ +/****************************************************************************** + Stores the pointer to the current request. + Parameters: + req - pointer to the current request. + returns: + none. +******************************************************************************/ +INLINE void sspStoreReqParams(void *req) +{ + sspMem.sspReq = req; +} + +/****************************************************************************** + Gets the pointer to the current request. + Parameters: + none. + returns: + Pointer to the current request. +******************************************************************************/ +INLINE void* sspGetReqParams(void) +{ + return sspMem.sspReq; +} + +/****************************************************************************** + Gets the current manager state. + Parameters: + none. + returns: + current manager state. +******************************************************************************/ +/*INLINE SspState_t sspGetManagerState(void) +{ + return sspMem.managerMem.managerState; +}*/ + +/****************************************************************************** + Sets the current manager state. + Parameters: + new state. + returns: + none. +******************************************************************************/ +/*INLINE void sspSetManagerState(SspState_t newState) +{ + sspMem.managerMem.managerState = newState; +}*/ + +/****************************************************************************** + Gets pointer to the queue descriptor. + Parameters: + none. + returns: + pointer to the queue descriptor. +******************************************************************************/ +INLINE QueueDescriptor_t* sspGetQueueDescr(void) +{ + return &sspMem.managerMem.reqQueueDescr; +} + +/****************************************************************************** + Gets pointer to the queue descriptor. + Parameters: + none. + returns: + pointer to the queue descriptor. +******************************************************************************/ +INLINE SspTaskBitMask_t* sspGetTaskBitMask(void) +{ + return &sspMem.managerMem.taskBitMask; +} + +/****************************************************************************** + Gets pointer to the current request. + Parameters: + none. + returns: + pointer to the current request. +******************************************************************************/ +INLINE void* sspGetCurrentReq(void) +{ + return sspMem.sspReq; +} + +/****************************************************************************** + Stores pointer to the current request. + Parameters: + pointer to the current request. + returns: + none. +******************************************************************************/ +INLINE void sspSetCurrentReq(void* param) +{ + sspMem.sspReq = param; +} + +#ifdef _LINK_SECURITY_ +/****************************************************************************** + Gets pointer to the authentic handler memory. + Parameters: + none. + returns: + pointer to the authentic handler memory. +******************************************************************************/ +INLINE SspAuthenticHandlerMem_t* sspGetAuthenticHandlerMem(void) +{ + return &sspMem.authenticHandlerMem; +} + +/****************************************************************************** + Gets pointer to the skke handler memory. + Parameters: + none. + returns: + pointer to the skke handler memory. +******************************************************************************/ +INLINE SspSkkeHandlerMem_t* sspGetSkkeHandlerMem(void) +{ + return &sspMem.skkeHandlerMem; +} + +/****************************************************************************** + Gets pointer to the hash handler memory. + Parameters: + none. + returns: + pointer to the hash handler memory. +******************************************************************************/ +INLINE SspHashHandlerMem_t* sspGetHashHandlerMem(void) +{ + return &sspMem.hashHandlerMem; +} +#endif // _LINK_SECURITY_ + +/****************************************************************************** + Gets pointer to the sfp handler memory. + Parameters: + none. + returns: + pointer to the sfp handler memory. +******************************************************************************/ +INLINE SspSfpHandlerMem_t* sspGetSfpHandlerMem(void) +{ + return &sspMem.sfpHandlerMem; +} + +/****************************************************************************** + Gets pointer to the memory for aes encryption procedure. + Parameters: + none. + returns: + pointer to the memory for aes encryption procedure. +******************************************************************************/ +INLINE SspAesMem_t* sspGetAesMem(void) +{ + return &sspMem.aes; +} + +/****************************************************************************** + Gets pointer to the ccm handler memory. + Parameters: + none. + returns: + pointer to the ccm handler memory. +******************************************************************************/ +INLINE SspCcmHandlerMem_t* sspGetCcmHandlerMem(void) +{ + return &sspMem.ccmHandlerMem; +} + + +//#endif // _SSP_USE_STATIC_MEM_ + +#endif //_SSPMEM_H +// eof sspMem.h -- cgit v1.2.3