mirror of
https://github.com/a0rtega/pafish
synced 2024-11-25 23:59:37 +03:00
Add generic func to access regkey value and compare str, code refactor
This commit is contained in:
parent
283f01a459
commit
8e5f18a482
@ -6,63 +6,10 @@
|
|||||||
#include "types.h"
|
#include "types.h"
|
||||||
|
|
||||||
int qemu_reg_key1() {
|
int qemu_reg_key1() {
|
||||||
HKEY regkey;
|
return pafish_exists_regkey_value_str(HKEY_LOCAL_MACHINE, "HARDWARE\\DEVICEMAP\\Scsi\\Scsi Port 0\\Scsi Bus 0\\Target Id 0\\Logical Unit Id 0", "Identifier", "QEMU");
|
||||||
LONG retu;
|
|
||||||
char value[1024];
|
|
||||||
DWORD size;
|
|
||||||
|
|
||||||
size = sizeof(value);
|
|
||||||
retu = RegOpenKeyEx(HKEY_LOCAL_MACHINE, "HARDWARE\\DEVICEMAP\\Scsi\\Scsi Port 0\\Scsi Bus 0\\Target Id 0\\Logical Unit Id 0", 0, KEY_READ, ®key);
|
|
||||||
if (retu == ERROR_SUCCESS) {
|
|
||||||
retu = RegQueryValueEx(regkey, "Identifier", NULL, NULL, (BYTE*)value, &size);
|
|
||||||
if (retu == ERROR_SUCCESS) {
|
|
||||||
int i;
|
|
||||||
for (i = 0; i < strlen(value); i++) { /* case-insensitive */
|
|
||||||
value[i] = toupper(value[i]);
|
|
||||||
}
|
|
||||||
if (strstr(value, "QEMU") != NULL) {
|
|
||||||
return TRUE;
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
int qemu_reg_key2() {
|
int qemu_reg_key2() {
|
||||||
HKEY regkey;
|
return pafish_exists_regkey_value_str(HKEY_LOCAL_MACHINE, "HARDWARE\\Description\\System", "SystemBiosVersion", "QEMU");
|
||||||
LONG retu;
|
}
|
||||||
char value[1024];
|
|
||||||
DWORD size;
|
|
||||||
|
|
||||||
size = sizeof(value);
|
|
||||||
retu = RegOpenKeyEx(HKEY_LOCAL_MACHINE, "HARDWARE\\Description\\System", 0, KEY_READ, ®key);
|
|
||||||
if (retu == ERROR_SUCCESS) {
|
|
||||||
retu = RegQueryValueEx(regkey, "SystemBiosVersion", NULL, NULL, (BYTE*)value, &size);
|
|
||||||
if (retu == ERROR_SUCCESS) {
|
|
||||||
int i;
|
|
||||||
for (i = 0; i < strlen(value); i++) { /* case-insensitive */
|
|
||||||
value[i] = toupper(value[i]);
|
|
||||||
}
|
|
||||||
if (strstr(value, "QEMU") != NULL) {
|
|
||||||
return TRUE;
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
@ -19,12 +19,30 @@ inline int pafish_exists_regkey(HKEY hKey, char * regkey_s) {
|
|||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
inline int pafish_exists_file(char * filename) {
|
inline int pafish_exists_regkey_value_str(HKEY hKey, char * regkey_s, char * value_s, char * lookup) {
|
||||||
DWORD ret;
|
HKEY regkey;
|
||||||
|
LONG ret;
|
||||||
|
DWORD size;
|
||||||
|
char value[1024];
|
||||||
|
|
||||||
ret = GetFileAttributes(filename);
|
size = sizeof(value);
|
||||||
if (ret != INVALID_FILE_ATTRIBUTES)
|
ret = RegOpenKeyEx(hKey, regkey_s, 0, KEY_READ, ®key);
|
||||||
|
if (ret == ERROR_SUCCESS) {
|
||||||
|
ret = RegQueryValueEx(regkey, value_s, NULL, NULL, (BYTE*)value, &size);
|
||||||
|
RegCloseKey(regkey);
|
||||||
|
if (ret == ERROR_SUCCESS) {
|
||||||
|
int i;
|
||||||
|
for (i = 0; i < strlen(value); i++) { /* case-insensitive */
|
||||||
|
value[i] = toupper(value[i]);
|
||||||
|
}
|
||||||
|
if (strstr(value, lookup) != NULL)
|
||||||
return TRUE;
|
return TRUE;
|
||||||
else
|
}
|
||||||
|
}
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
inline int pafish_exists_file(char * filename) {
|
||||||
|
return (GetFileAttributes(filename) != INVALID_FILE_ATTRIBUTES) ? TRUE : FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
@ -4,6 +4,8 @@
|
|||||||
|
|
||||||
inline int pafish_exists_regkey(HKEY hKey, char * regkey);
|
inline int pafish_exists_regkey(HKEY hKey, char * regkey);
|
||||||
|
|
||||||
|
inline int pafish_exists_regkey_value_str(HKEY, char *, char *, char *);
|
||||||
|
|
||||||
inline int pafish_exists_file(char * filename);
|
inline int pafish_exists_file(char * filename);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
104
pafish/vbox.c
104
pafish/vbox.c
@ -15,68 +15,14 @@
|
|||||||
* SCSI registry key check
|
* SCSI registry key check
|
||||||
**/
|
**/
|
||||||
int vbox_reg_key1() {
|
int vbox_reg_key1() {
|
||||||
HKEY regkey;
|
return pafish_exists_regkey_value_str(HKEY_LOCAL_MACHINE, "HARDWARE\\DEVICEMAP\\Scsi\\Scsi Port 0\\Scsi Bus 0\\Target Id 0\\Logical Unit Id 0", "Identifier", "VBOX");
|
||||||
LONG retu;
|
|
||||||
char value[1024];
|
|
||||||
DWORD size;
|
|
||||||
|
|
||||||
size = sizeof(value);
|
|
||||||
retu = RegOpenKeyEx(HKEY_LOCAL_MACHINE, "HARDWARE\\DEVICEMAP\\Scsi\\Scsi Port 0\\Scsi Bus 0\\Target Id 0\\Logical Unit Id 0", 0, KEY_READ, ®key);
|
|
||||||
if (retu == ERROR_SUCCESS) {
|
|
||||||
retu = RegQueryValueEx(regkey, "Identifier", NULL, NULL, (BYTE*)value, &size);
|
|
||||||
if (retu == ERROR_SUCCESS) {
|
|
||||||
int i;
|
|
||||||
for (i = 0; i < strlen(value); i++) { /* case-insensitive */
|
|
||||||
value[i] = toupper(value[i]);
|
|
||||||
}
|
|
||||||
if (strstr(value, "VBOX") != NULL) {
|
|
||||||
return TRUE;
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* SystemBiosVersion registry key check
|
* SystemBiosVersion registry key check
|
||||||
**/
|
**/
|
||||||
int vbox_reg_key2() {
|
int vbox_reg_key2() {
|
||||||
HKEY regkey;
|
return pafish_exists_regkey_value_str(HKEY_LOCAL_MACHINE, "HARDWARE\\Description\\System", "SystemBiosVersion", "VBOX");
|
||||||
LONG retu;
|
|
||||||
char value[1024];
|
|
||||||
DWORD size;
|
|
||||||
|
|
||||||
size = sizeof(value);
|
|
||||||
retu = RegOpenKeyEx(HKEY_LOCAL_MACHINE, "HARDWARE\\Description\\System", 0, KEY_READ, ®key);
|
|
||||||
if (retu == ERROR_SUCCESS) {
|
|
||||||
retu = RegQueryValueEx(regkey, "SystemBiosVersion", NULL, NULL, (BYTE*)value, &size);
|
|
||||||
if (retu == ERROR_SUCCESS) {
|
|
||||||
int i;
|
|
||||||
for (i = 0; i < strlen(value); i++) { /* case-insensitive */
|
|
||||||
value[i] = toupper(value[i]);
|
|
||||||
}
|
|
||||||
if (strstr(value, "VBOX") != NULL) {
|
|
||||||
return TRUE;
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -90,34 +36,7 @@ int vbox_reg_key3() {
|
|||||||
* VideoBiosVersion key check
|
* VideoBiosVersion key check
|
||||||
**/
|
**/
|
||||||
int vbox_reg_key4() {
|
int vbox_reg_key4() {
|
||||||
HKEY regkey;
|
return pafish_exists_regkey_value_str(HKEY_LOCAL_MACHINE, "HARDWARE\\Description\\System", "VideoBiosVersion", "VIRTUALBOX");
|
||||||
LONG retu;
|
|
||||||
char value[1024];
|
|
||||||
DWORD size;
|
|
||||||
|
|
||||||
size = sizeof(value);
|
|
||||||
retu = RegOpenKeyEx(HKEY_LOCAL_MACHINE, "HARDWARE\\Description\\System", 0, KEY_READ, ®key);
|
|
||||||
if (retu == ERROR_SUCCESS) {
|
|
||||||
retu = RegQueryValueEx(regkey, "VideoBiosVersion", NULL, NULL, (BYTE*)value, &size);
|
|
||||||
if (retu == ERROR_SUCCESS) {
|
|
||||||
int i;
|
|
||||||
for (i = 0; i < strlen(value); i++) { /* case-insensitive */
|
|
||||||
value[i] = toupper(value[i]);
|
|
||||||
}
|
|
||||||
if (strstr(value, "VIRTUALBOX") != NULL) {
|
|
||||||
return TRUE;
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -169,21 +88,7 @@ int vbox_reg_key9(int writelogs) {
|
|||||||
* HARDWARE\\DESCRIPTION\\System SystemBiosDate == 06/23/99
|
* HARDWARE\\DESCRIPTION\\System SystemBiosDate == 06/23/99
|
||||||
**/
|
**/
|
||||||
int vbox_reg_key10() {
|
int vbox_reg_key10() {
|
||||||
HKEY regkey;
|
return pafish_exists_regkey_value_str(HKEY_LOCAL_MACHINE, "HARDWARE\\DESCRIPTION\\System", "SystemBiosDate", "06/23/99");
|
||||||
LONG retu;
|
|
||||||
char value[1024];
|
|
||||||
DWORD size;
|
|
||||||
|
|
||||||
size = sizeof(value);
|
|
||||||
retu = RegOpenKeyEx(HKEY_LOCAL_MACHINE, "HARDWARE\\DESCRIPTION\\System", 0, KEY_READ, ®key);
|
|
||||||
if (retu == ERROR_SUCCESS) {
|
|
||||||
retu = RegQueryValueEx(regkey, "SystemBiosDate", NULL, NULL, (BYTE*)value, &size);
|
|
||||||
if (retu == ERROR_SUCCESS) {
|
|
||||||
if (!strcmp(value, "06/23/99"))
|
|
||||||
return TRUE;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return FALSE;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -371,3 +276,4 @@ int vbox_processes(int writelogs) {
|
|||||||
} while (Process32Next(hpSnap, &pentry));
|
} while (Process32Next(hpSnap, &pentry));
|
||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -7,34 +7,7 @@
|
|||||||
#include "utils.h"
|
#include "utils.h"
|
||||||
|
|
||||||
int vmware_reg_key1() {
|
int vmware_reg_key1() {
|
||||||
HKEY regkey;
|
return pafish_exists_regkey_value_str(HKEY_LOCAL_MACHINE, "HARDWARE\\DEVICEMAP\\Scsi\\Scsi Port 0\\Scsi Bus 0\\Target Id 0\\Logical Unit Id 0", "Identifier", "VMWARE");
|
||||||
LONG retu;
|
|
||||||
char value[1024];
|
|
||||||
DWORD size;
|
|
||||||
|
|
||||||
size = sizeof(value);
|
|
||||||
retu = RegOpenKeyEx(HKEY_LOCAL_MACHINE, "HARDWARE\\DEVICEMAP\\Scsi\\Scsi Port 0\\Scsi Bus 0\\Target Id 0\\Logical Unit Id 0", 0, KEY_READ, ®key);
|
|
||||||
if (retu == ERROR_SUCCESS) {
|
|
||||||
retu = RegQueryValueEx(regkey, "Identifier", NULL, NULL, (BYTE*)value, &size);
|
|
||||||
if (retu == ERROR_SUCCESS) {
|
|
||||||
int i;
|
|
||||||
for (i = 0; i < strlen(value); i++) { /* case-insensitive */
|
|
||||||
value[i] = toupper(value[i]);
|
|
||||||
}
|
|
||||||
if (strstr(value, "VMWARE") != NULL) {
|
|
||||||
return TRUE;
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
int vmware_reg_key2() {
|
int vmware_reg_key2() {
|
||||||
|
Loading…
Reference in New Issue
Block a user