static void initializeCFNetworkSupport(void) { __CFBitSet(CFNetworkSupport.flags, kTriedToLoad); #if DEPLOYMENT_TARGET_MACOSX || DEPLOYMENT_TARGET_EMBEDDED CFNetworkSupport._CFSocketStreamCreatePair = CFNETWORK_LOAD_SYM(_CFSocketStreamCreatePair); CFNetworkSupport._CFErrorCreateWithStreamError = CFNETWORK_LOAD_SYM(_CFErrorCreateWithStreamError); CFNetworkSupport._CFStreamErrorFromCFError = CFNETWORK_LOAD_SYM(_CFStreamErrorFromCFError); #elif DEPLOYMENT_TARGET_WINDOWS if (!CFNetworkSupport.image) { #if _DEBUG CFNetworkSupport.image = nullptr; // HACKHACK: can't do in app container // GetModuleHandleW(L"CFNetwork_debug.dll"); #else CFNetworkSupport.image = nullptr; // HACKHACK: can't do in app container // GetModuleHandleW(L"CFNetwork.dll"); #endif } if (!CFNetworkSupport.image) { /* // not loaded yet, try to load from the filesystem char path[MAX_PATH+1]; if (!CFNetworkSupport.image) { strlcpy(path, (const char *)_CFDLLPath(), sizeof(path)); #if _DEBUG strlcat(path, "\\CFNetwork_debug.dll", sizeof(path)); #else strlcat(path, "\\CFNetwork.dll", sizeof(path)); #endif CFNetworkSupport.image = LoadLibraryA(path); } */ // HACKHACK: Can't LoadLib in an appcontainer. If we need to do this maybe use LoadPackagedLibrary? // Right now we don't have CFNetworking anyway so don't worry about it? } if (!CFNetworkSupport.image) { CFLog(__kCFLogAssertion, CFSTR("CoreFoundation: failed to dynamically load CFNetwork")); } else { CFNetworkSupport._CFSocketStreamCreatePair = (CF_SOCKET_STREAM_PAIR)CFNETWORK_LOAD_SYM(_CFSocketStreamCreatePair); CFNetworkSupport._CFErrorCreateWithStreamError = (CFErrorRef(*)(CFAllocatorRef, CFStreamError *))CFNETWORK_LOAD_SYM(_CFErrorCreateWithStreamError); CFNetworkSupport._CFStreamErrorFromCFError = (CFStreamError(*)(CFErrorRef))CFNETWORK_LOAD_SYM(_CFStreamErrorFromCFError); } #endif if (!CFNetworkSupport._CFSocketStreamCreatePair) CFLog(__kCFLogAssertion, CFSTR("CoreFoundation: failed to dynamically link symbol _CFSocketStreamCreatePair")); if (!CFNetworkSupport._CFErrorCreateWithStreamError) CFLog(__kCFLogAssertion, CFSTR("CoreFoundation: failed to dynamically link symbol _CFErrorCreateWithStreamError")); if (!CFNetworkSupport._CFStreamErrorFromCFError) CFLog(__kCFLogAssertion, CFSTR("CoreFoundation: failed to dynamically link symbol _CFStreamErrorFromCFError")); __CFBitSet(CFNetworkSupport.flags, kInitialized); }
static void initializeCFNetworkSupport(void) { __CFBitSet(CFNetworkSupport.flags, kTriedToLoad); #if DEPLOYMENT_TARGET_MACOSX CFNetworkSupport._CFSocketStreamCreatePair = (cf_net_CreatePair)CFNETWORK_LOAD_SYM(_CFSocketStreamCreatePair); CFNetworkSupport._CFErrorCreateWithStreamError = (cf_net_StreamError)CFNETWORK_LOAD_SYM(_CFErrorCreateWithStreamError); CFNetworkSupport._CFStreamErrorFromCFError = (cf_net_FromCFError)CFNETWORK_LOAD_SYM(_CFStreamErrorFromCFError); #endif if (!CFNetworkSupport._CFSocketStreamCreatePair) CFLog(__kCFLogAssertion, CFSTR("CoreFoundation: failed to dynamically link symbol _CFSocketStreamCreatePair")); if (!CFNetworkSupport._CFErrorCreateWithStreamError) CFLog(__kCFLogAssertion, CFSTR("CoreFoundation: failed to dynamically link symbol _CFErrorCreateWithStreamError")); if (!CFNetworkSupport._CFStreamErrorFromCFError) CFLog(__kCFLogAssertion, CFSTR("CoreFoundation: failed to dynamically link symbol _CFStreamErrorFromCFError")); __CFBitSet(CFNetworkSupport.flags, kInitialized); }
static void initializeCFNetworkSupport(void) { __CFBitSet(CFNetworkSupport.flags, kTriedToLoad); #if DEPLOYMENT_TARGET_MACOSX || DEPLOYMENT_TARGET_EMBEDDED CFNetworkSupport._CFSocketStreamCreatePair = CFNETWORK_LOAD_SYM(_CFSocketStreamCreatePair); CFNetworkSupport._CFErrorCreateWithStreamError = CFNETWORK_LOAD_SYM(_CFErrorCreateWithStreamError); CFNetworkSupport._CFStreamErrorFromCFError = CFNETWORK_LOAD_SYM(_CFStreamErrorFromCFError); #elif DEPLOYMENT_TARGET_WINDOWS if (!CFNetworkSupport.image) { #if _DEBUG CFNetworkSupport.image = GetModuleHandleW(L"CFNetwork_debug.dll"); #else CFNetworkSupport.image = GetModuleHandleW(L"CFNetwork.dll"); #endif } if (!CFNetworkSupport.image) { // not loaded yet, try to load from the filesystem char path[MAX_PATH+1]; if (!CFNetworkSupport.image) { strlcpy(path, (const char *)_CFDLLPath(), sizeof(path)); #if _DEBUG strlcat(path, "\\CFNetwork_debug.dll", sizeof(path)); #else strlcat(path, "\\CFNetwork.dll", sizeof(path)); #endif CFNetworkSupport.image = LoadLibraryA(path); } } if (!CFNetworkSupport.image) { CFLog(__kCFLogAssertion, CFSTR("CoreFoundation: failed to dynamically load CFNetwork")); } else { CFNetworkSupport._CFSocketStreamCreatePair = (CF_SOCKET_STREAM_PAIR)CFNETWORK_LOAD_SYM(_CFSocketStreamCreatePair); CFNetworkSupport._CFErrorCreateWithStreamError = (CFErrorRef(*)(CFAllocatorRef, CFStreamError *))CFNETWORK_LOAD_SYM(_CFErrorCreateWithStreamError); CFNetworkSupport._CFStreamErrorFromCFError = (CFStreamError(*)(CFErrorRef))CFNETWORK_LOAD_SYM(_CFStreamErrorFromCFError); } #endif if (!CFNetworkSupport._CFSocketStreamCreatePair) CFLog(__kCFLogAssertion, CFSTR("CoreFoundation: failed to dynamically link symbol _CFSocketStreamCreatePair")); if (!CFNetworkSupport._CFErrorCreateWithStreamError) CFLog(__kCFLogAssertion, CFSTR("CoreFoundation: failed to dynamically link symbol _CFErrorCreateWithStreamError")); if (!CFNetworkSupport._CFStreamErrorFromCFError) CFLog(__kCFLogAssertion, CFSTR("CoreFoundation: failed to dynamically link symbol _CFStreamErrorFromCFError")); __CFBitSet(CFNetworkSupport.flags, kInitialized); }