From f7000f777bc56793940f4780e431dab86171a41f Mon Sep 17 00:00:00 2001 From: anschrammh Date: Sat, 13 Apr 2019 13:33:33 +0200 Subject: [PATCH] Added more verifications with the dicionaries and there values --- src/app/ConnectivityManager.cpp | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/src/app/ConnectivityManager.cpp b/src/app/ConnectivityManager.cpp index ea41fac..95bf9e1 100644 --- a/src/app/ConnectivityManager.cpp +++ b/src/app/ConnectivityManager.cpp @@ -20,17 +20,25 @@ ConnectivityManager::ConnectivityManager(SDCardManager *sdCardManager) : _error( { if(!softAP("ESP8266SwissArmyBoard", NULL, 1, false, 8))_error &= AP_SETUP_ERR; } - else - { + else if((*cfgDictionary)("SSID") != NULL && (*cfgDictionary)("PASSWORD") != NULL && (*cfgDictionary)("CHANNEL") != NULL && (*cfgDictionary)("SSID_HIDDEN") != NULL && (*cfgDictionary)("AP_MAX_CONNECTION") != NULL) + { if(!softAP((*cfgDictionary)("SSID")->stringValue(), strcmp((*cfgDictionary)("PASSWORD")->stringValue(),"") == 0 ? NULL:(*cfgDictionary)("PASSWORD")->stringValue(), (*cfgDictionary)("CHANNEL")->intValue(), (*cfgDictionary)("SSID_HIDDEN")->booleanValue(), (*cfgDictionary)("AP_MAX_CONNECTION")->intValue()))_error &= AP_SETUP_ERR; delete cfgDictionary; } + else + { + if(!softAP("ESP8266SwissArmyBoard", NULL, 1, false, 8))_error &= AP_SETUP_ERR; + delete cfgDictionary; + } CFGFileParser cfgFileParserSTA(*sdCardManager, STA_CFG_FILE); cfgDictionary = (CFGDictionary *) cfgFileParserSTA.parseFile(); if(cfgDictionary != NULL) { - if(!begin((*cfgDictionary)("SSID")->stringValue(), (*cfgDictionary)("PASSWORD")->stringValue()))_error &= AP_SETUP_ERR; + if((*cfgDictionary)("SSID") != NULL && (*cfgDictionary)("PASSWORD") != NULL) + { + if(!begin((*cfgDictionary)("SSID")->stringValue(), (*cfgDictionary)("PASSWORD")->stringValue())) _error &= AP_SETUP_ERR; + } delete cfgDictionary; } }