static int dump_secure_store(char *type) { if( !memcmp(type, "pure",4 ) ){ return sunxi_secure_object_list(); }else return sunxi_secure_storage_list(); }
/* ************************************************************************************************************ * * function * * name : * * parmeters : * * return : * * note : * * ************************************************************************************************************ */ int do_read_from_boot(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) { #ifdef CONFIG_SUNXI_SECURE_STORAGE if(argc == 1) { return sunxi_secure_storage_list(); } if(argc == 2) { char buffer[4096]; int ret, data_len; memset(buffer, 0, 4096); ret = sunxi_secure_storage_init(); if(ret < 0) { printf("%s secure storage init err\n", __func__); return -1; } ret = sunxi_secure_object_read(argv[1], buffer, 4096, &data_len); if(ret < 0) { printf("private data %s is not exist\n", argv[1]); return -1; } printf("private data:\n"); sunxi_dump(buffer, strlen((const char *)buffer)); return 0; } #endif return -1; }