static Boolean OpenInetServices(SvcInfo *svcInfo) { OSStatus result; svcInfo->done=false; if (!svcnotifyproc) svcnotifyproc=NewOTNotifyUPP(&SvcNotifyProc); #ifdef __CARBON__ result=OTAsyncOpenInternetServicesInContext(kDefaultInternetServicesPath, 0, svcnotifyproc, svcInfo, NULL); #else result=OTAsyncOpenInternetServices(kDefaultInternetServicesPath, 0, svcnotifyproc, svcInfo); #endif if (!result) { do { MacIdle(); } while (!svcInfo->done); result=svcInfo->result; } if (result) return(false); svcInfo->ref=(InetSvcRef)svcInfo->cookie; return(true); }
static OSStatus OpenTest(void) { OSStatus err; OSStatus junk; EndpointRef ep1; EndpointRef ep2; MapperRef map1; MapperRef map2; ATSvcRef at1; ATSvcRef at2; InetSvcRef inet1; InetSvcRef inet2; ProviderRef prov1; ProviderRef prov2; ep1 = NULL; ep2 = NULL; map1 = NULL; map2 = NULL; at1 = NULL; at2 = NULL; inet1 = NULL; inet2 = NULL; prov1 = NULL; prov2 = NULL; ep1 = OTOpenEndpointInContext(OTCreateConfiguration("tcp"), 0, NULL, &err, NULL); if (err == noErr) { err = OTAsyncOpenEndpointInContext(OTCreateConfiguration("tcp"), 0, NULL, DummyNotifier, &ep2, NULL); if (err == noErr) { while (ep2 == NULL) { SystemTask(); } if (ep2 == (void *) -1) { err = -1; } } } if (err == noErr) { map1 = OTOpenMapperInContext(OTCreateConfiguration("nbp"), 0, &err, NULL); } if (err == noErr) { err = OTAsyncOpenMapperInContext(OTCreateConfiguration("nbp"), 0, DummyNotifier, &map2, NULL); if (err == noErr) { while (map2 == NULL) { SystemTask(); } if (map2 == (void *) -1) { err = -1; } } } if (err == noErr) { inet1 = OTOpenInternetServicesInContext(kDefaultInternetServicesPath, 0, &err, NULL); } if (err == noErr) { err = OTAsyncOpenInternetServicesInContext(kDefaultInternetServicesPath, 0, DummyNotifier, &inet2, NULL); if (err == noErr) { while (inet2 == NULL) { SystemTask(); } if (inet2 == (void *) -1) { err = -1; } } } if (err == noErr) { at1 = OTOpenAppleTalkServicesInContext(kDefaultAppleTalkServicesPath, 0, &err, NULL); } if (err == noErr) { err = OTAsyncOpenAppleTalkServicesInContext(kDefaultAppleTalkServicesPath, 0, DummyNotifier, &at2, NULL); if (err == noErr) { while (at2 == NULL) { SystemTask(); } if (at2 == (void *) -1) { err = -1; } } } if (err == noErr) { prov1 = OTOpenProviderInContext(OTCreateConfiguration("enet"), 0, &err, NULL); } if (err == noErr) { err = OTAsyncOpenProviderInContext(OTCreateConfiguration("enet"), 0, DummyNotifier, &prov2, NULL); if (err == noErr) { while (prov2 == NULL) { SystemTask(); } if (prov2 == (void *) -1) { err = -1; } } } if (ep1 != NULL) { junk = OTCloseProvider(ep1); assert(junk == noErr); } if (ep2 != NULL) { junk = OTCloseProvider(ep2); assert(junk == noErr); } if (map1 != NULL) { junk = OTCloseProvider(map1); assert(junk == noErr); } if (map2 != NULL) { junk = OTCloseProvider(map2); assert(junk == noErr); } if (at1 != NULL) { junk = OTCloseProvider(at1); assert(junk == noErr); } if (at2 != NULL) { junk = OTCloseProvider(at2); assert(junk == noErr); } if (inet1 != NULL) { junk = OTCloseProvider(inet1); assert(junk == noErr); } if (inet2 != NULL) { junk = OTCloseProvider(inet2); assert(junk == noErr); } if (prov1 != NULL) { junk = OTCloseProvider(prov1); assert(junk == noErr); } if (prov2 != NULL) { junk = OTCloseProvider(prov2); assert(junk == noErr); } return err; }