X-Git-Url: https://git.saurik.com/apple/security.git/blobdiff_plain/80e2389990082500d76eb566d4946be3e786c3ef..d8f41ccd20de16f8ebe2ccc84d47bf1cb2b26bbb:/Security/sec/SOSCircle/SecureObjectSync/SOSPeerCoder.h diff --git a/Security/sec/SOSCircle/SecureObjectSync/SOSPeerCoder.h b/Security/sec/SOSCircle/SecureObjectSync/SOSPeerCoder.h new file mode 100644 index 00000000..3f6df1a3 --- /dev/null +++ b/Security/sec/SOSCircle/SecureObjectSync/SOSPeerCoder.h @@ -0,0 +1,23 @@ + +#ifndef SOSTransportCoder_h +#define SOSTransportCoder_h +#include +#include + +enum SOSCoderUnwrapStatus{ + SOSCoderUnwrapError = 0, + SOSCoderUnwrapDecoded = 1, + SOSCoderUnwrapHandled = 2 +}; + +bool SOSPeerCoderSendMessageIfNeeded(SOSPeerRef peer, CFDataRef *message_to_send, CFStringRef circle_id, CFStringRef peer_id, SOSEnginePeerMessageSentBlock *sent, CFErrorRef *error); + +enum SOSCoderUnwrapStatus SOSPeerHandleCoderMessage(SOSPeerRef peer, CFStringRef peer_id, CFDataRef codedMessage, CFDataRef *decodedMessage, CFErrorRef *error); + +bool SOSPeerCoderInitializeForPeer(SOSTransportMessageRef transport, SOSFullPeerInfoRef myPeerInfo, SOSPeerInfoRef peerInfo, CFErrorRef *error); + +bool SOSPeerSendMessageIfNeeded(SOSPeerRef peer, CFDataRef *message, CFDataRef *message_to_send, SOSCoderRef *coder, CFStringRef circle_id, CFStringRef peer_id, SOSEnginePeerMessageSentBlock *sent, CFErrorRef *error); + +void SOSPeerCoderConsume(SOSEnginePeerMessageSentBlock *sent, bool ok); + +#endif