get mac serial for hdid
This commit is contained in:
		
							parent
							
								
									5bdb57a8ba
								
							
						
					
					
						commit
						2509cc5e0b
					
				@ -50,10 +50,31 @@ QString get_hdid()
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
#elif defined __APPLE__
 | 
			
		||||
#include <CoreFoundation/CoreFoundation.h>
 | 
			
		||||
#include <IOKit/IOKitLib.h>
 | 
			
		||||
 | 
			
		||||
QString get_hdid()
 | 
			
		||||
{
 | 
			
		||||
  //hdids are broken at this point anyways
 | 
			
		||||
  return "just a mac passing by";
 | 
			
		||||
    CFStringRef serial;
 | 
			
		||||
        char buffer[64] = {0};
 | 
			
		||||
        QString hdid;
 | 
			
		||||
        io_service_t platformExpert = IOServiceGetMatchingService(kIOMasterPortDefault,
 | 
			
		||||
                                                              IOServiceMatching("IOPlatformExpertDevice"));
 | 
			
		||||
        if (platformExpert)
 | 
			
		||||
        {
 | 
			
		||||
            CFTypeRef serialNumberAsCFString = IORegistryEntryCreateCFProperty(platformExpert,
 | 
			
		||||
                                                                           CFSTR(kIOPlatformSerialNumberKey),
 | 
			
		||||
                                                                           kCFAllocatorDefault, 0);
 | 
			
		||||
            if (serialNumberAsCFString) {
 | 
			
		||||
                serial = (CFStringRef)serialNumberAsCFString;
 | 
			
		||||
            }
 | 
			
		||||
            if (CFStringGetCString(serial, buffer, 64, kCFStringEncodingUTF8)) {
 | 
			
		||||
                hdid = buffer;
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            IOObjectRelease(platformExpert);
 | 
			
		||||
        }
 | 
			
		||||
        return hdid;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
#else
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user