Own fork of MbedSmartRestMain

Dependencies:   C027_Support C12832 LM75B MMA7660 MbedSmartRest mbed-rtos mbed

Fork of MbedSmartRestMain by Cumulocity Official

Committer:
xinlei
Date:
Mon Apr 27 13:30:21 2015 +0000
Revision:
97:9f2de96941c4
Parent:
96:ea056f6be2e8
Child:
98:e369fc75c000
Get rid of useless DeviceMemory class wrapper

Who changed what in which revision?

UserRevisionLine numberNew contents of line
vwochnik 67:c360a2b2c948 1 #include <stdio.h>
vwochnik 67:c360a2b2c948 2 #include <string.h>
xinlei 96:ea056f6be2e8 3 #include "MDM.h"
vwochnik 67:c360a2b2c948 4
vwochnik 67:c360a2b2c948 5 #define PLATFORM_CREDENTIALS_FILE "001_CREDENTIALS"
vwochnik 68:0dc778a16d0d 6 #define CONFIGURATION_FILE "002_CONFIGURATION"
xinlei 96:ea056f6be2e8 7 extern MDMSerial *pMdm;
vwochnik 67:c360a2b2c948 8
xinlei 97:9f2de96941c4 9 bool loadPlatformCredentials(char *username, char *password, size_t len)
vwochnik 67:c360a2b2c948 10 {
xinlei 93:61d44636f020 11 char buffer[len*2+3];
xinlei 96:ea056f6be2e8 12 int res = pMdm->readFile(PLATFORM_CREDENTIALS_FILE, buffer, sizeof(buffer));
xinlei 93:61d44636f020 13 if (res < 0)
vwochnik 67:c360a2b2c948 14 return false;
vwochnik 69:237c01eb36c2 15
vwochnik 67:c360a2b2c948 16 buffer[(size_t)res] = '\0';
xinlei 93:61d44636f020 17 int len2=0;
vwochnik 67:c360a2b2c948 18 sscanf(buffer, "%s\n%s\n%n", username, password, &len2);
vwochnik 67:c360a2b2c948 19 return res == len2;
vwochnik 67:c360a2b2c948 20 }
vwochnik 67:c360a2b2c948 21
xinlei 97:9f2de96941c4 22 bool resetPlatformCredentials()
xinlei 97:9f2de96941c4 23 {
xinlei 97:9f2de96941c4 24 return pMdm->delFile(PLATFORM_CREDENTIALS_FILE);
xinlei 97:9f2de96941c4 25 }
xinlei 97:9f2de96941c4 26
xinlei 97:9f2de96941c4 27 bool savePlatformCredentials(char *username, char *password, size_t len)
vwochnik 67:c360a2b2c948 28 {
xinlei 93:61d44636f020 29 char buffer[len*2+3];
xinlei 93:61d44636f020 30 int res = snprintf(buffer, sizeof(buffer), "%s\n%s\n", username, password);
xinlei 93:61d44636f020 31 if (res<0 || res>=sizeof(buffer))
vwochnik 67:c360a2b2c948 32 return false;
vwochnik 67:c360a2b2c948 33
xinlei 97:9f2de96941c4 34 return (resetPlatformCredentials() && res==pMdm->writeFile(PLATFORM_CREDENTIALS_FILE, buffer, res));
vwochnik 67:c360a2b2c948 35 }
vwochnik 68:0dc778a16d0d 36
vwochnik 68:0dc778a16d0d 37
xinlei 97:9f2de96941c4 38
xinlei 97:9f2de96941c4 39 bool loadConfiguration(char *cfg, size_t len)
vwochnik 68:0dc778a16d0d 40 {
xinlei 96:ea056f6be2e8 41 int res = pMdm->readFile(CONFIGURATION_FILE, cfg, len);
xinlei 93:61d44636f020 42 if (res < 0)
vwochnik 68:0dc778a16d0d 43 return false;
vwochnik 68:0dc778a16d0d 44
vwochnik 68:0dc778a16d0d 45 cfg[(size_t)res] = '\0';
vwochnik 68:0dc778a16d0d 46 return true;
vwochnik 68:0dc778a16d0d 47 }
vwochnik 68:0dc778a16d0d 48
xinlei 97:9f2de96941c4 49 bool resetConfiguration()
vwochnik 68:0dc778a16d0d 50 {
xinlei 96:ea056f6be2e8 51 return pMdm->delFile(CONFIGURATION_FILE);
vwochnik 68:0dc778a16d0d 52 }
xinlei 97:9f2de96941c4 53
xinlei 97:9f2de96941c4 54 bool saveConfiguration(char *cfg)
xinlei 97:9f2de96941c4 55 {
xinlei 97:9f2de96941c4 56 size_t len = strlen(cfg);
xinlei 97:9f2de96941c4 57 return (resetConfiguration() && pMdm->writeFile(CONFIGURATION_FILE, cfg, len)==len);
xinlei 97:9f2de96941c4 58 }
xinlei 97:9f2de96941c4 59