Index: scripts/factory_reset.sh =================================================================== diff -u -r891ea20a0f6e25eb03c21c6b4fb67e9137a49c14 -r984f3ebe19ddb9cf4bdfd9b2d47c082ff0b3426b --- scripts/factory_reset.sh (.../factory_reset.sh) (revision 891ea20a0f6e25eb03c21c6b4fb67e9137a49c14) +++ scripts/factory_reset.sh (.../factory_reset.sh) (revision 984f3ebe19ddb9cf4bdfd9b2d47c082ff0b3426b) @@ -19,6 +19,7 @@ # @details # This file is called by UI Software to remove and reset the device + #TODO This script needs to be integrated with the globals.sh ERR_REMOVE_PRM_DIR=150 @@ -39,6 +40,7 @@ LOC_SETTINGS_CONF="/var/configurations/Settings/System.conf" LOC_SETTINGS_DFLT="/var/configurations/Settings/System.dflt" LOC_LOG_BASE_FOLDER="/media/sd-card/" +LOC_TX_LOG_BASE_FOLDER="/var/configurations/treatment/" TRUE=1 FALSE=0 @@ -152,27 +154,29 @@ } function deleteWiFi() { - removeSingleFile $LOC_WIFI_CONFIGURATION "WiFi configuration" #delete WiFi + SCRIPTS=/home/$(whoami)/scripts + $SCRIPTS/wifi_disconnect_network.sh wlan0 } function deleteBluetooth() { - clearFolderContent $LOC_BLUETOOTH_DEVCACHE "Bluetooth cache" #delete Bluetooth + SCRIPTS=/home/$(whoami)/scripts + $SCRIPTS/bluetooth_paired_clear.sh } function defaultSettings() { local _has_error_=$FALSE servicePasswordLine=$(grep -A1 "\[Service\]" "$LOC_SETTINGS_CONF" | grep Password) # store the service password line - _has_error_=$( [[ "$servicePasswordLine" ]] && $(true) || $(false) ) + _has_error_= [[ -z "$servicePasswordLine" ]] exitError $_has_error_ $ERR_CLEAN_SETTINGS_CONF_PASSNOTFOUND "Password not found in '$LOC_SETTINGS_CONF'" - cp $LOC_SETTINGS_DFLT $LOC_SETTINGS_CONF # reset the settings to default settings + cp $LOC_SETTINGS_DFLT $LOC_SETTINGS_CONF # reset the settings to default settings _has_error_=$? - exitError $_has_error_ $ERR_CLEAN_SETTINGS_CONF_OVERWRITE "Service settings overwrite filed" + exitError $_has_error_ $ERR_CLEAN_SETTINGS_CONF_OVERWRITE "Service settings overwrite failed" - sed -i "s/^.*Password.*$/$storedPassword/" $LOC_SETTINGS_CONF # keep the service password + sed -i "s/^.*Password.*$/$servicePasswordLineK/" $LOC_SETTINGS_CONF # keep the service password _has_error_=$? - exitError $_has_error_ $ERR_CLEAN_SETTINGS_DFLT_RESTORE "Service password restore filed" + exitError $_has_error_ $ERR_CLEAN_SETTINGS_DFLT_RESTORE "Service password restore failed" } function deleteLogFiles() { @@ -181,14 +185,24 @@ # - are not deleted # - not part of the checking whether deletion was successful # - setting maxDepth to 2 due to path used is root level with sd-card/ folders of logs - find "$LOC_LOG_BASE_FOLDER" -maxdepth 2 -type f -daystart -mtime +0 -exec rm -f {} + - - _has_error_=$? + # NOTE: find command always return true / non-zero! when using with exec + find "$LOC_LOG_BASE_FOLDER" -maxdepth 2 -type f -daystart -mtime +0 | xargs rm + _has_error_=!$? exitError $_has_error_ $ERR_REMOVE_CMD_FIL "Log file deletion" fileCount=$(find "$LOC_LOG_BASE_FOLDER" -maxdepth 2 -type f -daystart -mtime +0 | wc -l) _has_error_=$fileCount exitError $_has_error_ $ERR_REMOVE_DEL_FIL "Remained '$fileCount' file undeleted" + + # Deleting treatment logs in encrypted partition: + find "$LOC_TX_LOG_BASE_FOLDER" -maxdepth 2 -type f | xargs rm + + _has_error_=!$? + exitError $_has_error_ $ERR_REMOVE_CMD_FIL "Tx Log file deletion" + + fileCount=$(find "$LOC_TX_LOG_BASE_FOLDER" -maxdepth 2 -type f | wc -l) + _has_error_=$fileCount + exitError $_has_error_ $ERR_REMOVE_DEL_FIL "Remained '$fileCount' file undeleted" } # delete WiFi settings