From 4c3edcfe56bb265ffc9ce117dc7cfc760a0b5e36 Mon Sep 17 00:00:00 2001 From: shirou Date: Sat, 4 Dec 2021 03:37:03 +0000 Subject: [PATCH] [mac] fix deprecated code in macOS Monterey --- disk/iostat_darwin.c | 2 +- disk/iostat_darwin.h | 4 ++++ host/smc_darwin.c | 2 +- host/smc_darwin.h | 5 +++++ 4 files changed, 11 insertions(+), 2 deletions(-) diff --git a/disk/iostat_darwin.c b/disk/iostat_darwin.c index 1ec698a..5667bf9 100644 --- a/disk/iostat_darwin.c +++ b/disk/iostat_darwin.c @@ -25,7 +25,7 @@ gopsutil_v3_readdrivestat(DriveStats a[], int n) kern_return_t status; int na, rv; - IOMasterPort(bootstrap_port, &port); + IOMainPort(bootstrap_port, &port); match = IOServiceMatching("IOMedia"); CFDictionaryAddValue(match, CFSTR(kIOMediaWholeKey), kCFBooleanTrue); status = IOServiceGetMatchingServices(port, match, &drives); diff --git a/disk/iostat_darwin.h b/disk/iostat_darwin.h index cb9ec7a..d004ac9 100644 --- a/disk/iostat_darwin.h +++ b/disk/iostat_darwin.h @@ -30,3 +30,7 @@ struct CPUStats { }; extern int gopsutil_v3_readdrivestat(DriveStats a[], int n); + +#if (MAC_OS_X_VERSION_MIN_REQUIRED < 120000) // Before macOS 12 Monterey + #define IOMainPort IOMasterPort +#endif diff --git a/host/smc_darwin.c b/host/smc_darwin.c index c029d0a..fa54b1d 100644 --- a/host/smc_darwin.c +++ b/host/smc_darwin.c @@ -72,7 +72,7 @@ kern_return_t gopsutil_v3_open_smc(void) { kern_return_t result; io_service_t service; - service = IOServiceGetMatchingService(kIOMasterPortDefault, + service = IOServiceGetMatchingService(kIOMainPortDefault, IOServiceMatching(IOSERVICE_SMC)); if (service == 0) { // Note: IOServiceMatching documents 0 on failure diff --git a/host/smc_darwin.h b/host/smc_darwin.h index e3013ab..8d5ba68 100644 --- a/host/smc_darwin.h +++ b/host/smc_darwin.h @@ -29,4 +29,9 @@ kern_return_t gopsutil_v3_open_smc(void); kern_return_t gopsutil_v3_close_smc(void); double gopsutil_v3_get_temperature(char *); +#if (MAC_OS_X_VERSION_MIN_REQUIRED < 120000) // Before macOS 12 Monterey + #define kIOMainPortDefault kIOMasterPortDefault +#endif + + #endif // __SMC_H__