Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependents: TYBLE16_simple_data_logger TYBLE16_MP3_Air
ws_pae_nvm_data.h
00001 /* 00002 * Copyright (c) 2018-2019, Arm Limited and affiliates. 00003 * SPDX-License-Identifier: Apache-2.0 00004 * 00005 * Licensed under the Apache License, Version 2.0 (the "License"); 00006 * you may not use this file except in compliance with the License. 00007 * You may obtain a copy of the License at 00008 * 00009 * http://www.apache.org/licenses/LICENSE-2.0 00010 * 00011 * Unless required by applicable law or agreed to in writing, software 00012 * distributed under the License is distributed on an "AS IS" BASIS, 00013 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 00014 * See the License for the specific language governing permissions and 00015 * limitations under the License. 00016 */ 00017 00018 #ifndef WS_PAE_NVM_DATA_H_ 00019 #define WS_PAE_NVM_DATA_H_ 00020 00021 /* 00022 * Port access entity non-volatile memory (NVM) data module. Module is used 00023 * to create and parse PAE NVM data TLVs. 00024 * 00025 */ 00026 00027 /** 00028 * ws_pae_nvm_store_nw_info_tlv_create create NVM network info TLV 00029 * 00030 * \param tlv_entry TLV entry pointer 00031 * \param pan_id PAN ID 00032 * \param nw_name network name 00033 * \param gtks GTK keys 00034 * 00035 * \return TLV entry or NULL 00036 * 00037 */ 00038 void ws_pae_nvm_store_nw_info_tlv_create(nvm_tlv_entry_t *tlv_entry, uint16_t pan_id, char *nw_name, sec_prot_gtk_keys_t *gtks); 00039 00040 /** 00041 * ws_pae_nvm_store_nw_info_tlv_read read from NVM network info TLV 00042 * 00043 * \param tlv_entry TLV entry 00044 * \param pan_id PAN ID 00045 * \param nw_name network name 00046 * \param gtks GTK keys 00047 * 00048 * \return < 0 failure 00049 * \return >= 0 success 00050 * 00051 */ 00052 int8_t ws_pae_nvm_store_nw_info_tlv_read(nvm_tlv_entry_t *tlv_entry, uint16_t *pan_id, char *nw_name, sec_prot_gtk_keys_t *gtks); 00053 00054 /** 00055 * ws_pae_nvm_store_keys_tlv_create create NVM keys TLV 00056 * 00057 * \param tlv_entry TLV entry buffer pointer 00058 * \param sec_keys security keys 00059 * 00060 */ 00061 void ws_pae_nvm_store_keys_tlv_create(nvm_tlv_entry_t *tlv_entry, sec_prot_keys_t *sec_keys); 00062 00063 /** 00064 * ws_pae_nvm_store_nw_info_tlv_read read from NVM keys TLV 00065 * 00066 * \param tlv_entry TLV entry 00067 * \param sec_keys security keys 00068 * 00069 * \return < 0 failure 00070 * \return >= 0 success 00071 * 00072 */ 00073 int8_t ws_pae_nvm_store_keys_tlv_read(nvm_tlv_entry_t *tlv_entry, sec_prot_keys_t *sec_keys); 00074 00075 /** 00076 * ws_pae_nvm_store_frame_counter_tlv_create create NVM frame counter TLV 00077 * 00078 * \param tlv_entry TLV entry buffer pointer 00079 * \param counters frame counters 00080 * 00081 */ 00082 void ws_pae_nvm_store_frame_counter_tlv_create(nvm_tlv_entry_t *tlv_entry, frame_counters_t *counters); 00083 00084 /** 00085 * ws_pae_nvm_store_frame_counter_tlv_read read from NVM frame counter TLV 00086 * 00087 * \param tlv_entry TLV entry 00088 * \param counters frame counters 00089 * 00090 * \return < 0 failure 00091 * \return >= 0 success 00092 * 00093 */ 00094 int8_t ws_pae_nvm_store_frame_counter_tlv_read(nvm_tlv_entry_t *tlv_entry, frame_counters_t *counters); 00095 00096 nvm_tlv_entry_t *ws_pae_buffer_allocate(void); 00097 00098 #endif /* WS_PAE_NVM_DATA_H_ */
Generated on Tue Jul 12 2022 13:55:04 by
