Merge pull request #160 from 4zv4l/get_hostname

adding a way to get the hostname for linux
This commit is contained in:
TheDarkBug 2021-11-03 19:35:41 +01:00 committed by GitHub
commit f12b15c6c6
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -666,11 +666,17 @@ void get_info()
#else #else
FILE *cpuinfo = popen("sysctl -a | egrep -i 'hw.model'", "r"); FILE *cpuinfo = popen("sysctl -a | egrep -i 'hw.model'", "r");
#endif #endif
FILE *host_model_info = fopen("/sys/devices/virtual/dmi/id/board_name", "r"); // first try open the file FILE *host_model_info = fopen("/etc/hostname","r"); // try open /etc/hostname first
if (!host_model_info)
host_model_info = fopen("/sys/devices/virtual/dmi/id/board_name", "r"); // if couldn't then try another
if (!host_model_info) // if failed if (!host_model_info) // if failed
host_model_info = fopen("/sys/devices/virtual/dmi/id/product_name", "r"); // try open another file host_model_info = fopen("/sys/devices/virtual/dmi/id/product_name", "r"); // etc.
if(host_model_info) // if one of the file could be open then close it if(host_model_info) { // if succeeded to open one of the file
fclose(host_model_info); fgets(line, 256, host_model_info);
line[strlen(line)-1] = '\0';
sprintf(host_model,"%s",line);
fclose(host_model_info);
}
#ifdef __WINDOWS__ #ifdef __WINDOWS__
host_model_info = popen("wmic computersystem get model", "r"); host_model_info = popen("wmic computersystem get model", "r");
while (fgets(line, sizeof(line), host_model_info)) while (fgets(line, sizeof(line), host_model_info))