]>
Commit | Line | Data |
---|---|---|
5c19dc3a A |
1 | // |
2 | // SOSPeerInfoV2.h | |
3 | // sec | |
4 | // | |
5 | // Created by Richard Murphy on 1/26/15. | |
6 | // | |
7 | // | |
8 | ||
9 | #ifndef _sec_SOSPeerInfoV2_ | |
10 | #define _sec_SOSPeerInfoV2_ | |
11 | ||
12 | #include <CoreFoundation/CFRuntime.h> | |
13 | #include <CoreFoundation/CoreFoundation.h> | |
14 | #include <Security/SecureObjectSync/SOSPeerInfo.h> | |
15 | #include <Security/SecureObjectSync/SOSPeerInfoPriv.h> | |
16 | #include <Security/SecureObjectSync/SOSViews.h> | |
17 | #include <Security/SecureObjectSync/SOSPeerInfoSecurityProperties.h> | |
18 | ||
19 | // Description Dictionary Entries Added for V2 | |
20 | extern CFStringRef sV2DictionaryKey; // CFData wrapper for V2 extensions | |
21 | extern CFStringRef sViewsKey; // Set of Views | |
22 | extern CFStringRef sSerialNumberKey; // Device Serial Number | |
23 | extern CFStringRef sSecurityPropertiesKey; // Set of Security Properties | |
24 | extern CFStringRef kSOSHsaCrKeyDictionary; // HSA Challenge-Response area | |
25 | extern CFStringRef sPreferIDS; // Whether or not a peer requires to speak over IDS or KVS | |
fa7225c8 A |
26 | extern CFStringRef sPreferIDSFragmentation; // Whether or not a peer requires to speak over fragmented IDS or not |
27 | ||
5c19dc3a A |
28 | extern CFStringRef sTransportType; // Dictates the transport type |
29 | extern CFStringRef sDeviceID; // The IDS device id | |
30 | extern CFStringRef sRingState; // Dictionary of Ring Membership States | |
31 | extern CFStringRef sBackupKeyKey; | |
e0e0d90e | 32 | extern CFStringRef sEscrowRecord; |
5c19dc3a A |
33 | |
34 | bool SOSPeerInfoUpdateToV2(SOSPeerInfoRef pi, CFErrorRef *error); | |
35 | void SOSPeerInfoPackV2Data(SOSPeerInfoRef peer); | |
36 | bool SOSPeerInfoExpandV2Data(SOSPeerInfoRef pi, CFErrorRef *error); | |
37 | void SOSPeerInfoV2DictionarySetValue(SOSPeerInfoRef peer, const void *key, const void *value); | |
38 | void SOSPeerInfoV2DictionaryRemoveValue(SOSPeerInfoRef peer, const void *key); | |
e0e0d90e | 39 | |
5c19dc3a A |
40 | const CFMutableDataRef SOSPeerInfoV2DictionaryCopyData(SOSPeerInfoRef pi, const void *key); |
41 | const CFMutableSetRef SOSPeerInfoV2DictionaryCopySet(SOSPeerInfoRef pi, const void *key); | |
42 | const CFMutableStringRef SOSPeerInfoV2DictionaryCopyString(SOSPeerInfoRef pi, const void *key); | |
43 | const CFBooleanRef SOSPeerInfoV2DictionaryCopyBoolean(SOSPeerInfoRef pi, const void *key); | |
e0e0d90e A |
44 | const CFMutableDictionaryRef SOSPeerInfoV2DictionaryCopyDictionary(SOSPeerInfoRef pi, const void *key); |
45 | ||
5c19dc3a A |
46 | bool SOSPeerInfoV2DictionaryHasSet(SOSPeerInfoRef pi, const void *key); |
47 | bool SOSPeerInfoV2DictionaryHasData(SOSPeerInfoRef pi, const void *key); | |
48 | bool SOSPeerInfoV2DictionaryHasString(SOSPeerInfoRef pi, const void *key); | |
49 | bool SOSPeerInfoV2DictionaryHasBoolean(SOSPeerInfoRef pi, const void *key); | |
50 | ||
51 | bool SOSPeerInfoV2DictionaryHasSetContaining(SOSPeerInfoRef pi, const void *key, const void* value); | |
52 | void SOSPeerInfoV2DictionaryForEachSetValue(SOSPeerInfoRef pi, const void *key, void (^action)(const void* value)); | |
53 | void SOSPeerInfoV2DictionaryWithSet(SOSPeerInfoRef pi, const void *key, void(^operation)(CFSetRef set)); | |
54 | ||
55 | ||
56 | bool SOSPeerInfoSerialNumberIsSet(SOSPeerInfoRef pi); | |
57 | void SOSPeerInfoSetSerialNumber(SOSPeerInfoRef pi); | |
fa7225c8 | 58 | CFStringRef SOSPeerInfoCopySerialNumber(SOSPeerInfoRef pi); |
5c19dc3a A |
59 | |
60 | #endif /* defined(_sec_SOSPeerInfoV2_) */ |