3 #ifndef sec_SOSTransportCircleKVS_h
4 #define sec_SOSTransportCircleKVS_h
6 #include <Security/SecureObjectSync/SOSAccount.h>
8 typedef struct __OpaqueSOSTransportCircleKVS
* SOSTransportCircleKVSRef
;
10 SOSTransportCircleKVSRef
SOSTransportCircleKVSCreate(SOSAccountRef account
, CFStringRef circleName
, CFErrorRef
*error
);
11 SOSTransportKeyParameterRef
SOSTransportKeyParameterCreateForSubclass(size_t size
, SOSAccountRef account
, CFErrorRef
*error
);
13 bool SOSTransportCircleKVSAppendKeyInterest(SOSTransportCircleKVSRef transport
, CFMutableArrayRef alwaysKeys
, CFMutableArrayRef afterFirstUnlockKeys
, CFMutableArrayRef unlockedKeys
, CFErrorRef
*error
);
15 void SOSTransportCircleKVSAddToPendingChanges(SOSTransportCircleKVSRef transport
, CFStringRef message_key
, CFDataRef message_data
);
16 bool SOSTransportCircleKVSSendPendingChanges(SOSTransportCircleKVSRef transport
, CFErrorRef
*error
);
17 bool SOSTransportCircleKVSAppendPeerInfoKeyInterest(SOSTransportCircleKVSRef transport
, CFMutableArrayRef alwaysKeys
, CFMutableArrayRef afterFirstUnlockKeys
, CFMutableArrayRef unlockedKeys
, CFErrorRef
*error
);
18 bool SOSTransportCircleKVSAppendRingKeyInterest(SOSTransportCircleKVSRef transport
, CFMutableArrayRef alwaysKeys
, CFMutableArrayRef afterFirstUnlockKeys
, CFMutableArrayRef unlockedKeys
, CFErrorRef
*error
);
20 bool SOSTransportCircleKVSAppendDebugKeyInterest(SOSTransportCircleKVSRef transport
, CFMutableArrayRef alwaysKeys
, CFMutableArrayRef afterFirstUnlockKeys
, CFMutableArrayRef unlockedKeys
, CFErrorRef
*error
);
22 CFArrayRef
SOSTransportCircleKVSHandlePeerInfoV2Messages(SOSTransportCircleRef transport
, CFMutableDictionaryRef peer_info_message_table
, CFErrorRef
*error
);