Daniel, I encountered similar behavior earlier this year. By any chance are you using Freeswitch in proxy-media mode? Freeswitch is hard-coded to look for the zrtp-hello-hash in order to enable passing ZRTP variables between two call legs. If the client does not support sending a zrtp-hello-hash, it can never establish a secure call that has Freeswitch in the middle. You may be able to verify this by trying ZRTP on a one-legged call to an server-side extension that echoes back or plays music, or by switching your config to bypass-media.
At any rate, stock Linphone does not implement the optional zrtp-hello-hash extension. I submitted a patch: http://lists.nongnu.org/archive/html/linphone-developers/2013-02/msg00031.html and it was successfully used by someone to modify the Android client: http://lists.nongnu.org/archive/html/linphone-developers/2013-02/msg00033.html There is another patch that fixes a sequence number handling issue that COULD cause ZRTP compatibility problems with non-Linphone clients: http://lists.nongnu.org/archive/html/linphone-developers/2013-04/msg00082.html I should add that my patches have not been integrated back into Linphone; the developers reported that it caused a crash when enabling video after establishing an audio call. We don't use video so I have not seen this. But in my client the audio becomes corrupted when pausing and resuming a call. The common element is that both scenarios cause renegotiation of the media streams. I suspect that the key is either not being updated, or is zeroed and never re-set. It's on my short-list to investigate further, but if you have any C/C++ development experience I encourage you to have a look. The patches are pretty short and simple, and indicate the exact places in the code where ZRTP is used. -Eli On Jun 18, 2013, at 3:56 AM, [email protected] wrote: > > Date: Tue, 18 Jun 2013 09:56:28 +0200 > From: Daniel Muller <[email protected]> > To: linphone-users <[email protected]> > Subject: Re: [Linphone-users] ZRTP on Android > Message-ID: > <CA+N=EFSDHSEaO1qVC8EFKuKz=lu_qdqtyknkadkpg2aox43...@mail.gmail.com> > Content-Type: text/plain; charset="iso-8859-1" > > Thanks I will keep doing only the make now on.. > > Yes, the peer is a twinkle on which I made ZRTP calls successfully before > with a windows build of linphone. > I will try this evening or some of the next ones with another linphone, > just in case.. But, well, if twinkle worked with one, it could work with > other. > > ---- > Daniel Muller, Prague, CZ > > > On Tue, Jun 18, 2013 at 9:07 AM, Guillaume Beraudo < > [email protected]> wrote: > >> Hi, >> >> First, note that you should do "make" to build the application and not >> run prepare_sources.sh yourself anymore. >> >> >> What you see on the traces is that your phone tries to initiate a ZRTP >> dialog. >> However it gets no answer for the peer and thus ZRTP fails. >> >> >> Do you have ZRTP enabled on peer? >> >> >> Guillaume >> >> On Mon, Jun 17, 2013 at 11:10:53PM +0200, Daniel Muller wrote: >>> Ok, now with r8d >>> >>> I ran make BUILD_GPLV3_ZRTP=1 BUILD_AMRWB=1 >>> and ./prepare_sources.h with same params >>> also run eclipse that has bult the java projects >>> tun debugger >>> configured media_encryption to be zrtp and debug on >>> and this is ZRT filtered log cat.. >>> >>> 06-17 21:06:30.998: I/Linphone(839): Initialized ZRTP context >>> 06-17 21:06:31.258: I/Linphone(839): Starting ZRTP engine >>> 06-17 21:06:31.258: I/Linphone(839): sent ZRTP Hello 59827 >>> 06-17 21:06:31.629: I/Linphone(839): sent ZRTP Hello 59828 >>> 06-17 21:06:31.868: I/Linphone(839): sent ZRTP Hello 59829 >>> 06-17 21:06:32.138: I/Linphone(839): sent ZRTP Hello 59830 >>> 06-17 21:06:32.609: I/Linphone(839): sent ZRTP Hello 59831 >>> 06-17 21:06:33.248: I/Linphone(839): sent ZRTP Hello 59832 >>> 06-17 21:06:34.038: I/Linphone(839): sent ZRTP Hello 59833 >>> 06-17 21:06:34.569: I/Linphone(839): sent ZRTP Hello 59834 >>> 06-17 21:06:34.769: I/Linphone(839): sent ZRTP Hello 59835 >>> 06-17 21:06:34.968: I/Linphone(839): sent ZRTP Hello 59836 >>> 06-17 21:06:35.178: I/Linphone(839): sent ZRTP Hello 59837 >>> 06-17 21:06:35.348: I/Linphone(839): Stopping ZRTP context >>> 06-17 21:06:35.358: I/Linphone(839): Destroying ZRTP wrapper >>> 06-17 21:06:35.358: I/Linphone(839): Destroying ORTP-ZRTP mutex >>> 06-17 21:06:35.358: I/Linphone(839): ORTP-ZRTP context destroyed >>> >>> >>> Obviously the ZRTP did not hold too long. >>> What might be wrong now? >>> Do you think my libs are built well already? >>> >>> >>> ---- >>> Daniel Muller, Prague, CZ >>> >>> _______________________________________________ Linphone-users mailing list [email protected] https://lists.nongnu.org/mailman/listinfo/linphone-users
