mirror of
https://git.proxmox.com/git/qemu-server
synced 2025-04-30 09:04:14 +00:00
query-machine-capabilities: factor out preparing output directory
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
This commit is contained in:
parent
390e77d438
commit
35c93dde5b
@ -39,35 +39,42 @@ void query_cpu_capabilities(cpu_caps_t *res) {
|
|||||||
res->reduced_phys_bits = (ebx >> 6) & 0x3f;
|
res->reduced_phys_bits = (ebx >> 6) & 0x3f;
|
||||||
}
|
}
|
||||||
|
|
||||||
int main() {
|
int prepare_output_directory() {
|
||||||
cpu_caps_t caps;
|
|
||||||
query_cpu_capabilities(&caps);
|
|
||||||
|
|
||||||
// Check that the directory exists and create it if it does not.
|
// Check that the directory exists and create it if it does not.
|
||||||
struct stat statbuf;
|
struct stat statbuf;
|
||||||
int ret = stat(OUTPUT_DIR, &statbuf);
|
int ret = stat(OUTPUT_DIR, &statbuf);
|
||||||
if (ret == 0) {
|
if (ret == 0) {
|
||||||
if (!S_ISDIR(statbuf.st_mode)) {
|
if (!S_ISDIR(statbuf.st_mode)) {
|
||||||
eprintf("Path '" OUTPUT_DIR "' already exists but is not a directory.\n");
|
eprintf("Path '" OUTPUT_DIR "' already exists but is not a directory.\n");
|
||||||
return 1;
|
return 0;
|
||||||
}
|
}
|
||||||
} else if (errno == ENOENT) {
|
} else if (errno == ENOENT) {
|
||||||
if (mkdir(OUTPUT_DIR, 0755) != 0) {
|
if (mkdir(OUTPUT_DIR, 0755) != 0) {
|
||||||
eprintf("Error creating directory '" OUTPUT_DIR "': %s\n", strerror(errno));
|
eprintf("Error creating directory '" OUTPUT_DIR "': %s\n", strerror(errno));
|
||||||
return 1;
|
return 0;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
eprintf("Error checking path '" OUTPUT_DIR "': %s\n", strerror(errno));
|
eprintf("Error checking path '" OUTPUT_DIR "': %s\n", strerror(errno));
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
int main() {
|
||||||
|
if (!prepare_output_directory()) {
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
cpu_caps_t caps;
|
||||||
|
query_cpu_capabilities(&caps);
|
||||||
|
|
||||||
FILE *file = fopen(OUTPUT_PATH, "w");
|
FILE *file = fopen(OUTPUT_PATH, "w");
|
||||||
if (file == NULL) {
|
if (file == NULL) {
|
||||||
eprintf("Error opening to file '" OUTPUT_PATH "': %s\n", strerror(errno));
|
eprintf("Error opening to file '" OUTPUT_PATH "': %s\n", strerror(errno));
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
ret = fprintf(file,
|
int ret = fprintf(file,
|
||||||
"{"
|
"{"
|
||||||
" \"amd-sev\": {"
|
" \"amd-sev\": {"
|
||||||
" \"cbitpos\": %u,"
|
" \"cbitpos\": %u,"
|
||||||
|
Loading…
Reference in New Issue
Block a user