2 // SOSAccountTrustClassic+Circle.h
6 #ifndef SOSAccountTrustClassic_Circle_h
7 #define SOSAccountTrustClassic_Circle_h
9 #import "Security/SecureObjectSync/SOSAccountTrustClassic.h"
10 #import "Security/SecureObjectSync/SOSTransportCircleKVS.h"
12 @interface
SOSAccountTrustClassic (Circle
)
14 -(SOSCCStatus
) getCircleStatus
:(CFErrorRef
*) error
;
15 -(SOSCircleRef
) ensureCircle
:(SOSAccount
*)account name
:(CFStringRef
)name err
:(CFErrorRef
*)error
;
16 -(bool) modifyCircle
:(SOSCircleStorageTransport
*)circleTransport err
:(CFErrorRef
*)error action
:(SOSModifyCircleBlock
)block
;
17 -(SOSCircleRef
) getCircle
:(CFErrorRef
*)error
;
18 -(bool) hasCircle
:(CFErrorRef
*) error
;
19 -(void) generationSignatureUpdateWith
:(SOSAccount
*)account key
:(SecKeyRef
) privKey
;
20 -(bool) isInCircle
:(CFErrorRef
*)error
;
21 -(void) forEachCirclePeerExceptMe
:(SOSIteratePeerBlock
)block
;
22 -(bool) leaveCircle
:(SOSAccount
*)account err
:(CFErrorRef
*) error
;
23 -(bool) resetToOffering
:(SOSAccountTransaction
*) aTxn key
:(SecKeyRef
)userKey err
:(CFErrorRef
*) error
;
24 -(bool) resetCircleToOffering
:(SOSAccountTransaction
*) aTxn userKey
:(SecKeyRef
) user_key err
:(CFErrorRef
*)error
;
25 -(SOSCCStatus
) thisDeviceStatusInCircle
:(SOSCircleRef
) circle peer
:(SOSPeerInfoRef
) this_peer
;
26 -(bool) updateCircle
:(SOSCircleStorageTransport
*)circleTransport newCircle
:(SOSCircleRef
) newCircle err
:(CFErrorRef
*)error
;
27 -(bool) updateCircleFromRemote
:(SOSCircleStorageTransport
*)circleTransport newCircle
:(SOSCircleRef
)newCircle err
:(CFErrorRef
*)error
;
29 -(CFArrayRef
) copySortedPeerArray
:(CFErrorRef
*)error
30 action
:(SOSModifyPeersInCircleBlock
)block
;
31 -(bool) handleUpdateCircle
:(SOSCircleRef
) prospective_circle transport
:(SOSCircleStorageTransport
*)circleTransport update
:(bool) writeUpdate err
:(CFErrorRef
*)error
;
32 -(bool) joinCircle
:(SOSAccountTransaction
*) aTxn userKey
:(SecKeyRef
)user_key useCloudPeer
:(bool)use_cloud_peer err
:(CFErrorRef
*) error
;
36 #endif /* SOSAccountTrustClassic_Circle_h */