コード例 #1
0
static bool purgeICloudIdentity(SOSAccountRef account) {
    bool retval = false;
    SOSFullPeerInfoRef icfpi = SOSCircleCopyiCloudFullPeerInfoRef(SOSAccountGetCircle(account, NULL), NULL);
    if(!icfpi) return false;
    retval = SOSFullPeerInfoPurgePersistentKey(icfpi, NULL);
    return retval;
}
コード例 #2
0
bool SOSAccountDestroyCirclePeerInfoNamed(SOSAccountRef account, CFStringRef name, CFErrorRef* error) {
    if (CFDictionaryGetValue(account->circles, name) == NULL) {
        SOSCreateErrorWithFormat(kSOSErrorNoCircle, NULL, error, NULL, CFSTR("No circle named '%@'"), name);
        return false;
    }
    
    SOSFullPeerInfoRef circle_full_peer_info = (SOSFullPeerInfoRef) CFDictionaryGetValue(account->circle_identities, name);
    
    if (circle_full_peer_info) {        
        SOSFullPeerInfoPurgePersistentKey(circle_full_peer_info, NULL);
    }
    
    CFDictionaryRemoveValue(account->circle_identities, name);
    
    return true;
}