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.
Fork of mbed-os-example-mbed5-blinky by
IOtaUpdater.h
00001 /* 00002 * IOtaUpdater.h 00003 * 00004 * Created on: 2016-7-15 00005 * Author: duanlian01 00006 */ 00007 00008 #ifndef IOTAUPDATER_H_ 00009 #define IOTAUPDATER_H_ 00010 00011 #define PACKAGE_NAME_LENGTH_MAX (15) 00012 #define PACKAGE_TYPE_OS 1 00013 #define PACKAGE_TYPE_APP 2 00014 #define PACKAGE_NO_UPDATE 0 00015 #define PACKAGE_UPDATE 1 00016 00017 struct meta_data_basic_info{ 00018 char package_name[PACKAGE_NAME_LENGTH_MAX + 1]; 00019 unsigned char package_type; 00020 unsigned char package_update; 00021 }; 00022 00023 00024 #define MODULE_NAME_LENGTH_MAX (PACKAGE_NAME_LENGTH_MAX) 00025 #define MODULE_VERSION_LENGTH_MAX 15 00026 #define HARDWARE_VERSION_LENGTH_MAX 15 00027 #define MODULE_SIGNATURE_LENGTH 16 00028 #define MODULE_TYPE_BIN 1 00029 #define MODULE_NO_UPDATE 0 00030 #define MODULE_UPDATE 1 00031 00032 struct module_info{ 00033 char module_name[MODULE_NAME_LENGTH_MAX + 1]; 00034 char module_version[MODULE_VERSION_LENGTH_MAX + 1]; 00035 char module_support_hw_version[HARDWARE_VERSION_LENGTH_MAX + 1]; 00036 unsigned char module_signature[MODULE_SIGNATURE_LENGTH]; 00037 unsigned int module_size; 00038 unsigned char module_type; 00039 unsigned char module_update; 00040 }; 00041 00042 #define PACKAGE_INSTALL_PATH_MAX 255 00043 struct meta_data_install_info{ 00044 char package_install_path[PACKAGE_INSTALL_PATH_MAX + 1]; 00045 unsigned int module_count; 00046 struct module_info *module_list; 00047 }; 00048 00049 #define PACKAGE_VERSION_LENGTH MODULE_VERSION_LENGTH_MAX 00050 struct meta_data_update_info{ 00051 char package_version[PACKAGE_VERSION_LENGTH]; 00052 }; 00053 00054 struct meta_data_extension{ 00055 unsigned int pair_count; 00056 char **keys; 00057 char **values; 00058 }; 00059 00060 struct package_meta_data{ 00061 struct meta_data_basic_info basic_info; 00062 struct meta_data_install_info install_info; 00063 struct meta_data_update_info update_info; 00064 struct meta_data_extension extension_info; 00065 }; 00066 00067 struct IOtaUpdater 00068 { 00069 int (*notify_data_begin)(); 00070 int (*notify_meta_data)(void *cxt, struct package_meta_data *meta); 00071 int (*notify_module_data)(void *cxt, unsigned int offset, unsigned char *data, unsigned int size); 00072 int (*notify_data_end)(); 00073 int (*update_img_begin)(); 00074 int (*update_img)(); 00075 int (*update_img_end)(); 00076 }; 00077 00078 #endif /* IOTAUPDATER_H_ */
Generated on Tue Jul 12 2022 16:28:53 by
1.7.2
