236 int32_t initialize(
const char *zidFilename,
bool autoEnable =
true,
273 void setEnableZrtp(
bool onOff);
308 void resetSASVerified();
325 void requestGoClear();
338 void setAuxSecret(uint8_t* data, int32_t length);
369 void setClientId(std::string
id);
384 std::string getHelloHash();
401 std::string getPeerHelloHash();
423 std::string getMultiStrParams();
441 void setMultiStrParams(std::string parameters);
454 bool isMultiStream();
465 bool isMultiStreamAvailable();
479 void acceptEnrollment(
bool accepted);
486 std::string getSasType();
498 uint8_t* getSasHash();
510 bool sendSASRelayPacket(uint8_t* sh, std::string render);
530 void setMitmMode(
bool mitmMode);
560 void setParanoidMode(
bool yesNo);
568 bool isParanoidMode();
578 bool isEnrollmentMode();
591 void setEnrollmentMode(
bool enrollmentMode);
597 {setMitmMode(enrollmentMode); setEnrollmentMode(enrollmentMode);}
618 void setSignSas(
bool sasSignMode);
636 bool setSignatureData(uint8* data, int32 length);
649 const uint8* getSignatureData();
661 int32 getSignatureLength();
682 putData(uint32 stamp,
const unsigned char* data = NULL,
size_t len = 0);
704 sendImmediate(uint32 stamp,
const unsigned char* data = NULL,
size_t len = 0);
750 int32 getPeerZid(uint8* data);
770 onSRTPPacketError(IncomingRTPPkt& pkt, int32 errorCode);
777 void handleTimeout(const std::string &c);
788 virtual size_t takeInDataPacket();
794 int32_t sendDataZRTP(const unsigned char* data, int32_t length);
796 int32_t activateTimer(int32_t time);
798 int32_t cancelTimer();
800 void sendInfo(GnuZrtpCodes::MessageSeverity severity, int32_t subCode);
802 bool srtpSecretsReady(SrtpSecret_t* secrets, EnableSecurity part);
804 void srtpSecretsOff(EnableSecurity part);
806 void srtpSecretsOn(std::string c, std::string s, bool verified);
808 void handleGoClear();
810 void zrtpNegotiationFailed(GnuZrtpCodes::MessageSeverity severity, int32_t subCode);
812 void zrtpNotSuppOther();
818 void zrtpAskEnrollment(GnuZrtpCodes::InfoEnrollment info);
820 void zrtpInformEnrollment(GnuZrtpCodes::InfoEnrollment info);
822 void signSAS(uint8_t* sasHash);
824 bool checkSASSignature(uint8_t* sasHash);
830 ZrtpQueue(uint32 size = RTPDataQueue::defaultMembersHashSize,
831 RTPApplication& app = defaultApplication());
837 RTPDataQueue::defaultMembersHashSize,
838 RTPApplication& app = defaultApplication());
844 size_t rtpDataPacket(unsigned char* packet, int32 rtn,
845 InetHostAddress network_address,
846 tpport_t transport_port);
851 std::string clientIdString;
857 int16 senderZrtpSeqNo;
863 bool enableParanoidMode;
883 getZrtpMagic()
const;
void setPBXEnrollment(bool enrollmentMode)
Backwards compatible api fix...
Class to generate objects giving timeout functionality.
RTP packets received from other participants.
void putData(uint32 stamp, const unsigned char *data=NULL, size_t len=0)
This is used to create a data packet in the send queue.
This abstract class defines the callback functions required by GNU ZRTP.
Application callback methods.
GNU ccRTP extension to support GNU ZRTP.
int32_t isPeerEnrolled(ZrtpContext *zrtpContext)
Check if a peer's cache entry has a vaild MitM key.
Generic RTCP control queues.
Callback interface between ZRTP and the RTP stack implementation.
void sendImmediate(uint32 stamp, const unsigned char *data=NULL, size_t len=0)
This is used to create a data packet and send it immediately.
This class, an RTP/RTCP queue, adds audio/video profile (AVP) specific methods to the generic RTCP se...