Suggestion on libzrtp and 3rd-party library structure
Werner Dittmann
Werner.Dittmann at t-online.de
Mon Oct 2 13:35:58 CEST 2006
Mikael,
yes. The ZRTP code, that is the ZRTP protocol engine and related
code is *identical* for minisip and ccrtp. The main difference in
code is how the ZRTP works together with the RTP stack.
ccrtp's libzrtpcpp is not (yet?) a direct replacement, I will
work on that topic. This is mainly a linkage problem because
libzrtpcpp requires the ccrtp library. libzrtpcpp contains
the "bridging" classes (see below) for ccrtp and is therefore
linked with libccrtp1.
As you may imagine the ccRTP stack is different from the RTP stack
minisip uses. The SRTP implementation however is similar (ccRTP
uses a slightly modified CryptoContext implementation of minisip)
The main differences are what I call the "bridging" classes that
build the bridge between the ZRTP protocol implementation and the
RTP stack. See the following lines:
minisip ccRTP
---------------------------+----------------------------------
ZrtpHostBridgeMinisip | ZrtpQueue
|
GUI interaction built in | ZrtpUserCallback
|
Application interaction | zrtpccrtp.h, defines a typedef
built in | for SymmetricZRTPSession
Because minisip uses a different GUI and a different way to
communicate between the modules (messages) the "bridging" between
ZRTP and minisip core is different. This is also because of the
different RTP/RTCP implementation.
I'm working and testing on the minisip path now to bring over all
fixes and enhancements we did during the ccrtp implementation. Regarding
the ZRTP core these are mainly fixes, no real big enhancements. After
that is done also the interoperability with Zfone-beta2 is implemented.
Based on the experiences with ccrtp we may start to enhance minisip's
GUI to have full control of the ZRTP.
Regards,
Werner
Mikael Magnusson wrote:
> Werner Dittmann wrote:
>> Regarding libzrtp: I named it libzrtpcpp to avoid confusion with
>> the C based libzrtp from the original Zfone project (cpp stands for
>> c++).
>>
>> Also the code is used in other projects as well and to avoid
>> to much copying etc I use the current structure to keep all
>> files in sync.
>>
>
> And one of those projects are ccrtp, which released libzrtpcpp version
> 0.9.0 yesterday. Is that version compatible with libzrtpcpp in minisip,
> i.e. can it be used as an replacement?
>
> Mikael
> _______________________________________________
> Minisip-devel mailing list
> Minisip-devel at minisip.org
> http://lists.minisip.org/mailman/listinfo/minisip-devel
>
More information about the Minisip-devel
mailing list