gcontini
2020-04-25 e047dbe884f5288943d5ba2f8843a078d647d7ef
src/library/os/windows/execution_environment.cpp
@@ -11,10 +11,8 @@
#include <stdio.h>
#include <string>
#include "isvm/BIOSReader.h"
#include "isvm/Native.h"
#include "../../base/base.h"
#include "../../base/StringUtils.h"
#include "../cpu_info.hpp"
#include "../execution_environment.hpp"
@@ -22,29 +20,18 @@
namespace os {
using namespace std;
ExecutionEnvironment::ExecutionEnvironment() {
   if (InitEntryPoints()) {
      BIOSReader reader;
      SystemInformation info = reader.readSystemInfo();
      m_sys_vendor = toupper_copy(info.Manufacturer);
      m_bios_vendor = toupper_copy(info.ProductName);
      m_bios_description = toupper_copy(info.SysVersion) + toupper_copy(info.family);
   }
}
ExecutionEnvironment::ExecutionEnvironment() : m_container_type(CONTAINER_TYPE::NONE) {}
#define MAX_UNITS 20
int wine_container() {
DWORD fileMaxLen;
CONTAINER_TYPE wine_container() {
size_t ndrives = 0;
DWORD fileFlags;
char volName[MAX_PATH], fileSysName[MAX_PATH];
DWORD volSerial = 0;
const DWORD dwSize = MAX_PATH;
char szLogicalDrives[MAX_PATH] = {0};
int result = 0;
   CONTAINER_TYPE result = CONTAINER_TYPE::NONE;
const DWORD dwResult = GetLogicalDriveStrings(dwSize, szLogicalDrives);
   //FIXME! this code missed the increment in the loop...
if (dwResult > 0 && dwResult <= MAX_PATH) {
   char* szSingleDrive = szLogicalDrives;
   while (*szSingleDrive && ndrives < MAX_UNITS) {
@@ -55,13 +42,13 @@
         try {
            ifstream systemd_container(name);
            if (systemd_container.good()) {
               result = 1;
                  result = CONTAINER_TYPE::DOCKER;
               for (string line; getline(systemd_container, line);) {
                  if (line.find("docker") != string::npos) {
                     result = 1;
                        result = CONTAINER_TYPE::DOCKER;
                     break;
                  } else if (line.find("lxc") != string::npos) {
                     result = 2;
                        result = CONTAINER_TYPE::LXC;
                     break;
                  }
               }
@@ -75,12 +62,5 @@
   return result;
}
bool ExecutionEnvironment::is_docker() const {
   // let's check we're not in linux under wine ;) ...
//int cont = wine_container();
   return false;
}
//TODO
bool ExecutionEnvironment::is_container() const { return is_docker(); }
}  // namespace os
}  // namespace license