]> git.saurik.com Git - apple/security.git/blob - OSX/sec/SOSCircle/SecureObjectSync/SOSPeerInfoPriv.h
Security-57740.31.2.tar.gz
[apple/security.git] / OSX / sec / SOSCircle / SecureObjectSync / SOSPeerInfoPriv.h
1 //
2 // SOSPeerInfoPriv.h
3 // sec
4 //
5 // Created by Richard Murphy on 12/4/14.
6 //
7 //
8
9 #ifndef sec_SOSPeerInfoPriv_h
10 #define sec_SOSPeerInfoPriv_h
11
12 #include <CoreFoundation/CFRuntime.h>
13 #include <CoreFoundation/CoreFoundation.h>
14 #include <utilities/SecCFWrappers.h>
15
16 struct __OpaqueSOSPeerInfo {
17 CFRuntimeBase _base;
18 //
19 CFMutableDictionaryRef description;
20 CFDataRef signature;
21
22 // Cached data
23 CFDictionaryRef gestalt;
24 CFStringRef id;
25 CFIndex version;
26 /* V2 and beyond are listed below */
27 CFSetRef secproperties;
28 CFMutableDictionaryRef v2Dictionary;
29 };
30
31 SOSPeerInfoRef SOSPeerInfoAllocate(CFAllocatorRef allocator);
32 bool SOSPeerInfoSign(SecKeyRef privKey, SOSPeerInfoRef peer, CFErrorRef *error);
33 bool SOSPeerInfoVerify(SOSPeerInfoRef peer, CFErrorRef *error);
34 void SOSPeerInfoSetVersionNumber(SOSPeerInfoRef pi, int version);
35
36 extern const CFStringRef peerIDLengthKey;
37
38 #endif