M cfnetwork.diff
git-svn-id: http://svn.telesphoreo.org/trunk@786
514c082c-b64e-11dc-b46d-
3d985efe055d
#include <netdb.h>
#include <arpa/inet.h>
#include <netdb.h>
#include <arpa/inet.h>
#include <lockdown.h>
#include <CoreFoundation/CoreFoundation.h>
#include <CoreServices/CoreServices.h>
#include <lockdown.h>
#include <CoreFoundation/CoreFoundation.h>
#include <CoreServices/CoreServices.h>
+ if (UniqueID_ == NULL)
+ if (void *libMobileGestalt = dlopen("/usr/lib/libMobileGestalt.dylib", RTLD_GLOBAL | RTLD_LAZY))
+ if (CFStringRef (*$MGCopyAnswer)(CFStringRef) = (CFStringRef (*)(CFStringRef)) dlsym(libMobileGestalt, "MGCopyAnswer"))
+ UniqueID_ = $MGCopyAnswer(CFSTR("UniqueDeviceID"));
+
+ if (UniqueID_ == NULL)
if (void *lockdown = lockdown_connect()) {
UniqueID_ = lockdown_copy_value(lockdown, NULL, kLockdownUniqueDeviceIDKey);
lockdown_disconnect(lockdown);
if (void *lockdown = lockdown_connect()) {
UniqueID_ = lockdown_copy_value(lockdown, NULL, kLockdownUniqueDeviceIDKey);
lockdown_disconnect(lockdown);