Official reference client implementation for Cumulocity SmartREST on u-blox C027.

Dependencies:   C027_Support C12832 LM75B MMA7660 MbedSmartRest mbed-rtos mbed

Fork of MbedSmartRestMain by Vincent Wochnik

io/Storage.cpp

Committer:
xinlei
Date:
2015-05-08
Revision:
104:a3703ca4a4a4
Parent:
io/DeviceMemory.cpp@ 103:ede6611e064e
Child:
111:ee9ae4a5e55c

File content as of revision 104:a3703ca4a4a4:

#include <stdio.h>
#include <string.h>
#include "MDM.h"

#define CREDENTIALS_FILE "001_CREDENTIALS"
#define CONFIGURATION_FILE "002_CONFIGURATION"
extern MDMSerial *pMdm;

bool loadCredential(char *username, char *password, size_t len)
{
    char buffer[len*2+3];
    int res = pMdm->readFile(CREDENTIALS_FILE, buffer, sizeof(buffer));
    if (res < 0) {
        return false;
    } else {
        buffer[res] = 0;
        int l = 0;
        sscanf(buffer, "%s\n%s\n%n", username, password, &l);
        return res==l;
    }
}

bool delCredential()
{
    return pMdm->delFile(CREDENTIALS_FILE);
}

bool saveCredential(char *username, char *password, size_t len)
{
    char buffer[len*2+3];
    int res = snprintf(buffer, sizeof(buffer), "%s\n%s\n", username, password);
    delCredential();
    return pMdm->writeFile(CREDENTIALS_FILE, buffer, res)==res;
}

int loadConfigFile(char *cfg, size_t len)
{
    int res = pMdm->readFile(CONFIGURATION_FILE, cfg, len);
    if (res >= 0)
        cfg[res] = 0;
    return res;
}

bool delConfigFile()
{
    return pMdm->delFile(CONFIGURATION_FILE);
}

bool saveConfigFile(char *cfg, size_t len)
{
    delConfigFile();
    return pMdm->writeFile(CONFIGURATION_FILE, cfg, len)==len;
}