Own fork of MbedSmartRestMain

Dependencies:   C027_Support C12832 LM75B MMA7660 MbedSmartRest mbed-rtos mbed

Fork of MbedSmartRestMain by Cumulocity Official

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers Storage.cpp Source File

Storage.cpp

00001 #include <stdio.h>
00002 #include <string.h>
00003 #include "MDM.h"
00004 
00005 #define CREDENTIALS_FILE "001_CREDENTIALS"
00006 #define CONFIGURATION_FILE "002_CONFIGURATION"
00007 extern MDMSerial *pMdm;
00008 
00009 bool loadCredential(char *tenant, char *username, char *password, size_t len)
00010 {
00011     char buffer[len*3+3];
00012     int res = pMdm->readFile(CREDENTIALS_FILE, buffer, sizeof(buffer));
00013     if (res <= 0) {
00014         return false;
00015     } else {
00016         buffer[res] = 0;
00017         int l = sscanf(buffer, "%[^/]/%s\n%s\n", tenant, username, password);
00018         return l==3;
00019     }
00020 }
00021 
00022 bool resetCredential()
00023 {
00024     return pMdm->delFile(CREDENTIALS_FILE);
00025 }
00026 
00027 bool saveCredential(const char *tenant, const char *username,
00028                     const char *password, size_t len)
00029 {
00030     char buffer[len*3+3];
00031     int res = snprintf(buffer, sizeof(buffer), "%s/%s\n%s\n", tenant, username, password);
00032     pMdm->delFile(CREDENTIALS_FILE);
00033     return pMdm->writeFile(CREDENTIALS_FILE, buffer, res)==res;
00034 }
00035 
00036 int loadConfigFile(char *cfg, size_t len)
00037 {
00038     int res = pMdm->readFile(CONFIGURATION_FILE, cfg, len);
00039     if (res >= 0)
00040         cfg[res] = 0;
00041     return res;
00042 }
00043 
00044 bool saveConfigFile(char *cfg, size_t len)
00045 {
00046     pMdm->delFile(CONFIGURATION_FILE);
00047     return pMdm->writeFile(CONFIGURATION_FILE, cfg, len)==len;
00048 }