]> git.saurik.com Git - apple/security.git/blob - OSX/sec/SOSCircle/SecureObjectSync/SOSPeerInfoPriv.h
Security-58286.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 peerID;
25 CFIndex version;
26 /* V2 and beyond are listed below */
27 CFMutableDictionaryRef v2Dictionary;
28 };
29
30 SOSPeerInfoRef SOSPeerInfoAllocate(CFAllocatorRef allocator);
31 bool SOSPeerInfoSign(SecKeyRef privKey, SOSPeerInfoRef peer, CFErrorRef *error);
32 bool SOSPeerInfoVerify(SOSPeerInfoRef peer, CFErrorRef *error);
33 void SOSPeerInfoSetVersionNumber(SOSPeerInfoRef pi, int version);
34
35 extern const CFStringRef peerIDLengthKey;
36
37 #endif