Mbed Cloud example program for workshop in W27 2018.

Dependencies:   MMA7660 LM75B

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers kcm_defs.h Source File

kcm_defs.h

Go to the documentation of this file.
00001 // ----------------------------------------------------------------------------
00002 // Copyright 2016-2017 ARM Ltd.
00003 //
00004 // Licensed under the Apache License, Version 2.0 (the "License");
00005 // you may not use this file except in compliance with the License.
00006 // You may obtain a copy of the License at
00007 //
00008 //     http://www.apache.org/licenses/LICENSE-2.0
00009 //
00010 // Unless required by applicable law or agreed to in writing, software
00011 // distributed under the License is distributed on an "AS IS" BASIS,
00012 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00013 // See the License for the specific language governing permissions and
00014 // limitations under the License.
00015 // ----------------------------------------------------------------------------
00016 
00017 #ifndef __KCM_DEFS_H__
00018 #define __KCM_DEFS_H__
00019 
00020 #ifdef __cplusplus
00021 extern "C" {
00022 #endif
00023 
00024 /**
00025 * @file kcm_defs.h
00026 *  \brief Keys and configuration manager (KCM) definitions.
00027 */
00028 
00029 /**
00030 * KCM item types
00031 */
00032 typedef enum {
00033     KCM_PRIVATE_KEY_ITEM,          //!< KCM private key item type. KCM Supports ECC keys with curves defined in palGroupIndex_t(pal_Crypto.h)
00034     KCM_PUBLIC_KEY_ITEM,           //!< KCM public key item type.  KCM Supports ECC keys with curves defined in palGroupIndex_t(pal_Crypto.h)
00035     KCM_SYMMETRIC_KEY_ITEM,        //!< KCM symmetric key item type.
00036     KCM_CERTIFICATE_ITEM,          //!< KCM certificate item type. Supported x509 certificates in der format.
00037     KCM_CONFIG_ITEM,               //!< KCM configuration parameter item type.
00038     KCM_CERTIFICATE_CHAIN_ITEM,    //!< KCM certificate chain item type.
00039     KCM_LAST_ITEM                  //!< KCM not defined item type.
00040 } kcm_item_type_e;
00041 
00042 /**
00043 * Security descriptor - contains different ACLs such as remote ACL, local ACL and audit.
00044 * Currently defined to `void*.`
00045 * May be changed in the future.
00046 */
00047 typedef void* kcm_security_desc_s;
00048 
00049 #ifndef __DOXYGEN__
00050 /**
00051 * CryptoKeyScheme structure.
00052 * Currently defined to void*.
00053 * May be changed in the future.
00054 */
00055 typedef void* kcm_crypto_key_scheme_s;
00056 
00057 #endif //#ifndef __DOXYGEN__
00058 
00059 #ifdef __cplusplus
00060 }
00061 #endif
00062 
00063 #endif //__KCM_DEFS_H__